白泽图

  • 文章
    • Unity渲染
    • Unity项目开发
    • 工具
    • 数学
    • 算法
    • 网站搭建
    • 网络&操作系统
Unity渲染
Unity渲染

Lambert光照模型与半Lambert光照模型

本文总结几个常用光照模型的原理,并用Unity基于原理写出对应的Shader进行验证 原理参考资料: 现代计算机图形学入门-闫令琪 第7讲 (说明图片来源该课件截图) 什么是光照模型? 图形学中为了模拟现实生活中物体表面反射光而形成明暗变化,引入了光照计算公式来进行处理,所谓模型可以理解为对不同光照公式的应用方案 Lambert (兰伯特)光照模型 Lambert 光照模型主要模拟的是物体对光线漫反射形成的效果 如图,在漫反射现象中,光线照射到物体表面的某一个点的时候,反射光会被发散到四面八方,…

2020-12-07 0条评论 2845点热度 0人点赞 蒋程 阅读全文
Unity渲染

施密特正交化

研究施密特正交化起因是图形学中构建BTN切线空间(当模型顶点不包含切线信息的情况)变换切线空间法线贴图中的法线到世界空间的需求的最后一步需要将BTN进行正交化,得到真正意义的BTN空间 从数学角度看 设两个n维的向量 x=(x1,x2,...,xn) , y=(y1,y2,...,yn) 则有: \(\vec{x}\cdot \vec{y}=[x,y]=x_{1}y_{1}+x_{2}y_{2}+,...,+x_{n}y_{n}\)   ([x,y]是内积的写法,其实和点乘是…

2020-12-03 0条评论 1168点热度 1人点赞 蒋程 阅读全文
Unity渲染

罗德里格斯(Rodrigues)公式推导

作用:可以使三维空间中的任意向量s绕任意方向a,旋转θ度,得到结果向量srot (图中a,b,c都是单位向量,且相互垂直) \(R\times S= S_{rot}\)  (R就是公式所表达的旋转矩阵,S代表向量s的列矩阵写法) 公式推导过程: (也就是求旋转矩阵R过程) 1.通过向量s与a可得s的分量s1(投影)与s2(垂直于a) \(s1 = (s\cdot a)\cdot a\) \(s2= s - s1\) \(\hat{a} = \frac{s1}{\left \| s1 \right…

2020-12-01 0条评论 2365点热度 1人点赞 蒋程 阅读全文
Unity渲染

空间变换

空间变换是图形学的基础,也是必须掌握的知识点,个人总结一下其实分为以下几点:(纯属个人理解) 1.什么是空间,为什么图形学要用到那么多空间,为什么不能在一个空间下完成? 其实所谓的空间其实就是由一个原点加三个相互垂直的向量组成的坐标系,在图形学里用到很多空间概念,比如模型空间,世界空间,视图空间,UV空间,切线空间等等,之所以用到如此多的空间概念归根结底只有一个原因就是在不同阶段的关注点不同,举个例子:比如在模型空间,美术同学在制作一个模型的时候不会关心这个模型在世界空间下与其他模型的位置关系,也不会关心这个模型被…

2020-12-01 0条评论 1594点热度 0人点赞 蒋程 阅读全文
Unity渲染

图形学基础-向量

向量有两个属性  1是长度  2是方向 向量长度(模长) 记作: \(\left \| \vec{a} \right \|=\sqrt{x^{2}+y^{2}+z^{2}}\) 模长为1的向量为单位向量 记作: \(\hat{a}\) 向量的运算 1.相向相加 下图分别为: 平行四边形法   与  三角行法 2.向量相减 向量相减与相加互逆,已知红色 \(\vec{c}\)  和 \(\vec{a}\) 或…

2020-11-24 0条评论 1613点热度 0人点赞 蒋程 阅读全文
Unity渲染

贝塞尔曲线与伯恩斯坦多项式

做U3D的时候,我们经常使用贝塞尔曲线,比如我们将一个元素从左边移动到右边,但是我们又不想让它匀速的移动,因为那样看上去会很死板,这个时候我们就可以使用一个事先调整好的贝塞尔曲线来表示速度的变化,或者我们想让一个元素按一个特定的曲线轨迹移动,我们也会用到它,在图形学中,贝塞尔曲线也是学习其他复杂曲线以及曲面的基础,所以有必要搞懂原理 我们先从二阶贝塞尔曲线分析:   上图中有三个顶点,分别是P0,P1,P2, 我们通过这三个顶点可以获得一条唯一的贝塞尔曲线,该贝塞尔曲线从P0开始,到P1结束 现…

2020-11-13 0条评论 2577点热度 1人点赞 蒋程 阅读全文
123
分类
  • Unity渲染 / 26篇
  • Unity项目开发 / 41篇
  • 工具 / 20篇
  • 数学 / 2篇
  • 算法 / 1篇
  • 网站搭建 / 4篇
  • 网络&操作系统 / 5篇
最新 热点 随机
最新 热点 随机
在Unity中通过反射获取SerializedProperty的值 Unity Hierarchy与Scene窗口的操作限制 常用Gizmos图形封装 使用命令行调用unity案例模板(支持update) vscode安装chatgpt 判断TimelineAsset是否被修改
CMD 查文件MD5、SHA1、SHA256指令 vscode安装chatgpt byte[]类型在Lua中的使用注意事项 为Unity扩展基本几何体-圆锥 Lambert光照模型与半Lambert光照模型 关于mac下开发windows程序的方法

COPYRIGHT © 2023 白泽图. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

登录
注册|忘记密码?