位置: IT常识 - 正文

Three.js教程:材质效果(three.js 入门)

编辑:rootadmin
Three.js教程:材质效果

推荐整理分享Three.js教程:材质效果(three.js 入门),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:three.js菜鸟教程,three. js,three. js,three.js glb,three.js 教程,three.js中文教程,three. js,three.js入门指南,内容如对您有帮助,希望把文章链接给更多的朋友!

推荐:将NSDT场景编辑器加入你3D工具链

其他工具系列:NSDT简石数字孪生

材质效果

前面案例中几何体对应网格模型材质只是设置了一个颜色,实际渲染的时候往往会设置其他的参数,比如实现玻璃效果要设置材质透明度,一些光亮的表面要添加高光效果。

半透明效果Three.js教程:材质效果(three.js 入门)

更改场景中的球体材质对象构造函数THREE.MeshLambertMaterial()的参数,添加opacity和transparent属性,opacity的值是0~1之间,transparent表示是否开启透明度效果, 默认是false表示透明度设置不起作用,值设置为true,网格模型就会呈现透明的效果,使用下面的代码替换原来的球体网格模型的材质, 刷新浏览器,通过鼠标旋转操作场景,可以看到半透明的球体和立方体颜色叠加融合的效果。

var sphereMaterial=new THREE.MeshLambertMaterial({ color:0xff0000, opacity:0.7, transparent:true});//材质对象

材质对象的一些属性可以在构造函数参数中设置,也可以访问材质对象的属性设置。

material.opacity = 0.5 ;material.transparent = true ;材质常见属性材质属性简介color材质颜色,比如蓝色0x0000ffwireframe将几何图形渲染为线框。 默认值为falseopacity透明度设置,0表示完全透明,1表示完全不透明transparent是否开启透明,默认false添加高光效果

直接使用下面的代码替换上面的透明度材质即可,刷新浏览器可以看到球体表面的高光效果。

var sphereMaterial=new THREE.MeshPhongMaterial({ color:0x0000ff, specular:0x4488ee, shininess:12});//材质对象

处在光照条件下的物体表面会发生光的反射现象,不同的表面粗糙度不同,宏观上来看对光的综合反射效果,可以使用两个反射模型来概括,一个是漫反射,一个是镜面反射, 使用渲染软件或绘画的时候都会提到一个高光的概念,其实说的就是物理光学中镜面反射产生的局部高亮效果。实际生活中的物体都是镜面反射和漫反射同时存在,只是哪个占得比例大而已, 比如树皮的表面更多以漫反射为主基本没有体现出镜面反射,比如一辆轿车的外表面在阳光下你会看到局部高亮的效果,这很简单汽车表面经过抛光等表面处理粗糙度非常低, 镜面反射效果明显,对于three.js而言漫反射、镜面反射分别对应两个构造函数MeshLambertMaterial()、MeshPhongMaterial(),通过three.js引擎你可以很容易实现这些光照模型,不需要自己再使用原生WebGL实现,更多关于光照模型的知识可以参考文章《WebGL_course光照渲染立方体》或计算机图形学的相关书籍。

前面案例都是通过构造函数MeshLambertMaterial()实现漫反射进行渲染,高光效果要通过构造函数MeshPhongMaterial()模拟镜面反射实现,属性specular表示球体网格模型的高光颜色,改颜色的RGB值会与光照颜色的RGB分量相乘, shininess属性可以理解为光照强度的系数,初学的的时候这些细节如果不清楚,不用深究,每个人的基础不同,理解问题的深度和角度不同,比如高光,学习过计算机图形学的会联想到镜面反射模型和物理光学, 从事过与美术相关工作,都知道需要的时候会给一个物体添加高光,视觉效果更加高亮,因此对于构造函数MeshPhongMaterial()的参数设置不太清除也没关系,对于零基础的读者本节课的要求就是有个简单印象就可以, 站在黑箱外面理解黑箱;对于有WebGL基础的,可以思考three.js引擎构造函数实际封装了哪些WebGL API和图形学算法,站在黑箱里面理解黑箱,如果是你你会怎么封装开发一个三维引擎,这样你可以从底层理解上层的问题, 保证学习的连贯性;如果你使用过其它的三维建模渲染软件,那就使用three.js这个黑箱类比一个你熟悉的黑箱,通过类比降低学习难度,比如你可以打开3dmax软件设置一个材质的高光,体验下视觉效果。

材质类型

threejs提供了很多常用的材质效果,这些效果本质上都是对WebGL着色器的封装,对于开发者来说直接使用就可以,这里不再做过多介绍,大家现有一个印象即可。

材质类型功能MeshBasicMaterial基础网格材质,不受光照影响的材质MeshLambertMaterialLambert网格材质,与光照有反应,漫反射MeshPhongMaterial高光Phong材质,与光照有反应MeshStandardMaterialPBR物理材质,相比较高光Phong材质可以更好的模拟金属、玻璃等效果

3D建模学习工作室

本文链接地址:https://www.jiuchutong.com/zhishi/300832.html 转载请保留说明!

上一篇:React脚手架工具创建项目的详细介绍(react脚手架搭建项目)

下一篇:vue实现动态路由添加(简单无废话版本)(vue动态路由是什么)

  • 怎么用蓝牙耳机连接电脑(电脑怎么用蓝牙耳机)

    怎么用蓝牙耳机连接电脑(电脑怎么用蓝牙耳机)

  • 无损音乐和普通音乐有什么区别(无损音乐和普通音乐在车上播放有什么区别)

    无损音乐和普通音乐有什么区别(无损音乐和普通音乐在车上播放有什么区别)

  • ios13如何隐藏运营商(ios13.2怎么隐藏app)

    ios13如何隐藏运营商(ios13.2怎么隐藏app)

  • 华为荣耀8x手机多大尺寸(华为荣耀8x手机u盘在哪里打开)

    华为荣耀8x手机多大尺寸(华为荣耀8x手机u盘在哪里打开)

  • outlook无法打开文件夹集合(outlook无法打开附件)

    outlook无法打开文件夹集合(outlook无法打开附件)

  • 苹果怎么让电池值恢复到100(苹果怎么让电池健康掉的快)

    苹果怎么让电池值恢复到100(苹果怎么让电池健康掉的快)

  • 微信存在违规行为什么意思(微信存在违规行为封多久)

    微信存在违规行为什么意思(微信存在违规行为封多久)

  • ipad屏幕录制储存失败怎么办(ipad录屏存储录制失败怎么办)

    ipad屏幕录制储存失败怎么办(ipad录屏存储录制失败怎么办)

  • 关闭共同关注功能是什么意思(什么叫关闭共同关注功能)

    关闭共同关注功能是什么意思(什么叫关闭共同关注功能)

  • 苹果手机不受控制乱点屏怎么办(苹果手机不受控制怎么办)

    苹果手机不受控制乱点屏怎么办(苹果手机不受控制怎么办)

  • 苹果xs和xsmax外观区别(苹果xs和xsmax外放音效区别)

    苹果xs和xsmax外观区别(苹果xs和xsmax外放音效区别)

  • 加密狗驱动程序是什么(加密狗驱动程序下载)

    加密狗驱动程序是什么(加密狗驱动程序下载)

  • ppt可以竖版吗(ppt可以用竖版吗)

    ppt可以竖版吗(ppt可以用竖版吗)

  • vivo手机上面出现个HD是怎么回事(Vivo手机上面出现上下)

    vivo手机上面出现个HD是怎么回事(Vivo手机上面出现上下)

  • 华为手机plus10有nfc吗(华为plus10是5g吗)

    华为手机plus10有nfc吗(华为plus10是5g吗)

  • ibm怎么进去重装系统(ibm怎么进去重装系统界面)

    ibm怎么进去重装系统(ibm怎么进去重装系统界面)

  • 抖音抢镜怎么放大(抖音抢镜在哪里抢镜怎么缩小)

    抖音抢镜怎么放大(抖音抢镜在哪里抢镜怎么缩小)

  • oppo手机有小爱同学嘛(oppo手机a1)

    oppo手机有小爱同学嘛(oppo手机a1)

  • ie浏览器在电脑上哪找(ie浏览器在电脑哪里)

    ie浏览器在电脑上哪找(ie浏览器在电脑哪里)

  • oppok3和oppor17的区别(oppor17跟k3配置对比)

    oppok3和oppor17的区别(oppor17跟k3配置对比)

  • 小度的功能(小度的功能与使用方法视频)

    小度的功能(小度的功能与使用方法视频)

  • 手机云端在哪里(手机云端在哪里能找到vivo)

    手机云端在哪里(手机云端在哪里能找到vivo)

  • Linux下快速安装部署远程连接软件SSH的简明教程(linux如何安装)

    Linux下快速安装部署远程连接软件SSH的简明教程(linux如何安装)

  • win10Msdn原版激活秘钥推荐 附激活工具(win10版本激活码)

    win10Msdn原版激活秘钥推荐 附激活工具(win10版本激活码)

  • 企业名称税号
  • 一般纳税人和小规模纳税人哪个合适
  • 电子承兑汇票兑现
  • 金税四期影响企业贷款吗
  • 网吧是否征收文物保护费
  • 应收暂估账务处理
  • 固定资产出售账户处理
  • 出售库存的原材料表格
  • 收到政府土地收回的短信
  • 收到三代手续费返还
  • 收到客户用房抵货款怎么办
  • 增值税专用发票可以开电子发票吗
  • 挂靠人员帮外单位人员缴纳社保如何做账
  • 税务局退税收入多久到账
  • 房产税税率和应纳税额
  • 非征期不能抄报
  • 哪些项目可以不报建
  • 商票背书需要对方开发票吗
  • 网络发票开具
  • 超市购销和联营有什么区别
  • 第三方检测公司招聘信息
  • qconsvc.exe - qconsvc是什么进程 有什么作用
  • 应收账款转让分录
  • 员工的餐费补助怎么算
  • 公司logo设计费是业务宣传费吗
  • 资产减值损失在哪个表
  • php数据库语句
  • 营业外收入账户性质
  • PHP:mcrypt_generic()的用法_Mcrypt函数
  • php rar
  • 资产负债表项目填列的依据是
  • 委托贷款业务是资产业务吗
  • uniapp动态修改pages.json
  • uniapp开发微信小程序源代码
  • yolov5配置
  • 租用办公设备
  • vue面试题视频
  • 前端作业做一个网站
  • 报销人和收款人不一致
  • Using Visual Leak Detector
  • 出口退税企业待遇怎么样
  • 付报刊费计入什么科目
  • 售后租回交易形式是什么
  • 金税盘无法登录410506怎么解决
  • 增值税发票认证在哪里
  • 财报层次和认定层次
  • 人力资源公司开票税目
  • 企业注销其他应收款有数,要交税吗?
  • 固定资产清理的账务处理
  • 免税收入与不征收的区别
  • 个体工商户免费开票额度
  • 增值税的账务处理怎么做
  • 计提坏账准备金是什么意思
  • 母子公司间借款利息免增值税
  • 企业计提增值税怎么写
  • 费用化是计入当期损益吗
  • 小额零星物资
  • 法人在公司账户取钱要纳税么
  • 电汇凭证是什么会计科目
  • 营改增后混凝土税率
  • win7传真和扫描
  • windows帐户登录
  • 如何在windows中添加字体
  • win7休眠模式在哪
  • centos简介
  • 安装yum的命令
  • win10系统组策略怎么打开
  • win8系统出现闪屏
  • win7系统安装谷歌浏览器
  • nodejs 插件开发
  • bat关闭bat
  • cocos开发游戏
  • js调用wsdl接口
  • vue 瀑布流
  • shell遍历sql查询结果
  • jqueryui
  • jquery操作表单
  • 个体税务怎么查询
  • 医院等级怎么查询系统
  • 国地税联合办公
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设