Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,6 @@ class W3DShaderManager
ST_FLAT_TERRAIN_BASE_NOISE1, //shader to apply base texture and cloud/noise 1.
ST_FLAT_TERRAIN_BASE_NOISE2, //shader to apply base texture and cloud/noise 2.
ST_FLAT_TERRAIN_BASE_NOISE12,//shader to apply base texture and both cloud/noise
ST_FLAT_SHROUD_TEXTURE, //shader to apply shroud texture projection.
ST_MAX
};

Expand Down
26 changes: 13 additions & 13 deletions Core/GameEngineDevice/Source/W3DDevice/GameClient/BaseHeightMap.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2318,11 +2318,11 @@ void BaseHeightMapRenderObjClass::renderShoreLines(CameraClass *pCamera)

ShaderClass unlitShader=ShaderClass::_PresetOpaque2DShader;
unlitShader.Set_Depth_Compare(ShaderClass::PASS_LEQUAL);
DX8Wrapper::Set_Shader(unlitShader);
Renderer::Set_Shader(unlitShader);
VertexMaterialClass *vmat=VertexMaterialClass::Get_Preset(VertexMaterialClass::PRELIT_DIFFUSE);
DX8Wrapper::Set_Material(vmat);
Renderer::Set_Material(vmat);
REF_PTR_RELEASE(vmat);
DX8Wrapper::Set_Texture(0,m_destAlphaTexture);
Renderer::Set_Texture(0,m_destAlphaTexture);
Renderer::Set_Transform(RenderTransform_World,Matrix3D(true));
//Enabled writes to destination alpha only
DX8Wrapper::Set_DX8_Render_State(D3DRS_COLORWRITEENABLE,D3DCOLORWRITEENABLE_ALPHA);
Expand Down Expand Up @@ -2439,9 +2439,9 @@ void BaseHeightMapRenderObjClass::renderShoreLines(CameraClass *pCamera)

if (indexCount > 0 && vertexCount > 0)
{
DX8Wrapper::Set_Index_Buffer(ib_access,0);
DX8Wrapper::Set_Vertex_Buffer(vb_access);
DX8Wrapper::Draw_Triangles( 0,indexCount/3, 0, vertexCount); //draw a quad, 2 triangles, 4 verts
Renderer::Set_Index_Buffer(ib_access,0);
Renderer::Set_Vertex_Buffer(vb_access);
Renderer::Draw_Triangles( 0,indexCount/3, 0, vertexCount); //draw a quad, 2 triangles, 4 verts
m_numVisibleShoreLineTiles += indexCount/6;
}

Expand Down Expand Up @@ -2504,11 +2504,11 @@ void BaseHeightMapRenderObjClass::renderShoreLinesSorted(CameraClass *pCamera)

ShaderClass unlitShader=ShaderClass::_PresetOpaque2DShader;
unlitShader.Set_Depth_Compare(ShaderClass::PASS_LEQUAL);
DX8Wrapper::Set_Shader(unlitShader);
Renderer::Set_Shader(unlitShader);
VertexMaterialClass *vmat=VertexMaterialClass::Get_Preset(VertexMaterialClass::PRELIT_DIFFUSE);
DX8Wrapper::Set_Material(vmat);
Renderer::Set_Material(vmat);
REF_PTR_RELEASE(vmat);
DX8Wrapper::Set_Texture(0,m_destAlphaTexture);
Renderer::Set_Texture(0,m_destAlphaTexture);
Renderer::Set_Transform(RenderTransform_World,Matrix3D(true));
//Enabled writes to destination alpha only
DX8Wrapper::Set_DX8_Render_State(D3DRS_COLORWRITEENABLE,D3DCOLORWRITEENABLE_ALPHA);
Expand Down Expand Up @@ -2782,9 +2782,9 @@ void BaseHeightMapRenderObjClass::renderShoreLinesSorted(CameraClass *pCamera)

if (indexCount > 0 && vertexCount > 0)
{
DX8Wrapper::Set_Index_Buffer(ib_access,0);
DX8Wrapper::Set_Vertex_Buffer(vb_access);
DX8Wrapper::Draw_Triangles( 0,indexCount/3, 0, vertexCount); //draw a quad, 2 triangles, 4 verts
Renderer::Set_Index_Buffer(ib_access,0);
Renderer::Set_Vertex_Buffer(vb_access);
Renderer::Draw_Triangles( 0,indexCount/3, 0, vertexCount); //draw a quad, 2 triangles, 4 verts
m_numVisibleShoreLineTiles += indexCount/6;
}

Expand Down Expand Up @@ -2814,7 +2814,7 @@ void BaseHeightMapRenderObjClass::renderTrees(CameraClass * camera)
if (Scene==nullptr) return;
if (m_treeBuffer) {
Renderer::Set_Transform(RenderTransform_World,Transform);
DX8Wrapper::Set_Material(m_vertexMaterialClass);
Renderer::Set_Material(m_vertexMaterialClass);
RTS3DScene *pMyScene = (RTS3DScene *)Scene;
RefRenderObjListIterator pDynamicLightsIterator(pMyScene->getDynamicLights());
m_treeBuffer->drawTrees(camera, &pDynamicLightsIterator);
Expand Down
38 changes: 19 additions & 19 deletions Core/GameEngineDevice/Source/W3DDevice/GameClient/FlatHeightMap.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -486,19 +486,19 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
}
#endif

DX8Wrapper::Set_Light_Environment(rinfo.light_environment);
Renderer::Set_Light_Environment(rinfo.light_environment);

// Force shaders to update.
m_stageTwoTexture->restore();
DX8Wrapper::Set_Texture(0,nullptr);
DX8Wrapper::Set_Texture(1,nullptr);
Renderer::Set_Texture(0,nullptr);
Renderer::Set_Texture(1,nullptr);
ShaderClass::Invalidate();

Renderer::Set_Transform(RenderTransform_World,Transform);


DX8Wrapper::Set_Material(m_vertexMaterialClass);
DX8Wrapper::Set_Shader(m_shaderClass);
Renderer::Set_Material(m_vertexMaterialClass);
Renderer::Set_Shader(m_shaderClass);

st=W3DShaderManager::ST_FLAT_TERRAIN_BASE; //set default shader

Expand Down Expand Up @@ -550,8 +550,8 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
for (pass=0; pass<devicePasses; pass++) {
Bool disableTex = m_disableTextures;
if (m_disableTextures ) {
DX8Wrapper::Set_Shader(ShaderClass::_PresetOpaque2DShader);
DX8Wrapper::Set_Texture(0,nullptr);
Renderer::Set_Shader(ShaderClass::_PresetOpaque2DShader);
Renderer::Set_Texture(0,nullptr);
} else {
W3DShaderManager::setShader(st, pass);
}
Expand Down Expand Up @@ -590,13 +590,13 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
renderShoreLines(&rinfo.Camera);

#ifdef DO_ROADS
DX8Wrapper::Set_Texture(0,nullptr);
DX8Wrapper::Set_Texture(1,nullptr);
Renderer::Set_Texture(0,nullptr);
Renderer::Set_Texture(1,nullptr);
m_stageTwoTexture->restore();

ShaderClass::Invalidate();
if (!ShaderClass::Is_Backface_Culling_Inverted()) {
DX8Wrapper::Set_Material(m_vertexMaterialClass);
Renderer::Set_Material(m_vertexMaterialClass);
if (Scene) {
RTS3DScene *pMyScene = (RTS3DScene *)Scene;
RefRenderObjListIterator pDynamicLightsIterator(pMyScene->getDynamicLights());
Expand All @@ -606,36 +606,36 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
}
#endif

DX8Wrapper::Set_Texture(0,nullptr);
DX8Wrapper::Set_Texture(1,nullptr);
Renderer::Set_Texture(0,nullptr);
Renderer::Set_Texture(1,nullptr);
m_stageTwoTexture->restore();

drawScorches();

DX8Wrapper::Set_Texture(0,nullptr);
DX8Wrapper::Set_Texture(1,nullptr);
Renderer::Set_Texture(0,nullptr);
Renderer::Set_Texture(1,nullptr);
m_stageTwoTexture->restore();
ShaderClass::Invalidate();
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();

m_bridgeBuffer->drawBridges(&rinfo.Camera, m_disableTextures, m_stageTwoTexture);

if (TheTerrainTracksRenderObjClassSystem)
TheTerrainTracksRenderObjClassSystem->flush();

ShaderClass::Invalidate();
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();

m_waypointBuffer->drawWaypoints(rinfo);

m_bibBuffer->renderBibs();
#endif
// We do some custom blending, so tell the shader class to reset everything.
DX8Wrapper::Set_Texture(0,nullptr);
DX8Wrapper::Set_Texture(1,nullptr);
Renderer::Set_Texture(0,nullptr);
Renderer::Set_Texture(1,nullptr);
m_stageTwoTexture->restore();
ShaderClass::Invalidate();
DX8Wrapper::Set_Material(nullptr);
Renderer::Set_Material(nullptr);

}

Loading
Loading