17 #ifndef C4LANDSCAPE_RENDER_H
18 #define C4LANDSCAPE_RENDER_H
124 static const char *UniformNames[];
128 unsigned int hVAOIDNoLight;
129 unsigned int hVAOIDLight;
132 GLuint matMapTexture;
134 GLuint hMaterialTexture;
136 std::vector<StdCopyStrBuf> MaterialTextureMap;
138 int32_t iMaterialTextureDepth;
140 int32_t iMaterialWidth, iMaterialHeight;
146 std::chrono::time_point<std::chrono::steady_clock> TimerStart;
151 void Clear()
override;
159 bool InitLandscapeTexture();
169 int32_t LookupTextureTransition(
const char *szFrom,
const char *szTo);
170 void AddTextureTransition(
const char *szFrom,
const char *szTo);
171 void AddTextureAnim(
const char *szTextureAnim);
173 void BuildMatMap(uint32_t *pTex);
const int C4LR_SurfaceCount
@ C4LRU_AmbientBrightness
const int C4LR_BytesPerSurface
const int C4LR_BytesPerPx
@ C4LRA_LandscapeTexCoord
C4Rect GetAffectedRect(C4Rect Rect) override
bool ReInit(int32_t iWidth, int32_t iHeight) override
~C4LandscapeRenderGL() override
void Draw(const C4TargetFacet &cgo, const C4FoWRegion *Light, uint32_t clrMod) override
void Update(C4Rect Rect, C4Landscape *pSource) override
bool Init(int32_t iWidth, int32_t iHeight, C4TextureMap *pMap, C4GroupSet *pGraphics) override
virtual bool ReInit(int32_t iWidth, int32_t iHeight)=0
C4LandscapeRender()=default
virtual C4Rect GetAffectedRect(C4Rect Rect)=0
virtual bool Init(int32_t iWidth, int32_t iHeight, C4TextureMap *pTexs, C4GroupSet *pGraphics)=0
virtual ~C4LandscapeRender()=default
virtual void Update(C4Rect Rect, C4Landscape *pSource)=0
virtual void Draw(const C4TargetFacet &cgo, const class C4FoWRegion *Light, uint32_t clrMod)=0