Bad*_*ger 5 fragment-shader parallax sprite-kit swift3
带有固定相机的视差背景很容易实现,但由于我正在制作自上而下的 2D 空间探索游戏,我认为有一个 SKSpriteNode 填充屏幕并成为我的 SKCameraNode 的子项并使用 SKShader 绘制一个视差星空会更容易。
我继续使用 shadertoy 并找到了这个看起来很简单的着色器。我在 shadertoy 上成功地对其进行了调整,以接受 vec2() 作为我想作为 SKAttribute 传递的运动速度,以便它可以跟随我的船的运动。
这里是原始来源:https : //www.shadertoy.com/view/XtjSDh
我设法对原始代码进行了转换,因此编译时没有任何错误,但屏幕上没有显示任何内容。我尝试了各个功能,它们确实可以生成固定图像。
有什么指示可以使它工作吗?
谢谢!
编辑:代码是干净的并且现在可以工作。我已经为此设置了一个 GitHub 存储库。
我想我没有正确解释我想要什么。我需要一个跟随相机的星空背景,就像你可以在子空间中找到的那样(过去)
结果非常酷且令人信服!当节点数量成为瓶颈时,我可能会再回到这个问题。我仍然相信正确的方法是使用着色器!
这是我在 GitHub 上的代码的链接。我希望它对某人有用。该工作仍在进行中,但效果良好。存储库中包含来自SKTUtils(Ray Wenderlich 的一个库,已在 github 上免费提供)的源代码以及我自己对 Ray 工具的扩展(我称之为nut-n-bolts)的源代码。这些只是每个人都应该觉得有用的常见类型的扩展。当然,您拥有StarfieldNode和InteractiveCameraNode的源代码以及一个小型演示项目。
| 归档时间: |
|
| 查看次数: |
614 次 |
| 最近记录: |