- 博客(27)
- 收藏
- 关注
原创 unity Liner颜色空间和Gamma颜色空间总结
参考文章: https://blog.csdn.net/candycat1992/article/details/46228771https://www.cnblogs.com/guanzz/p/7416821.html 最近遇到两个色域空间所表现出来颜色不一样的问题。原理就请查其他作者的参考文章。总结如下1. 当美术制作的图为8位时(256种颜色),颜色为经过Gamma...
2019-01-02 17:37:21 6080
转载 [转]三大主流编程语言 HLSL/GLSL/Cg
转的文章 感觉有点老了 不过还是说明了问题 这里应该是指的2008年左右的opengl 随着移动化浪潮现在主流都是opengl了反而是dx少了Shader LanguageShader Language的发展方向是设计出在便携性方面可以和C++、Java等相比的高级语言,“赋予程序员灵活而方便的编程方式”,并“尽可能的控制渲染过程”同时“利用图形硬件的并行性,提高算法效率”。 ...
2018-09-25 20:16:05 729
转载 [转载]UE编译选项
转载于[https://blog.csdn.net/chinahaerbin/article/details/50443961]图片1 通常我们按照官网文档或者教程,在第一次编译UE4的时候都会让我们选择编译Development Editor。但是你又没有想过除了这个选项之外还有很多选项,他们是干什么的。其实当时太急于想知道他们的含义没有太大必要,因为这些选项是会随着我们之...
2018-09-15 16:20:00 902
原创 Shader LIGHT_ATTENUATION 在unity2018的变化
unity2017前版本中: float attenuation=LIGHT_ATTENUATION(i)unity2018版本修改为:UNITY_LIGHT_ATTENUATION(attenuation,i,i.posWorld.xyz);
2018-08-03 17:10:47 2200
转载 [转] Unity3D之Mecanim动画系统学习笔记(十一):高级功能应用
动作游戏还记得读书的时候熬夜打《波斯王子》的时光,我们的王子通过跳跃穿过墙壁的小洞、在高层建筑上进行攀爬和跳跃,还有在操作失误掉下高楼和触发必死机关后使用时之沙的时光倒流功能回归死亡之前的开挂技能。而现在这些功能使用Unity3D的Mecanim都可以非常简单的实现了!这篇笔记主要记录下Mecanim的3个高级功能:Animation Curve:可以根据动画的运行时间自定义一条曲线,在播放动画时...
2018-05-14 15:00:19 292
转载 [转]Mecanim Animator使用详解
1. 简介 Mecanim把游戏中的角色设计提高到了一个新的层次,使用Mecanim可以通过Retargeting(重定向)来提高角色动画的重用性。在处理人类角色动画时,用户可以使用动画状态机来处理动画之间的过渡及动画之间的逻辑。 Mecanim支持运动重定向(Retargeting)功能:即把动画从一个角色模型应用到另一个角色模型上的功能。 2. Animator关键元素2.1 Ani...
2018-05-14 14:47:04 425
转载 【转】记一次基于Unity的Profiler性能分析
1. CPU Usage A. WaitForTargetFPS: Vsync(垂直同步)功能所,即显示当前帧的CPU等待时间 B. Overhead: Profiler总体时间-所有单项的记录时间总和。用于记录尚不明确的时间消耗,以帮助进一步完善Profiler的统计。 C. Physics.Simulate: 当前帧物理模拟的CP...
2018-04-08 14:54:35 246
原创 Secondary maps shader
// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "Mars/Mount"{ Properties { _Color("Color",Color) = (1,1,1,1) _Albedo("Albedo",2D) = "white"{} _Norma
2018-01-23 20:12:27 312
原创 记录
第一套Albedo和normalmap 和第二套Albedo 混合公式:AlebdoFinal = Albedo0.rgb*Albedo1.a + Albedo0.rgb*Albedo1.rgbDetail Mask则用于第一套贴图和第二套贴图的混合。具体公式如下。Albedo0.rgb = Albedo0.rgb * (1 - DetailMask.a);Albedo1.rgb = Albedo
2018-01-19 17:54:02 215
原创 黑屏shader
shader 代码:// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "Mars/CameraBlack" {Properties{_Color("Color",float) = 1_MainTex ("Base (RGB)", 2D) = "white"
2018-01-16 17:02:27 315
原创 Shader补充记录
ZTest补充记录:ZTest 的默认值是LEqual 即当深度小于或等于本身深度值时,该物体渲染关键字: Less 深度值小于当前缓丰则通过,关键字: Greater 深度大于当前缓存则通过关键字: GEqual 深度大于等于当前缓存则通过,关键字:Equal 深度等于当前缓存则通过关键字: NotEqual 尝试不等于当前缓存则通 过关键字:Always 永
2017-09-12 10:11:44 239
原创 Shader记录0912
使用透明测试SHADERSubShader{Tags{"Queue" = "AlphaTest"}Pass{}}使用透明度混合SHADERSubShader{Tags{"Queue" = "Transparent"}Pass{ZWrite Off //关闭深度写入}}透明度测试函数:vo
2017-09-12 10:11:15 244
原创 0818记录
UNITY渲染队列关键字: BackGround 队列索引号:1000 这个渲染队列在最前面渲染关键字: Geometry 队列索引号:2000 默认渲染队列,不透明物体使用关键字: AlphaTest 队列索引号:2450 需要透明 度测试的物体使用这个队列 (在UNITY5.X 中被单独分出来,这是因为在所有不透明物体渲染之后再渲染会更加高效)关键
2017-08-18 18:34:14 246
原创 0817世界空间法线(未出现相应效果,待查)
//注 和切线空间法线使用的相同纹理图,但并未出现法现效果。// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "Te
2017-08-17 17:34:45 487
原创 切线空间法线
// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "Test/TangentNormalShader" {Properties{_MainTex("main",2D) = "white"{}_Bump("Bump",2D) = "white
2017-08-16 18:07:32 530
原创 0816被充记录
//计算法线空间//副法线 v.tangent.w 决定副法线方向float3 binormal = cross(normalize(v.normal), normalize(v.tangent.xyz)) * v.tangent.w;//计算rotation矩阵float3x3 rotation = float3x3(v.tangent.xyz,binormal,v.no
2017-08-16 18:06:19 227
原创 第一个纹理记录
// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "Test/SingleTexShader"{Prop
2017-08-15 20:06:39 246
原创 0815记录
在UNITY中 我们需要使用 "纹理名_ST"的方式来声明栽个纹理的属性,其中ST是缩放和平移的缩写纹理名_ST.xy 存储的是缩放值 纹理名_ST.zw 存储的是偏移值UV坐标计算 内置函数:o.uv = TRANSFORM_TEX(v.texcoord,_MainTex);纹理采样 tex2D(纹理名,UV坐标)
2017-08-15 20:05:13 226
原创 半Lambert漫反射记录
Shader "Test/HalfDiffcuseLight"{Properties{_Diff("Diffcuse",Color) = (1,1,1,1)} SubShader{Pass{Tags {"LightMode" = "ForwardBase"}CGPROGRAM#pragma vertex vert#pragma f
2017-08-10 18:18:56 326
原创 简单像素漫反射(书里的)
Shader "Test/SecondPixDiffcuseLight"{Properties{_Diff("Diffcuse",Color) = (1,1,1,1)} SubShader{Pass{Tags {"LightMode" = "ForwardBase"}CGPROGRAM#pragma vertex vert#pra
2017-08-10 18:17:42 363
原创 简单顶点漫反射
// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "Test/DiffcuseLight"{Properties
2017-08-10 18:16:46 508
原创 0810记录补充
Shader得到环境光:UNITY_LIGHTMAODEL_AMBIENT光源颜色和强度信息_LightColor0光源光向信息_WorldSpaceLightPos0Shader函数:saturate(x) 把X截取在[0-1]范围内,如果X是一个矢量,那么会对它的每一个分量进行这样的操作mul(x,y) 变换矩阵函数reflect(i,n)
2017-08-10 18:15:29 279
原创 Shader First
// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "Test/First" {Properties {_Color("Color",Color) = (1,1,1,1) }SubShader{Pass{CGPROGR
2017-08-09 17:45:11 220
原创 Shader 常用记录
ShaderLab 属性类型和CG变量类型关率关键字: Color,Vector CG: float3 half4 fixed4关键字: Range,Float CG: float half,fixed关键字:2D CG: sampler2D关键字:Cube CG: samplerCube关键字:3D CG: s
2017-08-09 17:44:09 287
原创 shader 标签记录
Shader 标签设置Tags{"Quequ" = "Transparent"} (以下仅可以用于SubShader)关键字: Queue 参数: ... 控制渲染队列,指定该物体属于哪一个渲染队列关键字: RenderType 参数: ... 对着色器进行分类(是否为透明着色器)关键字: DisableBatching 是否对SubShader使用批处理关键字:
2017-08-04 16:24:19 354
原创 shader记录0801
shader 状态设置关键字: Cull 参数: Back/Front/Off 设置剔除模式 剔除背面/前面/关闭关键字:ZTest 参数: Less Greater/Lequal/GEqual/Equal/NotEqual/Always 设置深度测试时使用函数关键字:ZWrite 参数: On/Off 开启/关闭深度写入关键字:Blend 参数:SrcFac
2017-08-01 21:01:47 238
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人