specular高光贴图

西昌.何雨锋

specular高光贴图用于模仿出象不锈钢之类的表面极其光滑的物体

但有别于镜面反射,因为镜面反射会有投影,而这个只反光不反投影。

想象一下使命召唤里的瞄准镜的反射投影 和 战地2的小水洼

这就是两者的区别

对模型灯光模式的要求是  cTV_LIGHTING_OFFSETBUMPMAPPING_TANGENTSPACE 或 cTV_LIGHTING_PERVERTEX_PRT

在图层1的specular map贴图区使用一张高光贴图

高光贴图的制作方法网上有很多,最简单的方法是直接拿PS把颜色给去掉就可以了,但是看起来整体都过于光滑,不真实,不妨在ps中加点喷溅点什么让它部分不反光就可以模仿锈迹。

在model view中的方法为:

除了在stage0给指定普通纹理外,再在stage1的specular map中给指定一张高光图。

同时灯光模式符合要求即可。

在程序中的使用方法为:

fac1->LoadTexture("mdl\\tvm\\shaka\\shaka1body_color.jpg","shaka_body",-1,-1);
fac1->LoadTexture("mdl\\tvm\\shaka\\shaka_bodyUV.jpg","spe_tex",-1,-1,cTV_COLORKEY_NO,true);

mesh1->LoadTVM("mdl\\tvm\\shaka\\shaka1_body.tvm",false,false);
mesh1->SetTextureEx(0,global1->GetTex("shaka_body"),-1);
mesh1->SetTextureEx(1,global1->GetTex("spe_tex"),5);

//对第一层的第5个组 即specalmap组赋予材质.


mesh1->SetLightingMode(cTV_LIGHTING_OFFSETBUMPMAPPING_TANGENTSPACE);

 

 

你可能感兴趣的:(TV5)