diff --git a/panda/src/dxgsg8/dxGraphicsStateGuardian8.cxx b/panda/src/dxgsg8/dxGraphicsStateGuardian8.cxx index 86379c4f16..e623dc23a9 100644 --- a/panda/src/dxgsg8/dxGraphicsStateGuardian8.cxx +++ b/panda/src/dxgsg8/dxGraphicsStateGuardian8.cxx @@ -2183,13 +2183,19 @@ do_issue_material() { } } - _d3d_device->SetMaterial(&cur_material); + if (material->has_specular()) { + _d3d_device->SetRenderState(D3DRS_SPECULARENABLE, TRUE); + } else { + _d3d_device->SetRenderState(D3DRS_SPECULARENABLE, FALSE); + } if (material->get_local()) { _d3d_device->SetRenderState(D3DRS_LOCALVIEWER, TRUE); } else { _d3d_device->SetRenderState(D3DRS_LOCALVIEWER, FALSE); } + + _d3d_device->SetMaterial(&cur_material); } ////////////////////////////////////////////////////////////////////