DirectX11 With Windows SDK--13 动手实现一个简易Effects框架、阴影效果绘制 (9)

DirectX11 With Windows SDK--13 动手实现一个简易Effects框架、阴影效果绘制

第5步:绘制不透明的正常物体 // ************************ // 5. 绘制不透明的正常物体 // m_BasicEffect.SetRenderDefault(m_pd3dImmediateContext.Get()); for (auto& wall : m_Walls) wall.Draw(m_pd3dImmediateContext.Get(), m_BasicEffect); m_Floor.Draw(m_pd3dImmediateContext.Get(), m_BasicEffect); m_WoodCrate.Draw(m_pd3dImmediateContext.Get(), m_BasicEffect);

DirectX11 With Windows SDK--13 动手实现一个简易Effects框架、阴影效果绘制

第6步:绘制不透明正常物体的阴影 // ************************ // 6. 绘制不透明正常物体的阴影 // m_WoodCrate.SetMaterial(m_ShadowMat); m_BasicEffect.SetShadowState(true); // 反射关闭,阴影开启 m_BasicEffect.SetRenderNoDoubleBlend(m_pd3dImmediateContext.Get(), 0); m_WoodCrate.Draw(m_pd3dImmediateContext.Get(), m_BasicEffect); m_BasicEffect.SetShadowState(false); // 阴影关闭 m_WoodCrate.SetMaterial(m_WoodCrateMat);

DirectX11 With Windows SDK--13 动手实现一个简易Effects框架、阴影效果绘制

最终绘制效果如下:

DirectX11 With Windows SDK--13 动手实现一个简易Effects框架、阴影效果绘制

注意该样例只生成点光灯到地板的阴影。你可以用各种摄像机模式来进行测试。

DirectX11 With Windows SDK完整目录

Github项目源码

欢迎加入QQ群: 727623616 可以一起探讨DX11,以及有什么问题也可以在这里汇报。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzjgjd.html