E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
UnityShader2
UnityShader4:UnityShader的形式
前置:
UnityShader2
:Shader与材质一、StandardSurfaceShader代码解析在前置中已经了解了什么是表面着色器,下面这是StandardSurfaceShader,也是创建Shader
Jaihk662
·
2023-11-25 00:44
#
Unity3D
UnityShader
[
UnityShader2
]ShaderLab基础
一.Shader1.Shader即着色器,是一款运行在GPU上的程序。Shader有顶点Shader和片段Shader两个基本类型,顶点Shader有着可以处理、变换,最终会渲染到屏幕上的网格物体的顶点位置的功能,但它不能生成新的顶点。顶点Shader的输出会传递给流水线的下—步。几何体的网格经过硬件的栅格化后,处于流水线上的片段Shader会被执行,片段Shader会对—个片段(预备像素)进行各
宏哥1995
·
2023-11-08 01:56
UnityShader2
Shader
ShaderLab
[
UnityShader2
]顶点片段着色器实例(五)
官方文档:http://docs.unity3d.com/Manual/SL-VertexFragmentShaderExamples.html相关链接:http://blog.csdn.net/candycat1992/article/details/416052571.a.cg内置函数:tex2D(sample2Dtex,float2s)//s为纹理(uv)坐标b.UnityCG.cginc:
宏哥1995
·
2020-07-29 10:20
UnityShader2
[
UnityShader2
]表面着色器实例(三)
一、访问顶点颜色Shader"Cookbook/Chapter07/SimpleVertexColor" { Properties { _MainTint("GlobalColorTint",Color)=(1,1,1,1) } SubShader { Tags{"RenderType"="Opaque"} LOD200 CGPROGRAM #pragmasurfacesurfLambertv
lyh916
·
2016-03-25 09:00
表面着色器
[
UnityShader2
]表面着色器实例(二)
一、UV帧动画举个例子,对于一张四帧贴图(横向):1.UV缩放:首先就是让它只显示四分之一吧,也就是将uv值压缩(x轴),原来的uv范围由(0,1)转为(0,0.25),用代码表示就是spriteUV.x*=1.0/42.UV移动:以贴图的左下角为例(设uv值为(0,0)),那么随着时间的变化,uv值就应该变为(0.25,0),(0.5,0),(0.75,0),(1,0),每次的增加量就是1.0/
lyh916
·
2016-03-25 00:00
表面着色器
[
UnityShader2
]表面着色器实例(一)
官方文档:http://docs.unity3d.com/Manual/SL-SurfaceShaderExamples.html1.纹理采样Shader"Example/DiffuseTexture"{ Properties{ _MainTex("Texture",2D)="white"{} } SubShader{ Tags{"RenderType"="Opaque"} CGPROGRAM #
lyh916
·
2016-03-21 13:00
表面着色器实例
[
UnityShader2
]顶点片段着色器实例(六)
1.棋盘效果cg函数:floor(x),返回不大于x的最大整数cg函数:frac(x),返回x的小数部分原理:a.在顶点程序中,uv的范围为(0,_Density)b.在片段程序中,对uv取整然后除以2,得到的数类似为:0/0.5/1/1.5/2/等,x和y相加取小数,要么0,要么0.5,乘以2后要么0,要么1,即达到要么黑要么白的效果。Shader"Unlit/Checkerboard" { P
lyh916
·
2016-03-20 20:00
顶点片段着色器
[
UnityShader2
]顶点片段着色器实例(五)
官方文档:http://docs.unity3d.com/Manual/SL-VertexFragmentShaderExamples.html相关链接:http://blog.csdn.net/candycat1992/article/details/416052571.a.cg内置函数:tex2D(sample2Dtex,float2s)//s为纹理(uv)坐标b.UnityCG.cginc:
lyh916
·
2016-03-20 16:00
顶点片段着色器
[
UnityShader2
]顶点片段着色器基础
官方文档:http://docs.unity3d.com/Manual/SL-VertexFragmentShaderExamples.html1.语义SV_Traget:如果顶点/片段程序只输出一个值,那么可以使用这个fixed4frag(v2fi):SV_TargetSV_POSITION:存储裁剪空间中的位置,float4类型,这个是顶点程序必须输出的一个值TEXCORD0,TEXCORD1
lyh916
·
2016-03-19 23:00
顶点片段着色器
[
UnityShader2
]图形学与CG基础
0.引入齐次坐标的意义:a.为了将空间向量与空间点进行区分,所以将三元数扩展到四元数,第四元如果是1,则表示点;如果是0,则表示向量。b.使用四元数后,就可以通过四阶矩阵运算,将空间点的平移、旋转和缩放等操作全部统一到矩阵的乘法运算中。1.图形绘制管线的三个阶段:a.应用程序阶段:将几何体数据(顶点坐标/颜色/法向量/纹理坐标、纹理等)通过数据总线传送到图形硬件。b.几何阶段:主要负责顶点坐标变换
lyh916
·
2016-03-17 14:00
cg
[
UnityShader2
]各种空间和基本光照模型
四种空间:1.模型空间:每一个物体都有一个以它自己的中心点为原点的三维坐标空间。a.在unity中,可以通过transform.worldToLocalMatrix这个矩阵的MultiplyPoint()或者MultiplyVector()方法,把世界坐标表达的矢量转换为此物体的模型空间表达的矢量。b.在shader中,可以通过左乘_World2Object这个矩阵来完成。2.世界空间:模型空间在
lyh916
·
2016-03-16 19:00
空间
基本光照模型
[
UnityShader2
]ShaderLab基础
一.Shader1.Shader即着色器,是一款运行在GPU上的程序。Shader有顶点Shader和片段Shader两个基本类型,顶点Shader有着可以处理、变换,最终会渲染到屏幕上的网格物体的顶点位置的功能,但它不能生成新的顶点。顶点Shader的输出会传递给流水线的下—步。几何体的网格经过硬件的栅格化后,处于流水线上的片段Shader会被执行,片段Shader会对—个片段(预备像素)进行各
lyh916
·
2016-03-16 16:00
shader
shaderlab
[
UnityShader2
]顶点片段着色器实例(四)
原文链接:http://www.onevcat.com/2013/08/shader-tutorial-2/http://blog.sina.com.cn/s/blog_89d90b7c0102va4m.html1.积雪效果Shader"hongGe/Normal" { Properties { _MainTex("Base(RGB)",2D)="white"{} _NormalMap("Norm
lyh916
·
2015-06-12 15:00
顶点片段着色器
[
UnityShader2
]顶点片段着色器实例(三)
原文链接:http://www.cnblogs.com/Esfog/default.html?page=21.漫反射Shader"Esfog/Diffuse" { Properties { _MainTex("Base(RGB)",2D)="white"{} } SubShader { Pass { Tags{"RenderType"="Opaque""LightMode"="ForwardBas
lyh916
·
2015-06-11 11:00
顶点片段着色器
[
UnityShader2
]顶点片段着色器实例(二)
参考链接:http://liweizhaolili.blog.163.com/blog/static/162307442015228112425158/1.条纹向上运动Shader"Custom/New"{ Properties { _MainTex("Base(RGB)",2D)="white"{} _Speed("Speed",float)=1 _Width("Width",float)=1
lyh916
·
2015-05-10 08:00
shader
[
UnityShader2
]顶点片段着色器实例(一)
主要参考博客:http://blog.csdn.net/mobanchengshuang?viewmode=contents1.模型自身坐标位置与颜色的映射Shader"Custom/RGBCube"{ SubShader { Pass{ CGPROGRAM #pragmavertexvert//顶点着色器入口函数声明 #pragmafragmentfrag//片段着色器入口函数声明 //顶点输出
lyh916
·
2015-05-09 07:00
shader
[
UnityShader2
]表面着色器基础
官方文档:http://docs.unity3d.com/Manual/SL-SurfaceShaders.html0.a.表面着色器跟顶点片段着色器相比,其优势在于可以比较方便地去书写跟灯光交互的shader(跟灯光交互的shader一般都是比较复杂的)。b.你可以定义一个表面函数,根据需要将一些数据当作输入,然后填充输出结构体"SurfaceOutput"。1.输入结构Input这个输入结构通
lyh916
·
2015-04-25 16:00
shader
[
UnityShader2
]cg函数
Ps:并不是所有CG函数,Unity都支持,例如debug(float4x)Unity不支持E.1数学函数E.2几何函数E.3纹理贴图函数E.4导数函数E.5调试函数
lyh916
·
2015-04-25 09:00
shader
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他