- 博客(16)
- 收藏
- 关注
原创 mac photoshop displayp3在windows上显示偏差
用mac的qq截图发现(与前一篇文章用win的qq截图不写入iCCP块的不同点在于,mac的qq截图会在iCCP写入ICC Profile信息),①和②没有嵌入颜色空间,mac qq上显示的都是p3空间的117, 251, 76浅绿色值(用mac自带的测色计测,默认显示p3空间 的值),只有③才是p3的255绿色。用测色计(我用的utools)发现,和mac一样(除了mac显示的是display-p3色值而windows是sRGB色值以外),左边两张是117, 251, 76,右边一张是0,255,0。
2024-08-20 00:51:32
929
原创 图形 2.3 hlsl常用函数介绍
参考文档:hlsl内部函数[MSDN]注:lit函数的光照计算为blinn-phong模型;faceforward意思是如果ng向量与i(从view position指向shading positon)方向<90°,则对n向量取反,否则不变,但是看文档查资料没找到ng指的是什么意思注:tex1Dgrad()中ddx和ddy参数作用是根据tex1Dlod()一样的原理取出值后还进行判定,该像素点的ddx,ddy大于给定的值才能取出来作业1.写出个人认为最常用的5个函数
2021-08-28 15:23:47
432
原创 图形 2.2 模型与材质基础
参考视频:图形 2.2 模型与材质基础渲染管线与模型基础1.图形渲染管线顶点着色器,几何着色器,片元着色器均是可编程部分,渲染流水线流程在1.1中已有介绍不再赘述2.模型uv展uv就是将一个三维物体每个顶点映射到二维空间(用一张图片存储该二维空间信息)上,三维物体顶点对应的二维空间(横向为u纵向为v范围为0~1的坐标系)中的位置称为纹理坐标(uv坐标),uv坐标对应的点的值(通常用用颜色表示)则用于存储诸如法线,金属度,AO等信息3.模型包含的信息以下是maya导出一个三角形网格化后的正方体(
2021-08-24 22:42:46
358
原创 图形 2.1 色彩空间介绍
参考视频:图形 2.1 色彩空间介绍作业:1.色彩空间的定义用几个属性定义一个坐标来表示颜色的坐标系统,该系统能表示的颜色范围称为色彩空间,一个色彩空间至少满足三个指标:1.色域(三个基色的坐标,以此构成一个三角形)2.gamma(如何对三角形进行区分)3.白点(色域构成的三角形的中心)2.人眼可见光范围是多少400~760nm之间。人眼感受红绿蓝的锥状细胞感知的波长不一,具体如下...
2021-08-24 10:38:03
69
原创 图形 1.4 PC手机图形API介绍
参考视频:图形 1.4 PC手机图形API介绍参考资料:Adreno(维基百科)作业1.说出支持opengl es 3.2的晓龙GPU型号晓龙420及其之后版本2.怎么看待vulkan(因为没用过vulkan所以对vulkan的理解来自于网上资料的统合)vulkan的优势:跨平台(与opengl一样),高性能,api更底层带来高自由度(但与opengl相比学习门槛更高)vulkan未来的流行还得看各大厂商是否愿意积极踩坑,是否能做出市场满意的作品...
2021-08-24 10:17:55
148
原创 图形 1.3 纹理的秘密
图形 1.3 纹理的秘密纹理是什么?宏观角度:一张图片微观角度:一种可供着色器读写的结构化存储方式,可以存储法线,高度等信息纹理的作用1.牺牲几何细节,降低建模工作量2.降低存储空间3.提高读取速度纹理管线模型空间位置->投影函数->纹理映射->纹理坐标->通讯函数->新纹理坐标->纹理采样->纹理值注意:这里投影函数的投影与摄像机的投影不一样,用于展UV阶段使用依赖纹理读取:如果片元着色器不是直接用顶点着色器的数据而是传过来再进行计算会触发依
2021-08-11 17:50:53
188
原创 图形 1.2.3 MVP矩阵运算
参考视频:图形 1.2.3 MVP矩阵运算参考书籍:《unity shader入门精要》MVP矩阵分别是模型(Model)、观察(View)、投影(Projection)矩阵模型矩阵作用:将物体从模型空间→世界空间观察矩阵作用:将物体从世界空间→观察空间投影矩阵作用:将物体从观察空间→裁剪空间2.空间之间的变换矩阵...
2021-08-10 17:32:21
448
原创 图形 1.2.2 矩阵运算
参考视频:图形 1.2.2 矩阵运算线性代数的本质 - 03 - 矩阵与线性变换(这视频非常直观的解释了矩阵和线性变换的意义)作业矩阵的计算方式及几何意义1.矩阵的加法和减法相当于对列空间(把矩阵的每一列当作基底的一个向量构成的空间)的基底进行变换2.矩阵的数乘相当于对列空间的基底进行缩放,计算方式为对矩阵的每一个元素均乘上该数字3.矩阵的乘法·矩阵乘矩阵得到的新矩阵相当于两个变换的合成(矩阵可以被看做一次线性变换,如下图中的矩阵)·矩阵乘向量相当于对向量进行变换得到新向量计算方式(前
2021-08-07 21:02:32
401
原创 图形 1.2.1 向量基础
参考视频:图形 1.2.1 向量基础线性代数的本质 - 01 - 向量究竟是什么?参考书籍:《untiy shader入门精要》向量的定义向量是只有大小和方向,没有位置属性的有向线段标量是只有大小没有方向的向量,在线性代数中和“数字”是一个概念向量的模长向量的模长(大小)由勾股定理得出零向量向量各种计算的几何意义·向量的加减:如果把向量看作一段位移,那么向量的加减相当于位移的合成·向量与标量的乘法和除法:相当于向量的缩放,除标量a相当于相当于乘上a的倒数·向量的归一化:向量除它
2021-08-07 15:26:06
289
原创 unity通用渲染管线(urp)实现逐像素光照
在参阅《shader入门精要》的时候敲了一遍逐顶点光照的代码发现物体呈现紫色(渲染丢失),最后发现此代码在内置渲染管线中正常,但在hdrp/urp中出现问题,最后解决办法是将cg代码用hlsl重写。原cg代码如下:Shader "Custom/DiffuseVertexLevel"{ Properties{ _Diffuse ("Diffuse", Color) = (1, 1, 1, 1) //可在编辑器面板定义材质自身色彩 } SubShader{
2021-02-20 14:49:28
1180
原创 Unity OnEnable() OnDisEnable() Start() Awake() 区别
1.执行顺序Awake()->OnEnabled()->Start()2.Awake()和Start()在gameObject的整个生命周期中只会调用一次。 Awake()在gameObject首次被激活的时候调用,即使脚本组件未启用(如果有绑定父物体,父物体也应该处于激活状态) Start()在脚本组件首次被激活的时候调用(前提是gameObject处于激活的状态,如果有绑定父物体,父物体也应该处于激活状态) OnEnabled()和OnDisEnabled()在脚本组件状态和game
2020-10-25 15:41:40
3454
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人