在unity shader当中定义枚举值(两种方法)

这篇具有很好参考价值的文章主要介绍了在unity shader当中定义枚举值(两种方法)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第一种方法 :使用Enum标识符
unity shader 枚举,unity
在properties当中定义Enum,后面option1为显示面板内容,逗号分隔开的是值类型
注意:值只能是整数
定义之后直接可以在代码段中使用
unity shader 枚举,unity
第二种方法:定义KeywordEnum标识符,并创建变体
unity shader 枚举,unity
properties当中定义如上所述;
之后在cg代码段中定义变体,前面加shader_feature_local 注意:properties当中的变量不管大小写,
#pragma之后所有字母需要大写,结构为_ENUMNAME_KEYWORD

unity shader 枚举,unity
格式如上所述 下来就可以用宏定义的方法使用枚举
unity shader 枚举,unity
介绍完毕,看面板上的输出
unity shader 枚举,unity文章来源地址https://www.toymoban.com/news/detail-574476.html

到了这里,关于在unity shader当中定义枚举值(两种方法)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 《Unity的URP项目中使用自定义shader导致材质消失的解决办法》

            在Unity中使用URP时,会有需求使用自定义的一些shader来实现特殊效果,这时如果我们直接使用新建材质与无光照着色器(Unlit shader),可能会发生一个对于新手而言意料之外的问题—— 物体!消失了!         打开你正在使用的的 通用渲染器(Universal Rendere

    2024年02月06日
    浏览(78)
  • Shader for Quest 2: 自定义shader在Unity Editor中可以使用,但是在Quest 2中却不可以

    上面这份代码,在Unity Editor中可以使用,但是编译到Quest 2之后,却没有反应。这可能是由于多种原因引起的,可以按照下面的步骤修改。 The Oculus Quest 2 primarily uses OpenGL ES and Vulkan. 如果使用Visual Studio联调的话,可能会看到这个报错: System.ArgumentNullException: Value cannot be null.

    2024年04月29日
    浏览(33)
  • Unity Shader:常用的C#与shader交互的方法

      俗话说久病成医,虽然不是专业技术美术,但代码写久了自然会积累一些常用的shader交互方法。零零散散的,总结如下:   有时候我们需要改变ui的一些属性,从而实现想要的效果。通常UGUI上有如下属性,而我们想要改变,就需要获取到Material这个属性:   这里拿Image来举

    2024年02月14日
    浏览(31)
  • 【Unity Shader Graph URP渲染管线下的自定义半透明效果_半透明案例分享】

    URP的渲染管线下 在项目设置里找到“Graphic” 找到URP Asset文件 索引到Renderer List文件——“ForwardRenderer” 在这个“ForwardRenderer”文件里找到“Add Renderer Feature” 添加一个渲染对象,类似下图:Render Object (Experimental) 如图设置,将“Event”设置成 AfterRenderingSkybox ,然后“Layer M

    2024年02月09日
    浏览(58)
  • Unity编写Shader内置各种矩阵和方法介绍

    返回目录 大家好,我是阿赵。 这里记录一下Unity编写Shader内置各种矩阵和方法 UNITY_MATRIX_MVP:Current model * view * projection matrix. UNITY_MATRIX_MV:Current model * view matrix. UNITY_MATRIX_V:Current view matrix. UNITY_MATRIX_P:Current projection matrix. UNITY_MATRIX_VP:Current view * projection matrix. 其中: M:model(模型

    2024年02月11日
    浏览(44)
  • Unity中Shader雾效的实现方法二

    Unity中雾效的实现方法二,使用 Unity 自带的方法实现,这次使用的是最通用的雾效方法 常规方案 1.#pragma multi_compile_fog声明雾效所需要的内置变体:FOG_LINEAR FOG_EXP FOG_EXP2. 2.UNITY_FOG_COORDS(idx): 声明顶点传入片断中的雾效插值器(fogCoord). 3.UNITY_TRANSFER_FOG(o,o.vertex): 在顶点着色器中计算

    2024年02月05日
    浏览(40)
  • Unity中Shader雾效的实现方法一

    Unity中Shader雾效的实现方法一,按照之前的公式, 我们自己来实现一下 Unity中Shader雾效的原理 基于上一篇文章继续: Unity中Shader的雾效 不管是什么类型的雾,这个雾效的公式都是统一的 unity_FogColor 雾效混合因子是由,之前的三个雾效衰减公式计算得到的 Unity中Shader雾效的原理

    2024年02月04日
    浏览(35)
  • 两种方法为WordPress添加用户自定义头像功能

     一般情况下, WordPress 默认都是使用 Gravatar头像 ,如果用户没有注册过 Gravatar 头像,那就使用网站设置的默认头像,这样用户体验不是很好;再则,如果直接调用 远程Gravatar 头像,还会影响网站的 加载速度 (WordPress缓存Gravatar头像到本地,提高加载速度)。所以,作为一个开

    2023年04月09日
    浏览(47)
  • Visual Studio打开Unity Shader就报错,标红,解决办法,VS发送请求时出错解决方法

    Visual Studio打开Unity Shader就报错,这是因为少了扩展。 点最上方的扩展-管理扩展 -联机,正常情况会看到这个界面,在搜索框输入ShaderlabVS,下载,关闭VS重启就好了。 不过有可能碰到下面这个问题,发送请求出错,有人说在网络和internet的代理里关闭代理就行,但我是打开了代

    2024年02月09日
    浏览(45)
  • unity设置分辨率的两种方法

    unity设置分辨率的两种方法 使用Unity编辑器中的分辨率设置工具。打开Unity编辑器,选择菜单栏中的“Edit” - “Project Settings” - “Player”,在“Resolution and Presentation”选项卡中选择想要的分辨率,然后点击“Apply”按钮即可。 使用脚本设置分辨率。在Unity中创建一个脚本,使

    2024年02月11日
    浏览(82)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包