问题标签 [unity3d-shaders]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
185 浏览

unity3d - 将 XNA Shader 通道、混合和剔除模式移植到 Unity shaderlab

我不得不将 XNA 着色器移植到 Unity 的着色器中,并想验证我是否正确地执行了此操作。

Pass1使用 alpha 混合的部分,如SrcBlend,DestBlend和 set's cull to none 是我要确保我做对的唯一地方。

这是 XNA 着色器版本:

这是我制作的 Unity Shaderlab 端口:

它似乎在 Unity 中运行良好,但这与 Unity 中的等效通道设置完全相同吗?如果不是,则需要进行哪些更改才能获得确切的等效性。

0 投票
1 回答
569 浏览

unity3d - 如何从天空盒获取光照信息?

我是 Unity3d 着色器的新手。我现在正在编写一个自定义未点亮着色器。我知道我可以使用_WorldSpaceLightPos0.xyz_LightColor0.rgb获取定向光源的信息。

但是,如果我有一个天空盒而不是一个光源,我怎样才能得到光照信息呢?现在radiance(Li)来自我的天空盒。我怎样才能得到它们的价值并计算Li*my_custome_brdf

谢谢

0 投票
1 回答
1093 浏览

c# - Unity 中的闪光效果

我正在尝试为松树上的纹理添加闪闪发光的效果。我尝试按照其他线程中的建议使用此处的代码http://developer.amd.com/wordpress/media/2012/10/Shopf-Procedural.pdf (P.22)。但我无法将它应用于我的着色器。

树最初看起来像这样:

没有闪光效果的松树

现在我希望我的闪光功能的结果会在纹理中产生许多小的白色火花。因此,如果我只使用来自 flash 函数的值(取消注释 c = flashValue 列)作为颜色,则树应该变成黑色,并带有许多白色的小火花。

但它看起来更像这样:

具有闪闪发光效果的松树

我是从我的闪光功能中得到错误的值,还是我只是错误地应用它们?

0 投票
1 回答
3923 浏览

unity3d - 只需在 Cg 着色器中获取对象的缩放比例

假设您有一个简单的 Unity 着色器。它根本不使用任何纹理。它只是抓住了位置..

然后画一个正方形..

在此处输入图像描述

示例中的四边形已使用变换拉伸约 3:1。

如果在着色器中我们只知道缩放比例(或者,只是比率),我们可以很容易地绘制“正方形”

在此处输入图像描述

这显然是一种常见的日常技术,用于广告牌、2D 图像和背景等。

在当前的统一(2018 年)中,您如何简单地获得对象的当前缩放,在 Cg 中?

这是那些疯狂的 Unity 事情之一,它 (1) 完全没有记录 (2) 关于它的唯一可用信息长达 13 年,我的意思是一些相关的人可能已经去世 (3) 它已经发生了巨大变化在不同的 Unity 版本中,因此经常讨论它是完全错误的。叹。

怎么做?你能?

目前我只有一个简单的脚本传递值,这还可以,但有点粗制滥造。

0 投票
2 回答
2414 浏览

unity3d - Unity 的 YUV 着色器?

我在 Unity 中有一些(适当的、平面的)YUV 纹理,我只是想看看它们以供开发人员使用。

Unity(他们的着色器语言变体)实际上是否有一个有效的 YUV 着色器?

从概念上讲,从 YUV 转换为 RGB 很简单……但有点繁琐。

0 投票
2 回答
99 浏览

unity3d - Unity 不像 hololens 那样渲染

我目前正在尝试 holotoolkit 材质示例场景,这在统一性上看起来很差,但在 hololens 上很棒。我发现一些视频统一显示与 hololens 相同。这就是它在一些统一的视频和 hololens 上的外观 其他统一

这就是它在我的统一中呈现的方式 我 的统一

我能做些什么让它像在 hololens 上一样渲染?Edit1:是的,质量设置为超高,部署到全息透镜时看起来很好。问候!!

0 投票
1 回答
45 浏览

unity3d - 统一按钮丢弃着色器中的像素

我正在使用我自己的着色器的按钮。这工作正常,除了统一似乎在像素到达我的着色器之前丢弃/剪切像素。

我的图像顶部和底部三分之一是透明的。如果我做类似 color=fixed4(1,0,0,1); 只有中间部分是红色的。按钮和纹理都是方形的,我可以在场景视图中看到它们的位置都正确。关于如何防止按钮剪切这些透明像素的任何想法?

着色器如下:

0 投票
1 回答
928 浏览

unity3d - 我将如何更改此着色器代码以更改它导致对象旋转的轴?

我正在玩这个 Unity 示例游戏中的代码,以了解如何使用着色器转换对象。游戏使用着色器来弯曲世界,其中一个着色器还会使对象围绕它们的 y 轴旋转。我想修改它以围绕它的 z 轴旋转一个对象。

我尝试交换 z 和 y,但这确实使我用于此实验的圆柱体围绕 z 轴旋转,但它也会导致圆柱体拉伸。仅将 rotVert.z 更改为 rotVert.y 会导致圆柱体以 45 度角在其一侧旋转。谁能告诉我哪里出错了?

这是导致对象绕 y 轴旋转的代码:

0 投票
1 回答
945 浏览

unity3d - 为什么添加到 ui 面板的材料在 android build 中不可见,但在 unity3d 的编辑器窗口中工作正常?

添加到 UI 面板的材料在编辑器窗口中有效,但在 android build 中无效。如何解决这个问题?

编辑器截图 图片

安卓截图 图片

笔记:

  1. 我尝试将着色器添加到项目设置菜单中的“始终包含的着色器”列表中。仍然没有修复。
  2. 我没有更改代码中的着色器/材质。
  3. 这在以前的统一版本中运行良好。(我的统一版本是2018.3.11f1)
  4. 相同的材质在其他游戏对象(如立方体等)中工作正常,但不适用于任何其他 UI(如按钮、画布等)
0 投票
0 回答
30 浏览

unity3d-shaders - 为什么我的着色器在一些安卓设备上坏了一半?

我有在其他网格上切洞的着色器。在某些 android 设备上,游戏开始出现错误。一段时间后它会自行修复。当我重新加载场景时,它再次发生。

这是一个坏的

在此处输入图像描述

这是正确的一个

在此处输入图像描述