§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 下午2:08:22 阅读次数:5787