首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Unity Shader Graph:如何从时间节点加速时间?

Unity Shader Graph:如何从时间节点加速时间?
EN

Stack Overflow用户
提问于 2018-06-13 14:55:32
回答 2查看 7.7K关注 0票数 1

我正在尝试使用来自时间节点的正弦时间输出,但我希望它更快。

如果这是在Unity c#中完成的,我会尝试这样做

代码语言:javascript
运行
复制
totalTime += Time.deltaTime * speed;

value = Mathf.PingPong(totalTime, 1);

但是我不能在Shader Graph中这样做。如何解决这个问题?

EDIT1:我也尝试创建自定义节点函数,但这会导致错误。

代码语言:javascript
运行
复制
static string PingPongFunction(
    [Slot(0, Binding.None)] Vector1 t,
    [Slot(1, Binding.None)] Vector1 length,
    [Slot(2, Binding.None)] out Vector1 Out)
{
    return
        @"
            {
                Out = Mathf.PingPong(t, length);
            }
        ";
}
EN

回答 2

Stack Overflow用户

发布于 2019-01-15 18:07:14

将输入时间x乘以sin(x),并将时间乘以一个数字以加快速度。

票数 5
EN

Stack Overflow用户

发布于 2018-06-13 15:27:01

我会这样做,将你的时间转移到multiply node上的A中,然后你可以手动将B设置为2,这样速度会快一倍,或者添加一个新的vector1属性,这样你就可以在检查器中更改它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50830820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档