位置: 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动态路由是什么)

  • 怎么进入安全模式电脑win10(怎么进入安全模式手机)

    怎么进入安全模式电脑win10(怎么进入安全模式手机)

  • 华为手机显示黑白色怎么变回彩色的(华为手机显示黑白屏怎么变回彩色)

    华为手机显示黑白色怎么变回彩色的(华为手机显示黑白屏怎么变回彩色)

  • p40发烫怎么解决(p40p发热严重)

    p40发烫怎么解决(p40p发热严重)

  • 电脑右击没有属性怎么办(电脑右击没有属性只有个性化)

    电脑右击没有属性怎么办(电脑右击没有属性只有个性化)

  • 32微机中的32指的是什么(32位微机中32是什么)

    32微机中的32指的是什么(32位微机中32是什么)

  • 苹果手表3和4和5的区别(苹果手表3跟4)

    苹果手表3和4和5的区别(苹果手表3跟4)

  • 苹果x防水么(苹果x防水到什么程度)

    苹果x防水么(苹果x防水到什么程度)

  • ios系统更新会越来越卡吗(苹果越更新系统越大嘛)

    ios系统更新会越来越卡吗(苹果越更新系统越大嘛)

  • 为啥抖音注销要等7天(为啥抖音注销要手机号)

    为啥抖音注销要等7天(为啥抖音注销要手机号)

  • watch4听不了微信语音(applewatch怎么听不了微信语音)

    watch4听不了微信语音(applewatch怎么听不了微信语音)

  • 手机正面朝地摔了黑屏(手机正面朝上摔下去会坏吗)

    手机正面朝地摔了黑屏(手机正面朝上摔下去会坏吗)

  • 什么叫系统持续扩容中(系统持续与周期安排训练原则的训练学要点有)

    什么叫系统持续扩容中(系统持续与周期安排训练原则的训练学要点有)

  • 怎样增加网站流量(如何增加网站的浏览量及成交量)

    怎样增加网站流量(如何增加网站的浏览量及成交量)

  • soul怎么看关注(soul怎么看关注的人)

    soul怎么看关注(soul怎么看关注的人)

  • qq音乐专属铭牌是什么(qq音乐专属铭牌 播放器怎么关)

    qq音乐专属铭牌是什么(qq音乐专属铭牌 播放器怎么关)

  • 苹果11怎么设置天气预报(苹果11怎么设置悬浮球)

    苹果11怎么设置天气预报(苹果11怎么设置悬浮球)

  • vivox9互传在哪里打开(vivo x9互传在哪)

    vivox9互传在哪里打开(vivo x9互传在哪)

  • 淘宝五皇冠可靠吗(淘宝五皇冠多少销量)

    淘宝五皇冠可靠吗(淘宝五皇冠多少销量)

  • 取消抢票会全额退款吗(取消抢票会怎么样)

    取消抢票会全额退款吗(取消抢票会怎么样)

  • 快手删掉的作品怎么恢复(快手删掉的作品别人还能看到吗)

    快手删掉的作品怎么恢复(快手删掉的作品别人还能看到吗)

  • 抖音关注太快多久解除(抖音关注太快多久解除限制)

    抖音关注太快多久解除(抖音关注太快多久解除限制)

  • qq空白名复制(qq空白名字复制粘)

    qq空白名复制(qq空白名字复制粘)

  • vue3 antd项目实战——table表格的自定义筛选【纯前端filters过滤、自定义筛选table表格数据】(vue antdesign)

    vue3 antd项目实战——table表格的自定义筛选【纯前端filters过滤、自定义筛选table表格数据】(vue antdesign)

  • 前端技术搭建井字游戏(内含源码)(前端cli搭建)

    前端技术搭建井字游戏(内含源码)(前端cli搭建)

  • 免抵退税办法不得抵扣的进项税额的会计处理
  • 证书挂靠要申报个人所得税年度汇算吗
  • 取得的高速公路发票可以抵扣吗
  • 金税四期主要监管什么
  • 跨年度退货可以开红字发票吗
  • 三方协议缴款账户状态错
  • 报废固定资产产生的净损益属于利得吗
  • 建筑劳务属于什么税收分类
  • 防暑降温用品计算方法
  • 出口退税逾期申报,需申报出口货物收汇情况表
  • 利润表中第3栏营业税金及附加等于什么
  • 增值税专用发票和普通发票的区别
  • 职工薪酬会计准则
  • 未投入使用房屋怎么处理
  • 核销贷款收回会计分录
  • 汇算清缴抵税和退税
  • 领用包装物会计处理
  • 仲裁费用计入什么会计科目
  • 员工就诊发票可以报销吗
  • 如何计算纳税调整增加额
  • 收派服务费入什么科目
  • 混业经营试点
  • 月收入不超10万减免 具体分销售额吗
  • 免税进口种子要符合哪些条件?
  • 1697509966
  • 如何查企业是否上市公司
  • php变量设置
  • Win11 Build 22449.1000更新里哪些内容?Win11 Build 22449更新介绍与安装方法
  • macos big sur怎么恢复出厂设置
  • php curlfile
  • 微信公众号实名认证怎么更改
  • php实用的案例
  • php批量发送邮件
  • 前端 php
  • yolov5训练参数说明
  • 收到捐赠的设备一台
  • 一次补发工资怎么算
  • 企业汇算清缴中,A107070表中的数据是自动跳出来嘛
  • web主要的请求方式有几种
  • spring security功能
  • 加盟代理需要什么手续
  • 支付中介费和物业费比例
  • 研发入库的产品销售出库怎样做账
  • 财政拨款结转和非财政拨款结转区别
  • 固定资产一次性折旧账务处理
  • db2udb
  • 开具红字增值税普通发票
  • 更正申报季度企业所得税
  • 债券发行时发生的承销费、法律费
  • 一次性加速折旧考虑残值吗
  • 独立法人企业关系怎么写
  • 财务挂账应该怎么做账
  • 企业购买商品房作为职工宿舍
  • 分销佣金账务处理流程
  • 城建税教育费附加和地方教育费附加
  • 固定资产正常报废与非正常报废的会计处理基本相同
  • 信用减值损失和公允价值变动的区别
  • 房地产经纪公司排名
  • 递延所得税资产是什么意思
  • 税控盘被锁死
  • 差旅津贴和差旅补贴需要申报个税吗?
  • 招待费可以做成什么科目
  • sql server使用心得
  • win10电脑版微信字体大小怎么设置方法
  • win8系统没有wifi
  • 系统应用没有相机
  • Bullet(Cocos2dx)之凸多面体形状和组合形状
  • js设计模式有什么用
  • document.all.value
  • android:testonly="true"
  • 第一章阎王点卯的小说名字
  • python数据类型总结
  • netbeans12.0安装教程
  • js字段截取
  • 投诉政府平台在哪里投诉
  • 一季度土地市场
  • 南京市国家税务局官网
  • 2022款进口途锐
  • 珠海南湾国际属于香洲哪个街道
  • 收取广告费收入怎么入账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设