rendered paste bodyIndex: CD3D9MaterialRenderer.h===================================================================--- CD3D9MaterialRenderer.h (revision 1270)+++ CD3D9MaterialRenderer.h (working copy)@@ -66,13 +66,19 @@ virtual void OnSetMaterial(const SMaterial& material, const SMaterial& lastMaterial, bool resetAllRenderstates, IMaterialRendererServices* services) {+ os::Printer::log("Setting solid material."); if (material.MaterialType != lastMaterial.MaterialType || resetAllRenderstates) {+ os::Printer::log("Resetting render states."); pID3DDevice->SetTextureStageState (0, D3DTSS_COLOROP, D3DTOP_MODULATE); pID3DDevice->SetTextureStageState (0, D3DTSS_COLORARG1, D3DTA_TEXTURE); pID3DDevice->SetTextureStageState (0, D3DTSS_COLORARG2, D3DTA_DIFFUSE); pID3DDevice->SetTextureStageState (0, D3DTSS_ALPHAOP, D3DTOP_DISABLE); }+ else+ {+ os::Printer::log("Not resetting render states.");+ } pID3DDevice->SetTextureStageState(1, D3DTSS_COLOROP, D3DTOP_DISABLE); pID3DDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, FALSE);@@ -306,9 +312,11 @@ virtual void OnSetMaterial(const SMaterial& material, const SMaterial& lastMaterial, bool resetAllRenderstates, IMaterialRendererServices* services) {+ os::Printer::log("Setting transparent alpha channel."); if (material.MaterialType != lastMaterial.MaterialType || resetAllRenderstates || material.MaterialTypeParam != lastMaterial.MaterialTypeParam ) {+ os::Printer::log("Resetting render states."); pID3DDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE ); pID3DDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE ); pID3DDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_CURRENT );@@ -331,6 +339,10 @@ pID3DDevice->SetRenderState(D3DRS_ALPHATESTENABLE, TRUE); }+ else+ {+ os::Printer::log("Not resetting render states.");+ } ((SMaterial&)material).ZWriteEnable = false; @@ -363,8 +375,10 @@ virtual void OnSetMaterial(const SMaterial& material, const SMaterial& lastMaterial, bool resetAllRenderstates, IMaterialRendererServices* services) {+ os::Printer::log("Setting transparent alpha channel ref."); if (material.MaterialType != lastMaterial.MaterialType || resetAllRenderstates) {+ os::Printer::log("Resetting render states."); pID3DDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE ); pID3DDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE ); pID3DDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_CURRENT );@@ -384,6 +398,10 @@ pID3DDevice->SetRenderState(D3DRS_ALPHAFUNC, D3DCMP_GREATEREQUAL); pID3DDevice->SetRenderState(D3DRS_ALPHATESTENABLE, TRUE); }+ else+ {+ os::Printer::log("Not resetting render states.");+ } ((SMaterial&)material).ZWriteEnable = false;