shader
一只小刺猬
我是一只小刺猬
展开
-
我的shader学习之一
写一个边缘发光shader,我想到如下内容。首先可能是有纹理的,那么我就要在物体的边缘对其颜色做一个修正,这个物体的边缘跟物体应该是无关的,而跟摄像机方向有关 那么在什么情况下会出现某个计算在物体中心颜色为0or很少颜色,在边缘颜色很深呢。 在边缘法线与该点到摄像机的夹角应该是超过90的,在中心位置这个夹角是0,那么我就需要一个从0到90+角度值增大的函数 ret smoothstep(e1...原创 2018-12-26 17:59:24 · 260 阅读 · 0 评论 -
我的shader学习之二
本篇文章实际上是一个类似阅读笔记的东西。 这里主要讲一个反射shader,就是反射场景到一个物体表面。那么等于光线照到物体上计算的颜色要去周围环境去采样。 按道理这个东西是怎么实现的呢,我认为是光线照到场景反射到物体表面,然后再反射到摄像机内的,那么在物体表面的点应该显示场景什么内容,那就是要从摄像机方向发射一束光线到这个点然后反射到场景纹理上,然后获取场景纹理上的这个点。 // Upgr...原创 2019-01-03 17:30:39 · 139 阅读 · 0 评论 -
我的shader学习之三
本篇文章依然是读书笔记。 本文主要写的是unity uv动画相关的内容。 主要是基于unity提供的内置的_Time变量。 代码如下: // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' Shader "Unity Shaders Book/Chapter 11/Water...原创 2019-01-05 22:09:59 · 266 阅读 · 1 评论 -
我的shader学习之四
本篇文章依然是笔记 本文主要涉及unity uv动画的内容。实现一个波纹效果 我先贴代码吧 // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' Shader "Custom/WaterRipple" { Properties { _MainTex ("纹理", 2D...原创 2019-01-30 21:28:36 · 177 阅读 · 0 评论 -
我的shader学习之五
本篇依然是笔记 这次的内容是做一个玻璃, 这个东西实际实现里shader不复杂,但是实际操作比较多 这个东西用到了两个摄像机,也就是通过一个摄像机把它的摄像内容渲染到一个中间缓冲上,即渲染目标纹理。这个东西的使用是unity提供的。(暂时不知道opengl里面是怎么做的) 我们设置一个片的材质,然后把这个片儿放在对应的模型后面,然后前后各一个摄像机,如下图 然后两个摄像机看...原创 2019-04-04 17:39:50 · 130 阅读 · 0 评论 -
我的shader学习之六
今天复习一下基础,写个光照的读书笔记 先写个blinn-phong的光照模型 // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' // Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject' // Upgrade NOTE: rep...原创 2019-04-08 16:48:24 · 97 阅读 · 0 评论