threejs渲染器剔除模式
渲染器剔除模式
渲染器可以设置成舍弃某些面,如前面、背面等,在【WebGLRenderer Constants】中对此有说明。默认情况下,是剔除掉背面,也就是背对着相机的面。下面看看例子:
首先创建一个正方形,给每个面不同颜色:
let geometry = new THREE.BoxGeometry(100,100,100);let materials = [new THREE.MeshBasicMaterial({color:0xff0000}),new THREE.MeshBasicMaterial({color:0x0ff00}),new THREE.MeshBasicMaterial({color:0x00ff00}),new THREE.MeshBasicMaterial({color:0x000ff0}),new THREE.MeshBasicMaterial({color:0x0000ff}),new THREE.MeshBasicMaterial({color:0x000000})];let material = new THREE.MultiMaterial(materials);mesh = new THREE.Mesh(geometry,material);mesh.rotation.x = THREE.Math.degToRad(45);scene.add(mesh);
其效果如下:
然后我们设置剔除前面:
renderer.setFaceCulling(THREE.CullFaceFront,THREE.FrontFaceDirectionCW);
这里有两个参数,第一个指定剔除模式,第二个指定顺时针还是逆时针,都可以在【WebGLRenderer Constants】找到。设置后效果变成了:
面向相机的面不见了,这在演示一个模型内部时是很有用的。【例子】
threejs渲染器剔除模式相关推荐
- threejs相机和渲染器
渲染器 渲染器其实代表的是canvas标签. 渲染器的类型 WebGLRender 使用WebGL来渲染图形,速度较快,但是有些机器不支持WebGL. CanvasRender 使用canvas2d来 ...
- Threejs在vue中使用(场景、相机、渲染器、gltf模型添加、环境贴图等)
前言 Three.js ( Javascript 3D library ) 是基于原生WebGL封装运行的三维引擎,WebGL可以看成是浏览器给我们提供的接口,在JavaScript中可以直接用这些A ...
- 设计自己的软渲染器6-纹理映射与背面剔除
纹理映射 纹理映射说白了就是将一幅图像贴在我们所要贴的物体的表面. 为每个多边形顶点附一个纹理坐标,然后再纹理素材上取样贴在一个多边形上,然后达到所要的视觉效果. 如下为一个正方体箱子每个面都贴上纹理 ...
- ThreeJs场景、相机、渲染器、添加obj模型和删除模型
相机 效果图 1.安装threeJs npm install three 2.安装加载obj和mtl文件的插件 npm i --save three-obj-mtl-loader 3.安装轨道控件插件 ...
- SoftRendererRenderPipeline(从迷你光栅化软渲染器的实现看渲染流水线)
简介 这是可能一篇没有什么实际作用的文章,因为没有任何shader效果实现,整篇文章到最后,我只实现了一个旋转的立方体(o(╯□╰)o,好弱),和游戏引擎渲染的万紫千红的3D世界显得有很大落差,仿佛一 ...
- Unity API-----Renderer(渲染器)
Unity API-----Renderer(渲染器) 官方文档阅读记录 版本 : 2019.3 官方文档传送门 Renderer是UnityEngine命名空间下的一个类. Renderer继承于C ...
- blender Eevee渲染器
文章目录 简介. 采样. 环境光遮蔽. 辉光. 景深. 次表面散射. 屏幕空间反射. 间接光照明. 阴影. 体积. 未讲到的选项卡可以在cycles渲染器中找到. Eevee渲染器的局限性. 简介. ...
- 用C# Bitmap作为画布写个3D软渲染器
文章目录 Recoards 记录 图元光栅 Bitmap.SetPixel优化成LockBits/UnlockBits指针操作 Blend Projection 投影 Wireframe 线框 Sci ...
- 渲染测试软件 d15,D5 Render(D5 渲染器)1.7.0 正式版发布 | 一款 RTX 实时光线追踪可视化实时渲染引擎,而且是国产软件!...
长期的 Beta版公测后,D5 渲染器终于正式对外发布!最新的正式版是1.7.0.正式版将由免费版+付费增值服务这样的方式进行对外销售.另外最新还新增了社区免费版(社区免费版功能上有一点限制:无法渲染 ...
最新文章
- Visual Studio 2010或者2012上安装VASSISTX
- 谋定重整衍生新360行-李玉庭:协同电商经信研究生态系统
- 用户体验五要素_Kwai竞品分析用户体验五要素
- 160 - 7 aLoNg3x.2
- 世界手机号码格式_脑炎康复之旅——世界脑炎日病友征文
- 12-Mybatis 缓存
- “鸡肋”的百度,掉队了 BAT? | 畅言
- 10-12Linux流编程的一些知识点
- 怎样在matlab中使用多项式,MATLAB中的多项式运算
- 查询瀚高数据库的创建时间
- QCY T3 蓝牙耳机连接电脑 声音断续卡顿
- Python获取拉勾网招聘信息(可视化展示)
- 东子破解的quartz7月2号找到的很好这个
- 【CTF练习平台】BugkuCTF部分misc writeup
- gnuplot绘制xxx.plt文件生成图形
- java+mysql基于SSM的班级管理系统#毕业设计
- Flutter实践——AndroidStudio环境初体验
- 【Java】三款经典游戏 java版本(开源)提升代码水平
- 数据分析常用分析方法
- SRRC认证是什么——无线电发射设备型号核准证
热门文章
- springboot : Failed to decode downloaded font 和 OTS parsing error
- DBeaver连接达梦|虚谷|人大金仓等国产数据库
- eclipse 安装 lombok插件
- 为何setRequestMethod(GET)不生效
- 关于HttpUrlConnection网络请求之返回结果的中文乱码解决方法
- 充电桩系统php源码,源码 充电桩程序设计 - 下载 - 搜珍网
- java kafka 集群消费_kafka集群简单生产者消费者实例
- numpy将所有数据变为0和1_Numpy库学习
- Storage 使用
- 2019CCPC湖南全国邀请赛-Chika and Friendly Pairs- 莫队+树状数组+离散化