zoukankan      html  css  js  c++  java
  • TWaver3D特效之高光反射

    前篇我们介绍了TWaver 3D的环境映射特效,下面我们接着给大家分享高光反射特效。
    高光反射定义了物体上的某一区域比其他地方更反光。在高光反射的贴图中,黑色区域的反射率为0(完全不反光),白色区域的反射率为100%(完全反光)。这在现实的生活中,也是随处可见,比如一个生锈的物体用低光,而一个抛光的金属应该用高强光;手表上的表盘比表带应该更反光;人的嘴唇应该比皮肤有更强的高光,而皮肤应该比纯棉衣服更反光。加上了这种高光效果后,会是3D物体更加真实,更加生动。
    接下来我们就来讲解一下如何在一个模型中使用高光反射,比如我们需要创建一个大楼的建筑物。一个cube贴上建筑物的贴图就可以模拟了。我们准备了一张玻璃的贴图:
    building4
    创建建筑物代码如下:

    var node = new mono.Cube(1000,3000,1000);
    node.setStyle('m.texture.image','./images/building.jpg');
    node.setStyle('m.texture.repeat',new mono.Vec3(2,4));
    

      

    接下来我们要准备一张高光的贴图,这张贴图上定义了哪些部分需要反射高强光,哪些部分的光照需要弱一些。
    building3-spe
    代码设置如下:

    //设置需要反射的光照颜色,如果是夕阳可以设置为红色。
    node.setStyle('m.specular','white');
    //设置高光贴图
    node.setStyle('m.specularmap.image','./images/specularmap.jpg');

    然后再加上光照和skybox效果如下:
    building

  • 相关阅读:
    Python 爬取网易云歌手的50首热门作品
    对于AES和RSA的个人理解
    sqlzoo
    项目部署 uwsgi+nginx+crm
    nginx学习
    redis补充知识--- 缓存击穿、缓存雪崩、缓存穿透
    redis-cluster 搭建
    redis主从复制
    redis-sentinel (哨兵)
    redis 发布订阅
  • 原文地址:https://www.cnblogs.com/twaver/p/4276610.html
Copyright © 2011-2022 走看看