![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Shader
文章平均质量分 70
警醒与鞭策
『卧薪尝胆』不同阶段,不同目标!
展开
-
Creating GLSL Shaders at Runtime in Unity3D
//////////////////////////////////////////////////该概念涉及用户能够在程序运行时编写着色器,并在运行时将它们编译到场景中的对象上。通常这不是一个不合理的任务,但是这个项目是在 Unity 中构建的,这使事情变得非常复杂。我之前看过一个在运行时将 shaderlab 代码传递给 Material 构造函数的示例,但我从未见过有人以同样的方式使用任何其他着色器语言。原来那是因为你做不到。我希望使用的Material 构造函数只接受 Shaderlab..翻译 2022-05-26 15:15:00 · 231 阅读 · 0 评论 -
Unity URP Shader 内容记录 (2022)
///////////////////////////////////////////////enum PrimitiveType { Float, Int, UInt, Bool, Half, Real };What does "real" in shaders of URP means?Real is either float or half, depending on the platform. You can check th...原创 2022-04-25 11:06:36 · 1460 阅读 · 0 评论 -
ComputeShader参数详解
/////////////////////////////////////////////////////////ComputeBufferDescriptionGPU data buffer, mostly for use with compute shaders.ComputeShaderprograms often need arbitrary data to be read & written into memory buffers. ComputeBuffer cla...翻译 2022-04-21 00:03:12 · 875 阅读 · 0 评论 -
ComputeShader 相关参数记录
Unity - Scripting API: ComputeBufferUnity - Scripting API: ComputeShaderUnity - Scripting API: Graphics.DrawProceduralNowUnity - Scripting API: GraphicsBuffer翻译 2022-04-19 16:40:11 · 102 阅读 · 0 评论 -
有关Shader的其他记录内容
//////////////////////////shader三种变量类型(uniform,attribute和varying)/////////////////////////////////////////uniform变量在vertex和fragment两者之间声明方式完全一样,则它可以在vertex和fragment共享使用。(相当于一个被vertex和fragment shader共享的全局变量)1 、uniform变量一般用来表示:变换矩阵,材质,光照参数和颜色等信息。以下..转载 2021-12-03 08:13:00 · 101 阅读 · 0 评论 -
用Shader实现的常用效果2
////////////////////////////unity实现透明水波纹扭曲///////////////////////Shader "Unlit/Water"{Properties{_MainTex ("Texture", 2D) = "white" {}_WaterUV("WaterUV",2D)="while"{}_WaterIntensity("WaterIntensity",float)=500}SubShader{GrabPass{Nam...转载 2021-09-01 11:46:52 · 465 阅读 · 0 评论 -
Unity Shader sheet record
// This cheatsheet primarily focuses on VERTEX/FRAMGENT shaders and not on SURFACE shaders,// but some of the surface shader things are mentioned in a separate category on the bottom. see SURFACE// #STRUCTURE// #VERT/FRAG shaderShader "Custom/Name".转载 2021-04-24 22:30:40 · 366 阅读 · 0 评论 -
Unity 的 VertexFragmentShader有关记录 ShaderLab Syntax
Unity 的 VertexFragmentShader有关记录 ShaderLab Syntax翻译 2020-12-02 23:45:49 · 133 阅读 · 0 评论 -
Unity 的 Surface Shader有关记录
Unity 的 Surface Shader有关记录翻译 2020-12-02 23:36:54 · 524 阅读 · 1 评论 -
常用ShaderToonWater实现原理及实现
//////////////////////////////////////////////////////////////////////////////////////////////You will learnto write a toon water shader. You will use data from the depth and normals buffer to generate shoreline foam, and noise and distortion textures t.转载 2020-06-27 10:18:30 · 1134 阅读 · 0 评论 -
学习 Vulkan 足迹
file:///C:/VulkanSDK/1.0.57.0/Documentation/getting_started.html 1、 安装CMake, 然后2、 3、 找到安装路径,和新建的build路径。4、 默认安装VulkanSDK-1.0.57.0-Installer, 把glm-0.9.7.3 和 gli-master 里边文件全部Copy到G:\AllO原创 2017-09-06 12:28:30 · 871 阅读 · 0 评论 -
Unity官网shader有用参数描述(为自己)
Built-in shaders in Unity have their LODs set up this way:VertexLit kind of shaders = 100 Decal, Reflective VertexLit = 150 Diffuse = 200 Diffuse Detail, Reflective Bumped Unlit, Reflective Bu...翻译 2017-10-13 18:10:48 · 6361 阅读 · 0 评论 -
ImageEffect ScreenSpaceSnow
Have you ever wondered how much time does it take to apply snow toall of the textures in your game? Probably a lot of times. We’d like toshow you how to create an Image Effect (screen-space shader) th...转载 2018-02-10 23:22:15 · 458 阅读 · 0 评论 -
ShaderWarmup与Shader热更新相关
[MenuItem("Shader/Collect Variants")] staticvoidCollectShaderVariants() { varcollection = newShaderVariantCollection(); varfolders = newstring[]{"Assets/Shaders"}; ...转载 2018-07-10 23:32:17 · 3364 阅读 · 0 评论 -
用Shader实现的常用效果1
///////////////////////////////////////////////卷轴//////////////////////////////////////////////////实现原理:还记得中学数学中圆的公式吗,就是利用这个公式计算坐标,然后实时的平移坐标轴,来完成一个圆的平移具体做法:1.在一个圆中,假设圆心为坐标轴原点,那么,一个弧长对应的角度的正弦和余弦值分...转载 2018-07-10 23:46:37 · 5899 阅读 · 1 评论 -
Shader动画替换贴图
手机上此shader不支持 Shader "Unlit/MouthAnimUnlit"{Properties{_DefaultTex("Texture", 2D) = "white" {}_AnimType("AnimType",Int) = 0_Index("Index",Int) = 0_SpeakTex_0("Texture", 2D) = "whit转载 2018-08-25 22:14:25 · 873 阅读 · 0 评论 -
HLSL Intrinsic Functions
//Cg 3.1 Toolkit Documentation 补充bitCount- return the number of bits set in a bitfield.bitfieldExtract- return an extracted range of bits from a bitfield.bitfieldInsert- returns an extrac...翻译 2018-09-12 14:32:42 · 944 阅读 · 0 评论 -
ComputeShadersInUnity
Getting Started With Compute Shaders In UnityNOTE: This article is for an old version of Unity (Unity 4...sometime in 2014) and probably won't run anymore, but the basic idea is still valid. I just ...翻译 2019-01-12 19:48:29 · 637 阅读 · 0 评论 -
常用ShaderOutline实现原理及实现
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Outline Shader >> using Unity engine 2018.3Ge...转载 2019-05-12 21:41:40 · 3528 阅读 · 1 评论 -
一些有关Shader的记录
#pragmafragmentoptionARB_precision_hint_fastest"+PrecisionHints(ARB_precision_hint_fastest,ARB_precision_hint_nicest)Fragmentprogramcomputationsarecarriedoutatanimplementation-depe...转载 2019-09-21 15:59:00 · 189 阅读 · 0 评论 -
Shader变量
Intrinsic Functions (DirectX HLSL)The following table lists the intrinsic functions available in HLSL. Each function has a brief description, and a link to a reference page that has more detail转载 2015-01-16 15:20:03 · 798 阅读 · 0 评论 -
毛发及眼球的渲染技术
前言这是关于角色渲染技术的第二篇,前一篇关于皮肤的渲染方法可见这里。实际上为了逼真地还原一个角色,除了渲染技术外,在很多游戏中还使用了动画、物理仿真等其他方面的技术,这些技术也非常重要。譬如今年的《地平线:零之黎明》这个游戏给我的感觉就是角色渲染的效果不如前两年的《教团1886》看着自然,但如果静帧去看,显然前者在渲染技术的角度讲也完全不输给后者。我猜大概是因为转载 2017-07-19 12:07:40 · 2037 阅读 · 0 评论 -
游戏中的角色渲染技术之皮肤篇
前言:游戏中的角色渲染技术随着近几年来硬件机能的增长已经被大范围地应用在了各类AAA大作中,本文会取一些游戏为例,分类概述游戏中的角色渲染技术。由于整个角色渲染的话题会比较长,这个主题会用两篇来阐述,第一篇主要讨论有关角色皮肤的渲染,第二篇会着重讨论角色毛发和其他的渲染。壹 · 次表面散射当光线从一种介质射向另外一种介质时,根据其行进路线,可以被分为两个转载 2017-07-19 12:10:21 · 1716 阅读 · 0 评论 -
Unity实时阴影实现图解
光照在游戏作品中的重要地位早已不容忽视,阴影与光的实现技术一直在高效与真实之间左右权衡着。下面主要通过一个具体的问题探讨Unity实时阴影的内部实现。两种阴影实现方式Unity有两种阴影实现方式:烘培阴影与实时阴影。烘培是一种离线计算,它采用光线追踪算法来模拟现实世界中光的物理特性,如反射,折射及衰减,光无法到达的地方皆为阴影;实时阴影是一种更加精简的模拟,它忽略掉转载 2017-05-15 09:48:51 · 5635 阅读 · 0 评论 -
【Unity Shaders】法线纹理(Normal Mapping)的实现细节
写在前面写这篇的目的是为了总结我长期以来的混乱。虽然题目是“法线纹理的实现细节”,但其实我想讲的是如何在shader中编程正确使用法线进行光照计算。这里面最让人头大的就是各种矩阵运算和坐标系之间的转换,很容易因为坐标系错误而造成光照结果的错误。我们将要讨论以下几个问题:为什么法线纹理通常都是偏蓝色的?在Unity里,法线纹理是需要把“转载 2016-07-11 20:54:54 · 1066 阅读 · 0 评论 -
【浅墨Unity3D Shader编程】之六 暗黑城堡篇: 表面着色器(Surface Shader)的写法(一)
本文主要讲解了Unity中SurfaceShader的具体写法,以及几个常用的CG函数的用法。在这里先说明一下,表面着色器将分为两次讲解,本文介绍表面着色器的基本概念和一些写法,用内置的兰伯特光照模式来进行Surface Shader的书写,而下次将介绍Surface Shader+自定义的光照模式的写法。PS:最近几天,在完美世界、腾讯互娱工作多年的几个朋友们问了浅墨一些表面着色转载 2016-07-11 20:22:32 · 996 阅读 · 0 评论 -
心形shader
说到心形线不得不提到一个人——勒内·笛卡尔。可以说笛卡尔是心形线的创始人,在笛卡尔游历欧洲各国时,认识了瑞典一个小公国的公主克里斯汀,并成为了公主的数学老师,渐渐地彼此产生了爱慕之心,但是在国王的阻挠下笛卡尔被流放回法国,体弱多病无法抵挡日夜的思念,在给公主寄出十三封信后便与世长辞,第十三封信仅有一个公式,那边是心形线的起源。下面看下各种各样的心形线吧!1、笛卡尔的心形线转载 2015-11-12 20:38:22 · 1273 阅读 · 0 评论 -
Direct3D提高篇:HLSL编程实现PhotoShop滤镜效果
一、图像黑白化一个RGB颜色的亮度和各个分量之间的关系的公式为: GrayValue = 0.3 * R + 0.59*G + 0.11 *B 根据这个公式,代码如下:转载 2015-01-26 11:05:03 · 993 阅读 · 0 评论 -
搜集Shader一些参数(为自己)
#define BLEND_ADD_FRAG(col) \ (col).a = min ((col).a, 1); \ (col).rgb *= (col).a; \ (col).a *= i.__addScale表示宏还没有定义完成,下行也是。SubShader内部可以有标签(Tags)的定义。Tag指定了这个SubShader的渲染顺序(时机),以及其...转载 2015-01-20 17:01:16 · 4914 阅读 · 0 评论 -
Unity shader 官网文档全方位学习(基础)
What?? Shader,看起来好高级的样子,是的,这是Unity中高级进阶的必备。因此,兄弟我就在此记下我学习官网的一些心得。此为一。主要介绍些Surface Shaders的知识。具体的大家也可去官网(如下)学习。 http://docs.unity3d.com/Documentation/Components/SL-SurfaceShaders.html一、概念篇转载 2015-01-16 11:05:12 · 924 阅读 · 0 评论 -
闪光shader
LOGO闪光效果 这个效果在很多LOGO及广告宣传中都会用到。商业开发的做法应该是拿一张闪光的图,对其做uv移动,然后和原图两张图混合,这样运算会小很多,需要储存的变量也会小很多。本讲不用图而完全通过计算得出闪光区域,主要是借此加深uv计算实现特殊效果的实现,以及计算uv的方法。代码注释配合图解已经比较详细了,跟着转载 2014-12-10 17:27:48 · 811 阅读 · 0 评论 -
流光效果
从画法的角度看,流光效果的成本很低,一张流光图,一张过滤图,一个渲染遍,即可实现效果。但是效果很令人印象深刻。流光效果可用于2D或者3D。用于3D的比如角色盔甲上流动的光斑用于2D的例子比如在按钮上弄个飘过的亮光比如炉石的卡牌这些都是流光效果。其中炉石的卡牌流光效果比较复杂,多层、带过滤、多种流动形式。其实两张图的shader,我们在《剑转载 2015-01-08 11:57:35 · 1678 阅读 · 0 评论 -
Shader教程系列XNA
学习 相关的例子" align="absmiddle" alt="" src="http://shiba.hpe.sh.cn/jiaoyanzu/WULI/images/pages/icon_welcome.png" style="list-style:none; margin:0px; padding:0px; border:0px currentColor">Shader教程系列转载 2014-05-28 16:47:29 · 1211 阅读 · 0 评论 -
Unity Shader编程】之十五 屏幕高斯模糊(Gaussian Blur)后期特效的实现
本篇文章将分析如何在unity中基于Shader实现高斯模糊屏幕后期特效。首先放出最终的实现效果。如下几幅图,是在Unity中使用本文所实现的Shader得到的高斯模糊屏幕后期特效与原始图的效果对比图。卡通风格的效果测试: 写实风格的效果测试: OK,下面我们开始分析如何在Unity中实现上述的高斯模糊特效。转载 2016-07-12 17:43:27 · 2168 阅读 · 0 评论 -
打造高逼格耀斑效果
效果对比实现方法1、降采样将原始贴图(Source Image)的长宽逐步缩减为原来的1/4尺寸(Quarter Source Image),如下图所示。2、亮度过滤、模糊及拉伸处理对Quarter Image进行亮度过滤处理,滤去Quarter Image中的暗部,以获取Image中的亮斑部分。然后,对其进行Blur模糊和拉伸处理,即将亮斑部分区域转载 2016-07-12 20:50:18 · 898 阅读 · 1 评论 -
2D Splatter Effects in Unity Using the Stencil Buffer
Shader "Splatter/Surface"{ Properties { [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {} _Color ("Tint", Color) = (1,1,1,1) [MaterialToggle] PixelSnap ("转载 2017-04-19 20:17:08 · 553 阅读 · 0 评论 -
2D sprite outlines
Shader "Sprites/Outline"{ Properties { [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {} _Color ("Tint", Color) = (1,1,1,1) [MaterialToggle] PixelSnap ("P转载 2017-04-19 19:23:03 · 1050 阅读 · 0 评论 -
Cg Programming/Unity
Cg programming in the game engine Unity is considerably easier than Cg programming for an OpenGL or Direct3D application. Import of meshes and images (i.e. textures) is supported by a graphical user i转载 2017-04-18 09:30:26 · 866 阅读 · 0 评论 -
Strumpy Shader Editor入门教程
对于3D游戏来说,有很多绚丽的效果,都是靠shader(着色器)来实现的。不过很多朋友估计都不会编写shader,阿赵我自己也只是看了个入门,明白了它的原理,很多具体的效果都写不出来的。这次来介绍一个Unity3D的第三方shader编辑器:Strumpy。这个编辑器是完全可视化编辑,使用起来相对简单一点。先来看看我们这次需要做的例子:我们需要使用Strumpy,编辑出这样转载 2017-01-21 23:06:06 · 991 阅读 · 0 评论 -
Shader 边缘发光、变灰、高亮着色器
//转自omuying变灰:Shader "Custom/GreyShader" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } LOD 200 CGPROGRAM #pragma surface s转载 2015-12-20 13:37:46 · 3727 阅读 · 1 评论