Cesium学习_-着色器

着色器GLSL

CesiumJS PrimitiveAPI 高级着色入门 - 从参数化几何与 Fabric 材质到着色器 - 下篇 - 知乎

明确一个定义,在 Primitive API 中应用着色器,实际上是给 Appearancevertex- ShaderSourcefragmentShaderSource Material 中的 fabric.source 设置着色器代码,它们所能控制的层级不太一样。但是他们的共同目的都是为了 Geometry 服务的,它们会随着 CesiumJS 的每帧 update 过程, 创建 ShaderProgram,创建 DrawCommand,最终去到 WebGL 的底层渲染中

Cesium图元(三角形)着色

Cesium中的三角形着色可以通过以下步骤实现:

  1. 创建三角形几何体:使用Cesium提供的几何体创建函数,如Cesium.Geometry.fromPositions(),传入三个顶点的位置信息创建一个三角形几何体。
  2. 创建顶点属性:使用Cesium.VertexFormat对象定义顶点属性,包括位置、法线、纹理坐标、颜色等。
  3. 创建顶点数组:根据顶点属性的定义,创建一个包含顶点数据的数组,每个顶点的数据按照属性的顺序排列。
  4. 创建渲染实例:使用Cesium.Primitive对象创建一个渲染实例,将几何体和顶点数组传入。
  5. 设置着色器:使用Cesium.ShaderSource对象定义顶点着色器和片元着色器的代码,可以在着色器中实现三角形的着色逻辑。
  6. 应用着色器:将着色器代码应用到渲染实例中,通过Cesium.Material对象设置着色器的属性,如颜色、纹理等。
  7. 渲染三角形:将渲染实例添加到Cesium的场景中,通过场景的渲染循环将三角形绘制到屏幕上。

https://www.cnblogs.com/wanghui2011/articles/11301622.html

https://www.cnblogs.com/onsummer/p/14212009.html

https://blog.51cto.com/u_15080020/4200536

相关推荐
~无忧花开~22 分钟前
JavaScript学习笔记(二十八):JavaScript性能优化全攻略
开发语言·前端·javascript·笔记·学习·性能优化·js
机器学习之心23 分钟前
PINN物理信息神经网络风电功率预测!引入物理先验知识嵌入学习的风电功率预测新范式!Matlab实现
神经网络·学习·matlab·风电功率预测·物理信息神经网络
HalvmånEver1 小时前
红黑树实现与原理剖析(上篇):核心规则与插入平衡逻辑
数据结构·c++·学习·算法·红黑树
BreezeJuvenile1 小时前
外设模块学习(5)——DS18B20温度传感器(STM32)
stm32·嵌入式硬件·学习·温度传感器·ds18b20
cimeo1 小时前
【C学习】13-数组使用与运算
学习·c#
一只小风华~2 小时前
学习笔记:Vue Router 中的链接匹配机制与样式控制
前端·javascript·vue.js·笔记·学习·ecmascript
月临水4 小时前
Redis 学习笔记(二)
redis·笔记·学习
Nan_Shu_6144 小时前
学习SpringBoot
java·spring boot·后端·学习·spring
●VON4 小时前
重生之我在大学自学鸿蒙开发第二天-《MVVM模式》
学习·华为·harmonyos
你真的可爱呀5 小时前
uniapp学习【vue3在uniapp中语法,使用element,使用uView UI】
学习·uni-app