当前位置: 首页 > article >正文

Blender进阶:着色器节点

11 着色器节点

11.1着色器

着色器Shader,负责给物体表面着色。

综合以下参数:

  • -基础色
  • -金属度、粗超度、透明度
  • -法向
  • -入射光颜色、强度、角度。。

着色器本质上是一段程序、算法,即着色器编程。

在节点编辑器中,支持算法的可视化呈现。

其中,一个节点,即为一个函数/功能。

11.2 着色点

着色点Shading Point,表面上的一个点

类似于像素点。

在着色时,要为面上的每个点着色。

着色点,是接下来要研究的目标。

  • -该点的世界坐标
  • -该点的局部坐标
  • -该点的生成坐标
  • -该点的UV坐标
  • -该点的法向
  • -该点的其他属性。。

11.3 着色点坐标

着色点的坐标,有很多种算法。

  • -世界坐标
  • -局部坐标
  • -UV坐标
  • -生成坐标
  • -屏幕坐标。。

UV坐标

通过插值算法,可以求得表面任意一点的UV坐标

比如,一个面,有4个顶点。4个顶点的UV已知。

11.4 自定义着色流程

着色流程:

  • 着色点
  • 着色点UV坐标
  • 取得UV中 的x值,此值介于【0,1】
  • 将X值转成一个颜色
  • 颜色作为基础色,完成着色。

每一个着色点,都执行一遍这套流程。最终完成整个面的着色。

在着色时,每个点的颜色根据UV坐标计算得到。


http://www.kler.cn/a/377323.html

相关文章:

  • 【前端】JSX 中的 Fragments 详解
  • 蓝桥杯真题——三角回文数(C语言)
  • C语言心型代码解析
  • QStackedWidget使用实例
  • C++ | Leetcode C++题解之第540题有序数组中的单一元素
  • 蓬勃发展:移动开发——关于软件开发你需要知道些什么
  • 02- 模块化编程-002 DS1302数码显示时间与日期
  • 【AI开源项目】FastGPT- 快速部署FastGPT以及使用知识库的两种方式!
  • 探索无线网IP地址:定义、修改方法及实践指南
  • 搭建Apache web服务器实例
  • 「C/C++」C++11 之<thread>多线程编程
  • 二、基础语法
  • Java实战项目-基于微信小程序的养老院管理系统
  • 【读书笔记/深入理解K8S】集群网络
  • 超越百万年薪--应届毕业生程序员Ocaml职位235万年薪
  • Java是如何解决并发问题的?
  • 109. 工厂光源(环境贴图和环境光)
  • Maven(23)如何使用Maven进行集成测试?
  • 使用 Nuxt 快速初始化 shadcn-vue 项目
  • 海滨学院班级回忆录:技术与设计的融合
  • Windows消息列表
  • Postman:高效的API测试工具
  • C语言:初识入门篇
  • SpringBoot微服务Feign抽取公共模块
  • 基于图论的时间序列数据平稳性与连通性分析:利用图形、数学和 Python 揭示时间序列数据中的隐藏模式
  • [MySQL#11] 索引底层(2) | B+树 | 索引的CURD | 全文索引