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 @@ -2313,9 +2313,9 @@ 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_Transform(RenderTransform_World,Matrix3D(true));
Expand Down Expand Up @@ -2499,9 +2499,9 @@ 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_Transform(RenderTransform_World,Matrix3D(true));
Expand Down Expand Up @@ -2809,7 +2809,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
Original file line number Diff line number Diff line change
Expand Up @@ -486,7 +486,7 @@ 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();
Expand All @@ -497,8 +497,8 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
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,7 +550,7 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
for (pass=0; pass<devicePasses; pass++) {
Bool disableTex = m_disableTextures;
if (m_disableTextures ) {
DX8Wrapper::Set_Shader(ShaderClass::_PresetOpaque2DShader);
Renderer::Set_Shader(ShaderClass::_PresetOpaque2DShader);
DX8Wrapper::Set_Texture(0,nullptr);
} else {
W3DShaderManager::setShader(st, pass);
Expand Down Expand Up @@ -596,7 +596,7 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)

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 @@ -616,15 +616,15 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
DX8Wrapper::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);

Expand All @@ -635,7 +635,7 @@ void FlatHeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
DX8Wrapper::Set_Texture(1,nullptr);
m_stageTwoTexture->restore();
ShaderClass::Invalidate();
DX8Wrapper::Set_Material(nullptr);
Renderer::Set_Material(nullptr);

}

36 changes: 18 additions & 18 deletions Core/GameEngineDevice/Source/W3DDevice/GameClient/HeightMap.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1922,7 +1922,7 @@ void HeightMapRenderObjClass::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();
Expand Down Expand Up @@ -1960,11 +1960,11 @@ void HeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
{
//wireframe pass
//Set to vertex diffuse lighting
DX8Wrapper::Set_Material(m_vertexMaterialClass);
Renderer::Set_Material(m_vertexMaterialClass);
//Set shader to non-textured solid color from vertex
DX8Wrapper::Set_Shader(ShaderClass::_PresetOpaqueSolidShader);
Renderer::Set_Shader(ShaderClass::_PresetOpaqueSolidShader);
devicePasses=1; //one pass solid, next in wireframe.
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();
DX8Wrapper::Set_DX8_Texture_Stage_State( 0, D3DTSS_COLORARG2, D3DTA_TFACTOR );
DX8Wrapper::Set_DX8_Render_State(D3DRS_TEXTUREFACTOR,0xff808080);
doMultiPassWireFrame=TRUE;
Expand All @@ -1975,8 +1975,8 @@ void HeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
}
else
{
DX8Wrapper::Set_Material(m_vertexMaterialClass);
DX8Wrapper::Set_Shader(m_shaderClass);
Renderer::Set_Material(m_vertexMaterialClass);
Renderer::Set_Shader(m_shaderClass);

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

Expand Down Expand Up @@ -2029,7 +2029,7 @@ void HeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
if (!doMultiPassWireFrame) //multi-pass wireframe doesn't use regular shaders.
{
if (m_disableTextures ) {
DX8Wrapper::Set_Shader(ShaderClass::_PresetOpaque2DShader);
Renderer::Set_Shader(ShaderClass::_PresetOpaque2DShader);
DX8Wrapper::Set_Texture(0,nullptr);
} else {
W3DShaderManager::setShader(st, pass);
Expand All @@ -2043,13 +2043,13 @@ void HeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
#ifdef PRE_TRANSFORM_VERTEX
if (m_xformedVertexBuffer && pass==0) {
// Note - m_xformedVertexBuffer should only be used for non T&L hardware. jba.
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();
int code = DX8Wrapper::_Get_D3D_Device8()->ProcessVertices(0, 0, numVertex, m_xformedVertexBuffer[j*m_numVBTilesX+i], 0);
::OutputDebugString("did process vertex\n");
}
if (m_xformedVertexBuffer) {
// Note - m_xformedVertexBuffer should only be used for non T&L hardware. jba.
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();
DX8Wrapper::_Get_D3D_Device8()->SetStreamSource(
0,
m_xformedVertexBuffer[j*m_numVBTilesX+i],
Expand Down Expand Up @@ -2087,7 +2087,7 @@ void HeightMapRenderObjClass::Render(RenderInfoClass & rinfo)

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 @@ -2109,7 +2109,7 @@ void HeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
DX8Wrapper::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, doCloud?m_stageTwoTexture:nullptr);

Expand All @@ -2124,7 +2124,7 @@ void HeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
}

ShaderClass::Invalidate();
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();
}
else
m_bridgeBuffer->drawBridges(&rinfo.Camera, m_disableTextures, m_stageTwoTexture);
Expand All @@ -2139,7 +2139,7 @@ void HeightMapRenderObjClass::Render(RenderInfoClass & rinfo)
DX8Wrapper::Set_Texture(1,nullptr);
m_stageTwoTexture->restore();
ShaderClass::Invalidate();
DX8Wrapper::Set_Material(nullptr);
Renderer::Set_Material(nullptr);

}

Expand All @@ -2161,13 +2161,13 @@ void HeightMapRenderObjClass::renderTerrainPass(CameraClass *pCamera)
#ifdef PRE_TRANSFORM_VERTEX
if (m_xformedVertexBuffer && pass==0) {
// Note - m_xformedVertexBuffer should only be used for non T&L hardware. jba.
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();
int code = DX8Wrapper::_Get_D3D_Device8()->ProcessVertices(0, 0, numVertex, m_xformedVertexBuffer[j*m_numVBTilesX+i], 0);
::OutputDebugString("did process vertex\n");
}
if (m_xformedVertexBuffer) {
// Note - m_xformedVertexBuffer should only be used for non T&L hardware. jba.
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();
DX8Wrapper::_Get_D3D_Device8()->SetStreamSource(
0,
m_xformedVertexBuffer[j*m_numVBTilesX+i],
Expand Down Expand Up @@ -2338,17 +2338,17 @@ void HeightMapRenderObjClass::renderExtraBlendTiles()
DX8Wrapper::Set_Index_Buffer(ib_access,0);
DX8Wrapper::Set_Vertex_Buffer(vb_access);
VertexMaterialClass *vmat=VertexMaterialClass::Get_Preset(VertexMaterialClass::PRELIT_DIFFUSE);
DX8Wrapper::Set_Material(vmat);
Renderer::Set_Material(vmat);
REF_PTR_RELEASE(vmat);
ShaderClass shader=ShaderClass::_PresetOpaqueShader;
shader.Set_Depth_Mask(ShaderClass::DEPTH_WRITE_DISABLE); //disable writes to z
DX8Wrapper::Set_Shader(shader);
Renderer::Set_Shader(shader);

if (TheGlobalData->m_use3WayTerrainBlends == 2)
{
shader.Set_Primary_Gradient(ShaderClass::GRADIENT_DISABLE); //disable lighting.
shader.Set_Texturing(ShaderClass::TEXTURING_DISABLE); //disable texturing.
DX8Wrapper::Set_Shader(shader);
Renderer::Set_Shader(shader);
DX8Wrapper::Set_Texture(0,nullptr); //debug mode which draws terrain tiles in white.
if (Is_Hidden() == 0) {
DX8Wrapper::Draw_Triangles( 0,indexCount/3, 0, vertexCount); //draw a quad, 2 triangles, 4 verts
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -216,11 +216,11 @@ void W3DDebugIcons::Render(RenderInfoClass & rinfo)
//
Bool anyVanished = false;
if (m_numDebugIcons==0) return;
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();

DX8Wrapper::Set_Material(m_vertexMaterialClass);
Renderer::Set_Material(m_vertexMaterialClass);
DX8Wrapper::Set_Texture(0, nullptr);
DX8Wrapper::Apply_Render_State_Changes();
Renderer::Apply_Render_State_Changes();

Renderer::Set_Transform(RenderTransform_World,Transform);

Expand Down Expand Up @@ -303,7 +303,7 @@ void W3DDebugIcons::Render(RenderInfoClass & rinfo)
}
}
if (numVertex == 0) break;
DX8Wrapper::Set_Shader(ShaderClass(SC_ALPHA));
Renderer::Set_Shader(ShaderClass(SC_ALPHA));
DX8Wrapper::Set_Index_Buffer(ib_access,0);
DX8Wrapper::Set_Vertex_Buffer(vb_access);
DX8Wrapper::Draw_Triangles( 0,curIndex/3, 0, numVertex); //draw a quad, 2 triangles, 4 verts
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
#include "W3DDevice/GameClient/TerrainTex.h"
#include "W3DDevice/GameClient/WorldHeightMap.h"
#include "WW3D2/dx8wrapper.h"
#include "WW3D2/Renderer.h"

W3DScorch::W3DScorch(bool deduplicateScorches)
: m_vertexScorch(nullptr)
Expand Down Expand Up @@ -124,7 +125,7 @@ void W3DScorch::drawScorches(WorldHeightMap& map)
}
DX8Wrapper::Set_Index_Buffer(m_indexScorch, 0);
DX8Wrapper::Set_Vertex_Buffer(m_vertexScorch);
DX8Wrapper::Set_Shader(ShaderClass::_PresetAlphaShader);
Renderer::Set_Shader(ShaderClass::_PresetAlphaShader);

DX8Wrapper::Set_Texture(0, m_scorchTexture);
DX8Wrapper::Draw_Triangles(0, m_curNumScorchIndices / 3, 0, m_curNumScorchVertices);
Expand Down
Loading
Loading