§6.3挑战:编写Diffuse per pixel shader

作为一个小的挑战以更熟悉shader,你可以编写一个简单的Diffuseperpixel shader,与 specularper pixel shader有相同的工作原理,只不过消除了镜面反光。 Diffuseperpixel通常用在没有光泽的材料上,为了能够切换specularperpixel和diffuseperpixel,你应该在simpleshader.fx文件里建立两种technique。

加上以下代码后,您就可以使用空格键动态地在specularperpixel和diffuseperpixel之间切换了:

if (Input.Keyboard.IsKeyDown(Keys.Space))

effect.CurrentTechnique = effect.Techniques["DiffusePerPixel"];

else

effect.CurrentTechnique = effect.Techniques["SpecularPerPixel"];


发布时间:2008/9/10 14:08:22  阅读次数:5291

2006 - 2024,推荐分辨率1024*768以上,推荐浏览器Chrome、Edge等现代浏览器,截止2021年12月5日的访问次数:1872万9823 站长邮箱

沪ICP备18037240号-1

沪公网安备 31011002002865号