Skip to content

Commit

Permalink
Revert "Revert "Revert "Add SVG support (lunasvg) (multitheftauto#2026)…
Browse files Browse the repository at this point in the history
…"""

This reverts commit 7d055fb.
  • Loading branch information
patrikjuvonen authored and Vladislav Nikolaevich committed Oct 20, 2021
1 parent f799453 commit a6ba666
Show file tree
Hide file tree
Showing 82 changed files with 69 additions and 18,204 deletions.
142 changes: 0 additions & 142 deletions Client/core/Graphics/CRenderItem.VectorGraphic.cpp

This file was deleted.

28 changes: 1 addition & 27 deletions Client/core/Graphics/CRenderItemManager.cpp
Expand Up @@ -135,40 +135,14 @@ CTextureItem* CRenderItemManager::CreateTexture(const SString& strFullFilePath,
if (!pTextureItem->IsValid())
{
SAFE_RELEASE(pTextureItem);
return nullptr;
return NULL;
}

UpdateMemoryUsage();

return pTextureItem;
}

////////////////////////////////////////////////////////////////
//
// CRenderItemManager::CreateVectorGraphic
//
//
//
////////////////////////////////////////////////////////////////
CVectorGraphicItem* CRenderItemManager::CreateVectorGraphic(uint width, uint height)
{
if (!CanCreateRenderItem(CVectorGraphicItem::GetClassId()))
return nullptr;

CVectorGraphicItem* pVectorItem = new CVectorGraphicItem;
pVectorItem->PostConstruct(this, width, height);

if (!pVectorItem->IsValid())
{
SAFE_RELEASE(pVectorItem);
return nullptr;
}

UpdateMemoryUsage();

return pVectorItem;
}

////////////////////////////////////////////////////////////////
//
// CRenderItemManager::CreateRenderTarget
Expand Down
69 changes: 34 additions & 35 deletions Client/core/Graphics/CRenderItemManager.h
Expand Up @@ -22,41 +22,40 @@ class CRenderItemManager : public CRenderItemManagerInterface
~CRenderItemManager();

// CRenderItemManagerInterface
virtual void DoPulse();
virtual CDxFontItem* CreateDxFont(const SString& strFullFilePath, uint uiSize, bool bBold, DWORD ulQuality = DEFAULT_QUALITY);
virtual CGuiFontItem* CreateGuiFont(const SString& strFullFilePath, const SString& strFontName, uint uiSize);
virtual CTextureItem* CreateTexture(const SString& strFullFilePath, const CPixels* pPixels, bool bMipMaps = true, uint uiSizeX = RDEFAULT,
uint uiSizeY = RDEFAULT, ERenderFormat format = RFORMAT_UNKNOWN, ETextureAddress textureAddress = TADDRESS_WRAP,
ETextureType textureType = TTYPE_TEXTURE, uint uiVolumeDepth = 1);
virtual CShaderItem* CreateShader(const SString& strFile, const SString& strRootPath, bool bIsRawData, SString& strOutStatus, float fPriority,
float fMaxDistance, bool bLayered, bool bDebug, int iTypeMask, const EffectMacroList& macros);
virtual CRenderTargetItem* CreateRenderTarget(uint uiSizeX, uint uiSizeY, bool bWithAlphaChannel, bool bForce = false);
virtual CScreenSourceItem* CreateScreenSource(uint uiSizeX, uint uiSizeY);
virtual CVectorGraphicItem* CreateVectorGraphic(uint width, uint height);
virtual CWebBrowserItem* CreateWebBrowser(uint uiSizeX, uint uiSizeY);
virtual bool SetRenderTarget(CRenderTargetItem* pItem, bool bClear);
virtual void EnableSetRenderTargetOldVer(bool bEnable);
virtual bool IsSetRenderTargetEnabledOldVer();
virtual bool RestoreDefaultRenderTarget();
virtual void UpdateBackBufferCopy();
virtual void UpdateScreenSource(CScreenSourceItem* pScreenSourceItem, bool bResampleNow);
virtual SShaderItemLayers* GetAppliedShaderForD3DData(CD3DDUMMY* pD3DData);
virtual bool ApplyShaderItemToWorldTexture(CShaderItem* pShaderItem, const SString& strTextureNameMatch, CClientEntityBase* pClientEntity,
bool bAppendLayers);
virtual bool RemoveShaderItemFromWorldTexture(CShaderItem* pShaderItem, const SString& strTextureNameMatch, CClientEntityBase* pClientEntity);
virtual void RemoveClientEntityRefs(CClientEntityBase* pClientEntity);
virtual void GetVisibleTextureNames(std::vector<SString>& outNameList, const SString& strTextureNameMatch, ushort usModelID);
virtual eDxTestMode GetTestMode() { return m_TestMode; }
virtual void SetTestMode(eDxTestMode testMode);
virtual void GetDxStatus(SDxStatus& outStatus);
virtual CEffectCloner* GetEffectCloner() { return m_pEffectCloner; }
virtual void PreDrawWorld();
virtual void SetDepthBufferFormat(ERenderFormat depthBufferFormat) { m_depthBufferFormat = depthBufferFormat; }
virtual ERenderFormat GetDepthBufferFormat() { return m_depthBufferFormat; }
virtual void SaveReadableDepthBuffer();
virtual void FlushNonAARenderTarget();
virtual void HandleStretchRect(IDirect3DSurface9* pSourceSurface, CONST RECT* pSourceRect, IDirect3DSurface9* pDestSurface, CONST RECT* pDestRect,
int Filter);
virtual void DoPulse();
virtual CDxFontItem* CreateDxFont(const SString& strFullFilePath, uint uiSize, bool bBold, DWORD ulQuality = DEFAULT_QUALITY);
virtual CGuiFontItem* CreateGuiFont(const SString& strFullFilePath, const SString& strFontName, uint uiSize);
virtual CTextureItem* CreateTexture(const SString& strFullFilePath, const CPixels* pPixels, bool bMipMaps = true, uint uiSizeX = RDEFAULT,
uint uiSizeY = RDEFAULT, ERenderFormat format = RFORMAT_UNKNOWN, ETextureAddress textureAddress = TADDRESS_WRAP,
ETextureType textureType = TTYPE_TEXTURE, uint uiVolumeDepth = 1);
virtual CShaderItem* CreateShader(const SString& strFile, const SString& strRootPath, bool bIsRawData, SString& strOutStatus, float fPriority, float fMaxDistance,
bool bLayered, bool bDebug, int iTypeMask, const EffectMacroList& macros);
virtual CRenderTargetItem* CreateRenderTarget(uint uiSizeX, uint uiSizeY, bool bWithAlphaChannel, bool bForce = false);
virtual CScreenSourceItem* CreateScreenSource(uint uiSizeX, uint uiSizeY);
virtual CWebBrowserItem* CreateWebBrowser(uint uiSizeX, uint uiSizeY);
virtual bool SetRenderTarget(CRenderTargetItem* pItem, bool bClear);
virtual void EnableSetRenderTargetOldVer(bool bEnable);
virtual bool IsSetRenderTargetEnabledOldVer();
virtual bool RestoreDefaultRenderTarget();
virtual void UpdateBackBufferCopy();
virtual void UpdateScreenSource(CScreenSourceItem* pScreenSourceItem, bool bResampleNow);
virtual SShaderItemLayers* GetAppliedShaderForD3DData(CD3DDUMMY* pD3DData);
virtual bool ApplyShaderItemToWorldTexture(CShaderItem* pShaderItem, const SString& strTextureNameMatch, CClientEntityBase* pClientEntity,
bool bAppendLayers);
virtual bool RemoveShaderItemFromWorldTexture(CShaderItem* pShaderItem, const SString& strTextureNameMatch, CClientEntityBase* pClientEntity);
virtual void RemoveClientEntityRefs(CClientEntityBase* pClientEntity);
virtual void GetVisibleTextureNames(std::vector<SString>& outNameList, const SString& strTextureNameMatch, ushort usModelID);
virtual eDxTestMode GetTestMode() { return m_TestMode; }
virtual void SetTestMode(eDxTestMode testMode);
virtual void GetDxStatus(SDxStatus& outStatus);
virtual CEffectCloner* GetEffectCloner() { return m_pEffectCloner; }
virtual void PreDrawWorld();
virtual void SetDepthBufferFormat(ERenderFormat depthBufferFormat) { m_depthBufferFormat = depthBufferFormat; }
virtual ERenderFormat GetDepthBufferFormat() { return m_depthBufferFormat; }
virtual void SaveReadableDepthBuffer();
virtual void FlushNonAARenderTarget();
virtual void HandleStretchRect(IDirect3DSurface9* pSourceSurface, CONST RECT* pSourceRect, IDirect3DSurface9* pDestSurface, CONST RECT* pDestRect,
int Filter);

// CRenderItemManager
void NotifyContructRenderItem(CRenderItem* pItem);
Expand Down
1 change: 0 additions & 1 deletion Client/mods/deathmatch/logic/CClientDisplay.h
Expand Up @@ -17,7 +17,6 @@ class CClientDisplay;
enum eDisplayType
{
DISPLAY_TEXT,
DISPLAY_VECTORGRAPHIC,
};

class CClientDisplay
Expand Down
2 changes: 0 additions & 2 deletions Client/mods/deathmatch/logic/CClientEntity.cpp
Expand Up @@ -1213,8 +1213,6 @@ unsigned int CClientEntity::GetTypeID(const char* szTypeName)
return CCLIENTSOUND;
else if (strcmp(szTypeName, "light") == 0)
return CCLIENTPOINTLIGHTS;
else if (strcmp(szTypeName, "svg") == 0)
return CCLIENTVECTORGRAPHIC;
else
return CCLIENTUNKNOWN;
}
Expand Down
2 changes: 0 additions & 2 deletions Client/mods/deathmatch/logic/CClientEntity.h
Expand Up @@ -77,7 +77,6 @@ enum eClientEntityType
CCLIENTBROWSER,
CCLIENTSEARCHLIGHT,
CCLIENTIFP,
CCLIENTVECTORGRAPHIC,
CCLIENTUNKNOWN,
};

Expand Down Expand Up @@ -139,7 +138,6 @@ enum eCClientEntityClassTypes
CLASS_CClientRenderTarget,
CLASS_CClientScreenSource,
CLASS_CClientWebBrowser,
CLASS_CClientVectorGraphic,
CLASS_CClientWeapon,
CLASS_CClientEffect,
CLASS_CClientPointLights,
Expand Down
2 changes: 0 additions & 2 deletions Client/mods/deathmatch/logic/CClientPerfStat.LuaMemory.cpp
Expand Up @@ -294,7 +294,6 @@ void CClientPerfStatLuaMemoryImpl::GetLuaMemoryStats(CClientPerfStatResult* pRes
int RenderTargetCount = g_pClientGame->GetManager()->GetRenderElementManager()->GetRenderTargetCount();
int ScreenSourceCount = g_pClientGame->GetManager()->GetRenderElementManager()->GetScreenSourceCount();
int WebBrowserCount = g_pClientGame->GetManager()->GetRenderElementManager()->GetWebBrowserCount();
int VectorGraphicCount = g_pClientGame->GetManager()->GetRenderElementManager()->GetVectorGraphicCount();
TextItemCount = std::max(TextItemCount - 4, 0); // Remove count for radar items
row[c++] = !TextItemCount ? "-" : SString("%d", TextItemCount);
row[c++] = !DxFontCount ? "-" : SString("%d", DxFontCount);
Expand All @@ -304,7 +303,6 @@ void CClientPerfStatLuaMemoryImpl::GetLuaMemoryStats(CClientPerfStatResult* pRes
row[c++] = !RenderTargetCount ? "-" : SString("%d", RenderTargetCount);
row[c++] = !ScreenSourceCount ? "-" : SString("%d", ScreenSourceCount);
row[c++] = !WebBrowserCount ? "-" : SString("%d", WebBrowserCount);
row[c++] = !VectorGraphicCount ? "-" : SString("%d", VectorGraphicCount);
}

// For each VM
Expand Down
31 changes: 0 additions & 31 deletions Client/mods/deathmatch/logic/CClientRenderElementManager.cpp
Expand Up @@ -9,7 +9,6 @@
*****************************************************************************/

#include "StdInc.h"
#include "CClientVectorGraphic.h"

////////////////////////////////////////////////////////////////
//
Expand All @@ -28,7 +27,6 @@ CClientRenderElementManager::CClientRenderElementManager(CClientManager* pClient
m_uiStatsRenderTargetCount = 0;
m_uiStatsScreenSourceCount = 0;
m_uiStatsWebBrowserCount = 0;
m_uiStatsVectorGraphicCount = 0;
}

////////////////////////////////////////////////////////////////
Expand Down Expand Up @@ -244,33 +242,6 @@ CClientWebBrowser* CClientRenderElementManager::CreateWebBrowser(uint uiSizeX, u
return pWebBrowserElement;
}

////////////////////////////////////////////////////////////////
//
// CClientRenderElementManager::CreateVectorGraphic
//
//
//
////////////////////////////////////////////////////////////////
CClientVectorGraphic* CClientRenderElementManager::CreateVectorGraphic(uint width, uint height)
{
// Create the item
CVectorGraphicItem* pVectorGraphicItem = m_pRenderItemManager->CreateVectorGraphic(width, height);

// Check create worked
if (!pVectorGraphicItem)
return nullptr;

// Create the element
CClientVectorGraphic* pVectorGraphicElement = new CClientVectorGraphic(m_pClientManager, INVALID_ELEMENT_ID, pVectorGraphicItem);

// Add to this manager's list
MapSet(m_ItemElementMap, pVectorGraphicElement->GetRenderItem(), pVectorGraphicElement);

m_uiStatsVectorGraphicCount++;

return pVectorGraphicElement;
}

////////////////////////////////////////////////////////////////
//
// CClientRenderElementManager::FindAutoTexture
Expand Down Expand Up @@ -339,8 +310,6 @@ void CClientRenderElementManager::Remove(CClientRenderElement* pElement)
m_uiStatsScreenSourceCount--;
else if (pElement->IsA(CClientWebBrowser::GetClassId()))
m_uiStatsWebBrowserCount--;
else if (pElement->IsA(CClientVectorGraphic::GetClassId()))
m_uiStatsVectorGraphicCount--;
else if (pElement->IsA(CClientTexture::GetClassId()))
m_uiStatsTextureCount--;

Expand Down

0 comments on commit a6ba666

Please sign in to comment.