皮皮网

【仿聚美优品源码】【10001100变成源码】【弹簧软件源码】datasmith源码

2024-11-23 08:39:27 来源:office源码激活助手

1.(五) Geometries

datasmith源码

(五) Geometries

       本文主要介绍以下内容:

       专栏代码地址: github.com/ue/three....

       本文代码地址: github.com/ue/three....

       在three.js概念里,mesh是由几何体Geometry和材质Material组成的,在源码Mesh.js可以看到之间的关系:

       Mesh = Geometry + Material

       为什么会有Mesh三角网的概念呢?

       首先我们要回顾下图形渲染管线了。

       所以,从上图可以理解:

       Geometry: 就是在准备顶点数据,对应Vertex处理过程; Mesh: 就是仿聚美优品源码对应的Triangle三角面处理过程; Material:对应Fragment片元处理过程,对每个三角面片进行着色、贴图等等处理;

       几何体,就是在准备一堆顶点数据,主要包括顶点数据、颜色数据、UV贴图数据、法向量数据等等;简单的说,几何体就是数据源,如果你对如何通过三角面片拼接成几何体非常了解,完全可以自己组织数据,不幸的10001100变成源码是,这样操作不仅麻烦,而且也是非常困难的事情。所以,three.js内置常用的几何体,供大家直接使用,然后控制Position、Scale、Rotation、弹簧软件源码visible等空间属性,来操控物体。

       Three.js一共有 种内置的图元。

       简单整个例子,了解下使用流程,其他几何体触类旁通,参考three.js官网即可。

       参考代码:

       执行命令:

       运行后,同源码套场景中多一个Line。

       运行后,多出一个三角锥:

       为什么即存在Geometry,又存在BufferGeometry?

       说白了,Geometry更适合于人来理解,自定义的地方比较多,但性能比较低一些;

       BufferGeometry更适合计算机来理解,自定义的源码中国星空地方很少,适合对图形学非常了解的人使用,但是性能很高。

       内置的几何体,都是一些非常基础的模型,可以使用这些基础模型组装成,搭积木的方式,组成非常复杂的场景。

       目前国内,数字产业化搞得如火如荼,各个行业都要数字化,所以数据的来源也是非常复杂的,多种多样的,比如:BIM行业的Revit数据模型、CAD图纸,GIS行业的各种数据要素、倾斜摄影、tiles,可以参考CesiumLab的数据转换这张图。

       最终都会将各行各业的数据进行转换,轻量化,瓦片化等等技术手段,传输给Three.js的BufferGeometry,进行渲染;

       或者将数据通过Datasmith的插件,转换数据转换成Unreal Engine的资产进行渲染。

       后期会针对熟悉的行业数据进行一一分析,探讨应用场景。

       图形学分为三大部分,几何、渲染、动画。