18#ifndef INCLUDED_TERRAINTEXTUREMANAGER
19#define INCLUDED_TERRAINTEXTUREMANAGER
32#define g_TexMan CTerrainTextureManager::GetSingleton()
34#define NUM_ALPHA_MAPS 14
122 CTerrainTextureManager::TerrainAlphaMap::iterator
LoadAlphaMap(
const VfsPath& alphaMapType);
std::shared_ptr< CTerrainProperties > CTerrainPropertiesPtr
Definition: TerrainProperties.h:40
std::shared_ptr< CTerrainProperties > CTerrainPropertiesPtr
Definition: TerrainTextureManager.h:39
#define NUM_ALPHA_MAPS
Definition: TerrainTextureManager.h:34
Definition: TerrainTextureManager.h:42
void RemoveTerrain(CTerrainTextureEntry *)
Definition: TerrainTextureManager.cpp:332
size_t m_Index
Definition: TerrainTextureManager.h:47
void AddTerrain(CTerrainTextureEntry *)
Definition: TerrainTextureManager.cpp:327
std::vector< CTerrainTextureEntry * > m_Terrains
Definition: TerrainTextureManager.h:49
const std::vector< CTerrainTextureEntry * > & GetTerrains() const
Definition: TerrainTextureManager.h:67
CStr m_Name
Definition: TerrainTextureManager.h:44
CTerrainGroup(CStr name, size_t index)
Definition: TerrainTextureManager.h:52
size_t GetIndex() const
Definition: TerrainTextureManager.h:62
CStr GetName() const
Definition: TerrainTextureManager.h:64
Definition: TerrainProperties.h:43
Definition: TerrainTextureEntry.h:33
Definition: TerrainTextureManager.h:89
void DeleteTexture(CTerrainTextureEntry *entry)
Definition: TerrainTextureManager.cpp:89
TerrainAlphaMap m_TerrainAlphas
Definition: TerrainTextureManager.h:135
int LoadTerrainTextures()
Definition: TerrainTextureManager.cpp:125
std::vector< CTerrainTextureEntry * > m_TextureEntries
Definition: TerrainTextureManager.h:131
std::map< CStr, CTerrainGroup * > TerrainGroupMap
Definition: TerrainTextureManager.h:93
std::map< VfsPath, TerrainAlpha > TerrainAlphaMap
Definition: TerrainTextureManager.h:94
size_t m_LastGroupIndex
Definition: TerrainTextureManager.h:137
CTerrainTextureEntry * AddTexture(const CTerrainPropertiesPtr &props, const VfsPath &path)
Definition: TerrainTextureManager.cpp:82
const TerrainGroupMap & GetGroups() const
Definition: TerrainTextureManager.h:119
TerrainGroupMap m_TerrainGroups
Definition: TerrainTextureManager.h:133
Renderer::Backend::IDevice * m_Device
Definition: TerrainTextureManager.h:127
void UnloadTerrainTextures()
Definition: TerrainTextureManager.cpp:57
CTerrainGroup * FindGroup(const CStr &name)
Definition: TerrainTextureManager.cpp:132
void UploadResourcesIfNeeded(Renderer::Backend::IDeviceCommandContext *deviceCommandContext)
Definition: TerrainTextureManager.cpp:308
std::vector< CTerrainTextureManager::TerrainAlphaMap::iterator > m_AlphaMapsToUpload
Definition: TerrainTextureManager.h:141
CTerrainTextureManager(Renderer::Backend::IDevice *device)
Definition: TerrainTextureManager.cpp:38
~CTerrainTextureManager()
Definition: TerrainTextureManager.cpp:49
CTerrainTextureEntry * FindTexture(const CStr &tag) const
Definition: TerrainTextureManager.cpp:70
CTerrainTextureManager::TerrainAlphaMap::iterator LoadAlphaMap(const VfsPath &alphaMapType)
Definition: TerrainTextureManager.cpp:144
Definition: IDeviceCommandContext.h:42
Template base class for singletons.
Definition: Singleton.h:34
Definition: TerrainTextureManager.h:73
float v0
Definition: TerrainTextureManager.h:81
std::shared_ptr< u8 > m_CompositeDataToUpload
Definition: TerrainTextureManager.h:77
struct TerrainAlpha::@11 m_AlphaMapCoords[NUM_ALPHA_MAPS]
float u1
Definition: TerrainTextureManager.h:81
float u0
Definition: TerrainTextureManager.h:81
float v1
Definition: TerrainTextureManager.h:81
std::unique_ptr< Renderer::Backend::ITexture > m_CompositeAlphaMap
Definition: TerrainTextureManager.h:75