Shader以及相关的
文章平均质量分 96
MeiGaZaMu
弟中弟中弟中弟中弟
展开
-
Shader学习笔记:BRDF简单概述
这篇文章写于一年多以前的一次课程作业,这次作为一个“存货”给放出来,仅仅只是针对代码和一些要点进行简单叙述,如果想听完整的版本,请搜索毛星云大神的博客或者书籍。关于基本的物理渲染公式,网络上的博客和典籍已经多如牛毛了,这里只是自己在之前整理的结果上传。引言如何对使用计算机图形基础构建出的面进行着色是计算机图形学的基本课题之一,为此,裴祥风提出了Phong氏光照模型,即对于一个表面,其漫反射光照值等于被。这个模型可以很好的描述非金属绝缘体的着色效果,但是对于具有金属性的导体则不能表达。原创 2023-03-13 00:25:48 · 2886 阅读 · 1 评论 -
学习笔记:物理渲染-间接光照
这篇文章写于开题前,离上一篇文章已经过去了快一年了,我感觉这一年收获不大,这篇文章的大部分内容也早就写在了去年的十二月份,这里只是对这篇文章内容的延伸。在上一篇文章中,我们推导出了Cook—Torrence公式,并实现了基本的直接光照,但是对于实时渲染的场景而言,这远远不够,因为场景中的光源情况并不是单一存在的, 有很多地方反射光源过来,本文章对于PRT仅仅介绍与原理,然后蜻蜓点水的将公式列出。而关于实时渲染中的球谐函数近似,IBL的方法都会列出公式以及代码。原创 2022-09-30 19:41:29 · 1201 阅读 · 0 评论 -
Shader学习笔记:投影矩阵及其应用
好久好久没有更新博客了,去年考完研以后直接摆了好几个月,刚刚开始学习又遇到了一些很受挫的事情,之后写了一大堆草稿也该好好总结一下之前做过的东西了,重新写博客当然就从一些理论上的东西开始写才行,这篇博客主要讲述投影矩阵的推导以及投影矩阵的一些简单需求。首先我们假设一个矩阵ProjectionMatrix,它的值都是未知数: 而我们假设相机空间的某一个点的坐标可以表示为:从相机空间到投影空间的工序 对于相机空间的一个点而言,它要转移到投影空间去仅有...原创 2021-12-01 16:42:41 · 3481 阅读 · 2 评论 -
Shader 学习笔记:描边
好久没写博客了,最近在整毕业论文,码的字也比较多,但是博客想起来好久没碰过了。在整毕设的时候,尝试着解决了一些自己很久没有完成的心病,也做了一些效果来玩一玩,这次把这个东西记一下,以后有需求可以随时拿起来用。今天的博客记一下关于后处理的描边方法,说起描边还是比较简答的,在杂记那一篇中,记录了根据模型本身来构建描边的方法, 虽然特别特别水,而且对于模型法线来说要求贼高。在我的毕设中,使用了Mag...原创 2020-04-16 22:36:31 · 1126 阅读 · 0 评论 -
Shader 学习笔记:杂记
这篇博客算是个杂记,写一写关于一些自己老是忘记但有很重要的关于Shader的知识。自己总是感觉基础不牢固,写过的很多东西不求甚解,并且有时候一些语法很难和一些知识点联系起来,一些知识表面上一马平川,实际上都是孤魂野鬼,这样囫囵吞枣迟早要遭重。所以这篇文章我记一下平常很基础重要但是看了之后缺乏归纳的知识点。杂记1:渲染流水线关于渲染流水线,我画了这张图我们在上篇描述深度的博客中就已经...原创 2019-12-15 21:36:26 · 467 阅读 · 0 评论 -
Shader 学习笔记:水面
第四篇,终于写到一些稍微那么一丢丢好看的效果了,虽然和网络上和生活中各种奆奆比差了十万八千里,但是我还是得写(因为文盲也想有春天),这一点文章我写一写水面的效果,水面应该是最基础的Shader应用了,应该算是前面几篇博客的综合应用吧,写一写这两天整的水面,记一下心得。水面的要素:我们生活中看见的水面,我们可以简单分为两个(两张图都是我百度的),基础的水面(左),复杂的水面(右) ...原创 2019-12-09 18:22:23 · 3982 阅读 · 5 评论 -
Shader 学习笔记:模糊
第三篇,话说第三篇隔了很久,因为之前被一些小问题折磨了半天,所以写的比较晚,但是不管咋地好歹解决了,所以接着写这一篇博客。嗯,感觉这篇文章做一些代码保存和小标记的意味更大一些,所以会着重写一下自己在代码中遇见的坑和感悟。调色后处理调色的代码中,比较基础的调色代码无非就是调整屏幕RenderTexture的三个属性:1.亮度:通过调整当前采样得到的颜色的值即可,我们可以对输出颜色左乘一个...原创 2019-12-05 17:03:03 · 868 阅读 · 0 评论 -
Shader 学习笔记:纹理
马不停蹄写第二篇,我觉得第二篇总体应该会比第一篇简单一丢丢,因为第一篇讲了太多的光照的规则了,这些规则上的小坑比较恼人,但是大坑比如光照纹理的采样计算衰减什么的Unity都通过宏定义自动完成了,但是纹理这一篇我感觉重点是几个大坑,比如说切线空间与矩阵空间的转换,还有镜面折射的一些规则和语法。基础纹理基础纹理算是比较简单,我们只需要注意以下几点:1.从顶点着色器VertexData中定义...原创 2019-11-25 17:11:49 · 866 阅读 · 0 评论 -
Shader 学习笔记:光照
Shader以及背后的图形学我一直很感兴趣(比C#要感兴趣),而且《Shader 入门精要》也是我最喜欢的书之一。这篇文章开始写一写Shader,当然并不是作为一个教学的博客,而是当做学习的沉淀(所以不会写Shader语法基础),先从最基础的开始,光照。我们在这篇文章中讲标准光照模型,一般来说标准光照模型中,射入摄像机的光线有以下四个部分:自发光Emissive:描述当给定一个方向时,一个...原创 2019-11-22 16:58:16 · 591 阅读 · 0 评论 -
Mesh网格:如何画个平面
上次球都画了,这次画个平面,平面来说要比球简单一些:uv也给出了,因为都是2D的,所以UV也比较简单using System.Collections;using System.Collections.Generic;using UnityEngine;[ExecuteInEditMode][RequireComponent(typeof(MeshFilter),typeof(M...原创 2019-08-22 13:22:06 · 1172 阅读 · 0 评论 -
Mesh网格:教你如何画个球(没UV)
第二篇博文,不整那些大路货,来整个球对于网格来说,需要的计算每个顶点的位置,面片的链接方式,然后UV的分布,最后是法线。最难的是UV,本篇的球体也没有写出UV的写法(效果有点差)。这是我想了两三天的写法,其实实现得并不好,但是好在比较动态,Shader中计算光照的时候能用得上这个代码,就能看到逐顶点和片元的时候比较好的效果。原理很简单,我们假设一个球体的横向割面和纵向割面一致,那么...原创 2019-08-20 21:14:01 · 1629 阅读 · 5 评论