unity:游戏对象不可见?

2023-12-28

我组合了两个可以显示透明度和截止 Alpha 的着色器。它工作得很好,只有两个小问题。 (1) 在某些特定的摄像机角度下,对象的截止区域是可见的(仅当具有相同着色器的另一个对象位于该对象后面时) (2) 如果我淡出一个对象,它会变得黑色而不透明

我是着色器编码的新手,非常感谢您的帮助!

这是着色器:

Shader "Unlit/MyTransparent"
{
Properties{
    _Color("Main Color", Color) = (1,1,1,0.5)
    _MainTex("Base (RGB) Alpha (A)", 2D) = "white" {}
    _Cutoff("Base Alpha cutoff", Range(0,0.9)) = 0.5

}
    Category{
    //Tags{ "QUEUE" = "AlphaTested" "IGNOREPROJECTOR" = "true" "RenderType" = "Transparent" } // Transparent beides
    Blend SrcAlpha OneMinusSrcAlpha

    SubShader{ 

        Material{
        Diffuse[_Color]
        Ambient[_Color]
    }

        Pass{
            AlphaTest Greater[_Cutoff]
            SetTexture[_MainTex]{
            combine texture * primary, texture
        }
        } 

        Pass{
        GLSLPROGRAM
            varying mediump vec2 uv;

            uniform mediump vec4 _MainTex_ST;
            void main() {
                gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
                uv = gl_MultiTexCoord0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
            }

            uniform lowp sampler2D _MainTex;
            uniform lowp vec4 _Color;
            void main() {
                gl_FragColor = texture2D(_MainTex, uv) * _Color;
                float ca = tex2D(_CutTex, IN.uv_MainTex).a;
            }

        ENDGLSL
} 

        Pass{
        ZWrite Off 
        SetTexture[_MainTex]{
            //combine texture * primary, texture
            Combine texture * constant ConstantColor[_Color] 
        }
}
}

    SubShader{ Pass{
    SetTexture[_MainTex]{ Combine texture * constant ConstantColor[_Color]}
} }
}

}


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

unity:游戏对象不可见? 的相关文章

  • 如何包装 UnityEngine.Debug.Log 但在单击时保留代码行

    我有这种代码 目的是包装UnityEngine Debug Log所以我也可以在生产中禁用它们 以便我可以稍后查找 过滤 using System public enum LogType DEBUG CRITICAL public clas
  • Phong 着色问题

    我正在根据以下内容编写着色器冯模型 http en wikipedia org wiki Phong reflection model 我正在尝试实现这个方程 其中 n 是法线 l 是光线方向 v 是相机方向 r 是光反射 维基百科文章中更
  • Unity3D 不安全代码需要指定“unsafe”命令行选项

    我在用Unity3D 4 3并打电话给DLL我创造的 当尝试调用它唯一的函数时 这是 void GetModelReferences int nVertices float vertices int nTriangles int trian
  • 我在统一复制门时遇到问题

    我正在尝试统一复制我的门 但是 当我尝试这样做时 只有原来的门正在执行打开和关闭等动画 我有一个 UI 按钮 它使用 OnClick 函数来操作门 当我输入触发器时它会弹出 这是带有OnClick功能的按钮UI https i stack
  • Unity3D:在 AA 解析后绘制粒子以提高性能

    我正在尝试评估 MSAA 对 Unity 中含有大量粒子的场景的影响 为此 我需要 使用 8x MSAA 绘制场景中的所有非粒子对象 使用上一个通道中解析的深度缓冲区来渲染所有 将非遮挡粒子系统转移到较小的渲染目标上 将 2 的颜色缓冲区与
  • Unity-3d-5 将 16:9 的图像缩放至其他分辨率

    所以我创建了一个蛇游戏 其边框是用 2d 精灵创建的 我将游戏窗口设置为 16 9 在此分辨率下图像看起来不错 然而 扩展到其他任何东西开始让游戏看起来很奇怪 我想要调整游戏窗口的大小 如何让我的精灵根据当前分辨率拉伸和收缩 我已经尝试创建
  • 创建对话框/弹出窗口

    有这样的代码 bool b EditorUtility DisplayDialog Test Reset or continue Reset Continue if b ResetGame 但它仅在编辑器中有效 在游戏中无效 如何将 Edi
  • Unity3d 中的多线程脚本调用

    我试图在Unity3d中实现多线程脚本执行 但是Unity库似乎没有提供方法 我们必须使用Mono提供的System Threading 但他们提到 Unity Scripting 不是线程安全的 我可以使用 System threadin
  • 背景 JPanel 上的 JScrollPane 中的透明 JEditorPane

    如果我移动 JScrollPane 使其位于 JPanel 前面并部分覆盖 JPanel 则 JScrollPane 内部的 JEditorPane 会出现绘制问题 它无法正确地重新绘制 JPanel 的背景 因此 当您滚动时 您最终会遇到
  • foreach 循环为 Unity 中的按钮赋值时出现问题

    我正在尝试在 Unity 中为我的游戏制作一个类似 Candy Crush 的地图 我正在尝试将所有按钮收集到一个数组中 然后设置其 onclick 属性 这样当我单击它们时 我就可以达到我想要的级别 我正在使用 Foreach 循环来实现
  • Android:使 Dialog 周围的所有内容都比默认值更暗

    我有一个具有以下样式的自定义对话框 它显示了一个无边框对话框 后面的任何内容都会 稍微 变暗 我的设计师希望背后的一切都比 Android 的默认设置更暗 但不是完全黑色 有这样的设置吗 我能想到的唯一解决方法是使用全屏活动而不是对话框 只
  • 为什么从字典中获取时会得到 Action<> 的克隆?

    我有以下字典 private Dictionary
  • OpenGL 3.1 中已弃用 glLineStipple

    glLineStipple在最新的 OpenGL API 中已被弃用 它被替换成什么 如果不更换 怎样才能达到类似的效果呢 我当然不想使用兼容性配置文件 抱歉 它还没有被任何东西取代 我想到的第一个模拟它的想法是几何着色器 您向几何着色器提
  • 当我“绘制”线条时,如何将点平均分配到 LineRenderer 的宽度曲线?

    我正在使用线条渲染器创建一个 绘图 应用程序 现在我尝试使用线条渲染器上的宽度曲线启用笔压 问题在于 AnimationCurve 的 时间 值 水平轴 从 0 标准化为 1 因此我不能在每次添加位置时都在其末尾添加一个值 除非有一个我不知
  • Unity3D如何连接NavMesh和NavMeshAgent

    我在编辑器中收到此错误 SetDestination can only be called on an active agent that has been placed on a NavMesh 这些是我在解决问题时尝试的步骤 将 Nav
  • 帧缓冲区和在 opengl 中使用着色器

    我对帧缓冲区有点困惑 我想要做的是使用附加了多个纹理的帧缓冲区 填充每个纹理 然后使用着色器组合 混合 所有纹理以创建新的输出 听起来很容易 是的 我也是这么想的 但我不明白 如何将当前绑定的纹理传递给着色器 您需要的是将纹理放入特定的槽中
  • 在 Ubuntu 中与未编译的着色器链接

    我需要加载 glsl 来绘制一些东西 我的环境是Ubuntu 13 04 因此它不存在GLuint InitShader GLuint GLuint 这是我的对象创建 预链接步骤和链接的配置 不幸的是 它仍然出现错误 该错误与未编译的着色器
  • 如何将 asm 着色器编译为 fxo 文件?

    我有一个已编译的 fxo 着色器 我正在尝试对其进行稍微编辑 仅调整一些常量 使用 fxdis https code google com archive p fxdis d3d1x https code google com archiv
  • 如何让游戏音频在某个点循环播放

    我的游戏中有一场风暴 所以我制作了一个环境音频文件 它慢慢成长为一场风暴 雨逐渐消失 然后变成一个可循环的风暴音频文件 我是这样做的 Play intro clip and merge into main loop var introTim
  • (Unity 中的 Firebase 数据库)在 Android 构建期间在 Temp 中缺少classes.jar

    I am using Firebase Database in my Unity project but I am having some issues when building the project for android It ru

随机推荐

  • Java中如何从超类调用子类方法?

    我环顾四周 想找到问题的答案 但找不到 Java中如何从超类调用子类方法 基本上我想做的是这样的 我有一个名为exec这需要一个String作为命令的参数 我希望能够致电exec开发人员在事先不知道子类名称的情况下从超类重写的子类中的方法
  • 如何在android中捕获设备后退按钮事件?

    我通过我的应用程序打开了 pdf 文件 当单击设备后退按钮时 它会自动返回到我的应用程序 它工作正常 这里我想捕获设备中的后退按钮事件 我覆盖后退按钮 但它不起作用 请帮我 这是您所要求的示例 Override public boolean
  • Github Pages Jekyll 站点中的资产收到 404 错误

    我正在尝试在 github 页面上建立一个基本的 Jekyll 站点 目前有问题的网站是 https kculmback github io kcfeatures v2 https kculmback github io kcfeature
  • C printf 使用 %d 和 %f

    我正在研究这个程序 我注意到使用 f 表示双精度型 使用 d 表示浮点型给了我完全不同的东西 有人知道为什么会发生这种情况吗 int main float a 1F double b 1 printf float d ndouble f a
  • 打字稿中函数上的“:”和“=>”有什么区别?

    假设我们使用这样的显式类型来定义一个函数 var func arg1 string arg2 number gt boolean 正如你所看到的 我们应该在这里使用 gt 但是我们不能在函数减速中使用这个粗箭头 func function
  • pypy 内存使用量永远增长?

    我有一个复杂的 python 服务器应用程序 它一直持续运行 下面是它的一个非常简化的版本 当我使用 python 运行以下应用程序时 python Main py 它立即使用 8mb 的内存 并保持在 8mb 的内存 这是应该的 当我使用
  • R:使用 documentclass:report 从 bookdown::pdf_book 的标题中删除“章节”部分

    考虑我的标题和第一部分 title asdf author asdf date 13 Januar 2018 documentclass report output bookdown pdf book citation package bi
  • 预提交 Mercurial hook 以停止提交到错误的分支

    我在 Mercurial 存储库中有一个软件 我将我的软件项目打包为 Debian 包 看来做到这一点的标准方法是有一个 Debian 软件包文件的单独分支 哪些生活在debian子目录 我一直遇到的一个问题是我忘记了我是哪个分支 并意外地
  • 在同一个进程中加载​​ musl libc.so 和 gcc libc.so ?

    我有一个用 musl libc 编译的共享库 readelf d libinterop d so Dynamic section at offset 0x8ecb0 contains 22 entries Tag Type Name Val
  • 类型错误:window.open 不是函数

    我在 firebug gt TypeError window open is not a function 上不断收到此错误 code document ready function div click function var link
  • Android底部应用栏导航图标颜色

    我在这样的布局中定义了一个底部栏
  • 查找 之间的差异。并在unix中找到*

    查找 和有什么不一样 与查找 当我尝试在当前目录中搜索文件 即修改时间不超过 20 天 时 我触发了以下查询 find maxdepth 0 mtime 20 上面的命令没有给出任何输出 但是 find maxdepth 0 mtime 2
  • Netbeans 中的删除线是什么意思?

    在 Netbeans 中用 strikethrough 编写的内容意味着什么 例如getObject在下面的例子中 版本 Netbeans 6 8 该方法已被弃用 即被更新的方法取代 您可能应该使用它 换句话说 为了某些向后兼容性 您调用的
  • 重试地理定位请求而不刷新浏览器

    我对 Geolocation api 有一个具体问题 这是我的场景 用户登陆的页面 在 Chrome Android 中 禁用了 GPS 位置 页面上有一个按钮 按钮的onClick触发Geolocation getCurrentPosit
  • Rails 3 迁移:(非主键)列上自动增量?

    我正在寻找一种方法来创建一个像自动 id 列那样自动递增的列 我可能可以在模型中以某种方式处理这个问题 但这看起来很笨拙 我还没有在 Rails 3 中找到任何可以处理这个问题的东西 有没有可用的宝石可以处理这个问题 我很惊讶它还不是一个选
  • SCIPY - 构建约束而不单独列出每个变量

    我正在使用 SCIPY 来优化使用远期价格的存储设施 交易期限为 1 年 根据每月价差 例如 3 月 21 日与 5 月 20 日价差 是否足够高以覆盖可变运营成本 可以从该设施注入和提取天然气 附图代表了问题 这里的值是任意的 与代码中的
  • 基于原型继承的语言中的类使用

    The 以下回答这个问题 https stackoverflow com questions 186244 what does it mean that javascript is a prototype based language很好地
  • 分解字符串并为带有分隔符前面文本的数组设置键?

    有没有办法接受这样的输入 testing one two three setting more testing 并得到这样的东西 array testing one two three array setting more testing
  • 为什么 `map.has()` 不充当类型保护

    我遇到了以下问题 在我的应用程序中 我有一个Map其中一组 lambda 函数与一些函数配对Roles 每个 lambda 需要一个secondParameter并返回一个settings object enum Role ROLE 1 r
  • unity:游戏对象不可见?

    我组合了两个可以显示透明度和截止 Alpha 的着色器 它工作得很好 只有两个小问题 1 在某些特定的摄像机角度下 对象的截止区域是可见的 仅当具有相同着色器的另一个对象位于该对象后面时 2 如果我淡出一个对象 它会变得黑色而不透明 我是着