Three.js 添加阴影
来源:互联网 发布:唯一网络王宇杰简介 编辑:程序博客网 时间:2024/05/01 03:10
关键技术
- shadowMapEnabled
- castShadow
- receiveShadow
引言
在three中渲染阴影需要耗费大量计算,所以默认情况下,渲染阴影的属性都是关闭,并不生成阴影。
如果需要为物体添加阴影的话,大体分为四步:
step1 :
告诉renderer我要渲染阴影
var renderer = new THREE.WebGLRenderer({antialias:true});renderer.setClearColor(new THREE.Color(0xffffff));renderer.shadowMapEnabled = true; // 启用阴影选项
step2:
让物体投射阴影
var geo = new THREE.BoxGeometry(10,10,10);var mat = new THREE.MeshPhoneMaterial({color:0xffffff});var cube = new THREE.Mesh(geo,mat);cube.castShadow = true; // 启用阴影选项
step3:
让另外一个物体(平面或其他物体接受阴影)
var geo = new THREE.PlaneGeometry(100,50,32,32);var mat = new THREE.MeshPhoneMaterial({color:0xeeeeee,side:THREE.DoubleSize});var plane = new THREE.Mesh(geo,mat);plane.receiveShadow = true; // 启用接受阴影选项
step4:
告诉光源需要投射阴影
var light = new THREE.DirectionalLight(color:0xffffff);light.castShadow = true; // 启用阴影选项scene.add(light);
注意:
用MeshPhoneMaterial是为了创建光亮的物体,MeshLambertMaterial创建会不光亮颜色暗淡模糊
完成以上四个步骤,即可完整的呈现阴影效果
1 0
- Three.js 添加阴影
- Three.js 阴影效果
- Three.JS 添加灯光、材质和阴影(第一个例子)
- 15 Three.js实现阴影效果
- three.js给场景加上阴影
- Three.js中添加指南针
- <Three.js>(第二节)添加长方体
- three.js 01-03 之添加光源
- 使用three.js加载3dmax资源,以及实现场景中的阴影效果
- 添加阴影
- three.js
- three.js
- Three.js
- Three.js 添加世界坐标轴三个轴指向
- 关于three.js中添加文字的方式
- JS+THREE.js
- three -添加辅助线
- 给图片添加阴影
- 1.opencv中的绝对路径问题
- 殊珠子 php Excel文件导入 Spreadsheet_Excel_Reader
- iOS程序设计心得总结(三)应用层设计
- swift实现提示框第三方库:MBProgressHUD
- 希尔排序
- Three.js 添加阴影
- (一)Liferay-可配置portlet
- python学习记录--元组
- 洛谷 P1056 排座椅
- Python学习(三)——map和reduce函数
- linux驱动之--fops的关联
- OAuth2授权原理
- HOW--如何评估线程池线程的个数(79)
- HDU 1016 Prime Ring Problem (dfs)