uniApp使用XR-Frame创建3D场景(4)金属度和粗糙度

上一篇讲解了如何在uniApp中创建xr-frame子组件并创建简单的3D场景。

这一篇我们讲解xr-frame中关于mesh网格材质的金属度和粗糙度的设置。

1.先看源码


<xr-scene render-system="alpha:true" bind:ready="handleReady">
<xr-node visible="{{sec3}}">
    <xr-light type="ambient" color="1 1 1" intensity="1" />
    <xr-light type="directional" rotation="40 70 0" color="1 1 1" intensity="5" />
    <xr-mesh node-id="mesh-sphere" position="-0.4 0 -0.4" scale="0.3 0.3 0.3" geometry="sphere"  uniforms="u_baseColorFactor:0.2 0.4 0.6 1,u_metallicRoughnessValues: 0.7 0"></xr-mesh>
    <xr-mesh node-id="mesh-sphere2" position="0.4 0 0.4" scale="0.3 0.3 0.3" geometry="sphere"  uniforms="u_baseColorFactor:0.2 0.4 0.6 1,u_metallicRoughnessValues: 0 1"></xr-mesh>
 </xr-node>
 <xr-camera id="camera"  clear-color="0 0 0 0" position="1 1 2" target="mesh-sphere" camera-orbit-control/>
</xr-scene> 

其中<xr-scene>表示场景的根元素,每个页面有且只有这一个标签。

<xr-camera>表示场景中的相机,创建相机标签后才能渲染出场景中的模型。

这里我们着重看<xr-mesh>标签中的uniforms属性,

在这个属性中设置u_metallicRoughnessValues: 0 1

这个属性有两个值,前面的值代表材质的金属度,后面的值代表材质的粗糙度。这两个值可以设置为0-1的数值。

2.在开发者工具的模拟器中查看

可以看到模拟器中的两个球体,设置不同的金属度和粗糙度后,其表面的光泽效果是不同的。

这里给大家推荐一个微信小程序 3D模型素材库,这个小程序中的模型都是针对小程序优化后的glb格式文件,体积小,加载快,非常适合小程序使用

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-31 09:56:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-31 09:56:02       101 阅读
  3. 在Django里面运行非项目文件

    2024-03-31 09:56:02       82 阅读
  4. Python语言-面向对象

    2024-03-31 09:56:02       91 阅读

热门阅读

  1. Ecology9 分部(单位)获取示例

    2024-03-31 09:56:02       40 阅读
  2. I/O密集型任务和CPU密集型任务的理解与对比

    2024-03-31 09:56:02       37 阅读
  3. 给网站添加安全措施 -- http -> https

    2024-03-31 09:56:02       41 阅读
  4. vue 透传 Attributes

    2024-03-31 09:56:02       36 阅读
  5. 40个学习网站合集

    2024-03-31 09:56:02       34 阅读
  6. MySql的下载与安装

    2024-03-31 09:56:02       42 阅读
  7. Zookeeper设计的思想

    2024-03-31 09:56:02       41 阅读
  8. pg_rman在恢复服务器上恢复源库的备份

    2024-03-31 09:56:02       31 阅读
  9. js的Number对象和全局对象

    2024-03-31 09:56:02       35 阅读
  10. Spark SQL 数据源

    2024-03-31 09:56:02       41 阅读
  11. 解决tmux中astronvim颜色显示问题

    2024-03-31 09:56:02       37 阅读
  12. Vue PostCSS的使用介绍

    2024-03-31 09:56:02       33 阅读
  13. Dockerfile最佳实践

    2024-03-31 09:56:02       35 阅读
  14. 前端代码规范

    2024-03-31 09:56:02       33 阅读