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

相关推荐
彧azz6 小时前
图的存储结构详解:邻接矩阵的原理、实现与应用
开发语言·数据结构·学习·php
平头哥AI6 小时前
Day 22 _ 包装错误别丢链_%w、errors.Is 与 errors.As
android·服务器·学习·golang·go
一阵寒风7 小时前
CAM智能化助力PCB 智能制造-培训体系第六章.项目开发学习
学习·制造
传奇开心果编程7 小时前
【Xilem 0.4 基础语法学与练】第15课:状态管理与 memoize 性能优化
学习·rust·前端框架
具身AGI7 小时前
视频即仿真,物理AI 人类学习路线 的下一步
人工智能·学习
wuyk5558 小时前
从零吃透 MQTT 通信|第 8 章 FreeRTOS 多任务架构下 MQTT 工程架构,任务拆分、队列解耦、临界区保护
c语言·开发语言·stm32·学习·架构
陈年老古董9 小时前
PyTorch食物图像分类实战:从数据集制作到CNN模型训练全流程详解
pytorch·深度学习·学习·机器学习·分类·cnn
明志数科9 小时前
从300克Ego头环看第一人称数据采集趋势:设备轻量化之后,场景端壁垒在哪
数码相机·学习
笨鸟先飞的橘猫9 小时前
系统设计第十七天决策卡
学习·游戏
Sunshing1510 小时前
Lyapunov方程系统本身稳定性判定与镇定性判定
笔记·学习