SpriteKit聚光灯效果

乔纳·贝古德(Jonah Begood)

我正在尝试使用Sprite Kit为iOS游戏创建聚光灯效果。目的是要有一个背景,该背景可以通过在屏幕边缘反弹的几个移动聚光灯显示出来。

我已经成功地找到了使用SKCropNode或更简单地使用SKSpriteNode来移动聚光灯的解决方案。

对于SKSpriteNode解决方案,我只是在场景的顶部(即,它是最后添加的子项)添加了一个SKSpriteNode,该图像比场景大(长1.5宽,宽1.5宽)。图像是一个黑色的矩形,中间有一个透明的圆圈(使用alpha通道)。我添加了一个等于圆大小的物理体。我给了它一个冲动,SpriteKit完成了其余的工作。然后,我有一个很好的聚光灯,在透明圆圈后面(或下方)反射并显示一切(即,添加到场景中的任何精灵)。

对于SKScropNode解决方案,我创建了一个SKCropNode,并向其中添加了背景精灵。然后,我用仅由一个透明圆圈组成的图像定义了SKSCropNode的蒙版。我还添加了一个等于圆圈大小的物理体,给了它一个冲动,它起作用了。实际上,几乎是因为我找不到使遮罩的非透明部分成为背景颜色以外的方法的方法。即使场景的背景颜色不是黑色,我也希望像使用SKSpriteNode解决方案一样将其设置为黑色。

我也尝试使用SKLightNode,但结果不如上述解决方案那样好,因为光线会扩散得太多,并且不允许具有精确的光线圆周。我想要内部完全透明,外部完全黑色,没有从透明到黑色的渐变。

我的主要问题是,我需要有3个弹起的聚光灯,而不仅仅是一个。

使用SKSpriteNode解决方案,如果我添加3个SKSpriteNode,则顶部的SKSpriteNode的黑色部分将覆盖下面其他2个SKSpriteNode的白色圆圈。

使用SKCropNode解决方案,每个SKScropNode只能有一个掩码。我试图级联SKScropNode,但是它不起作用。

是否有其他选择(快速)实现此效果?

感谢您的任何建议。

德米特里·克洛奇科夫(Dmitry Klochkov)

您可以创建一个父节点(SKNode),将您的Spotlight节点作为子节点添加到该节点,然后将该父节点作为maskNode设置到包含背景作为子节点的单个SKCropNode。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

尝试在Android画布上进行聚光灯效果

来自分类Dev

CSS3聚光灯效果,使用带有渐变的圆角矩形

来自分类Dev

在OpenGL场景中创建聚光灯

来自分类Dev

聚光灯搜索中消失的“东西”

来自分类Dev

聚光灯阴影贴图的计算偏差

来自分类Dev

聚光灯列内的计算

来自分类Dev

为什么聚光灯关了没有灯出来?

来自分类Dev

聚光灯在libGDX中不起作用

来自分类Dev

iPhone中类似HTML的聚光灯框

来自分类Dev

使用Python在图像中创建“聚光灯”

来自分类Dev

iPhone中类似HTML的聚光灯框

来自分类Dev

Three.js聚光灯不会投射阴影

来自分类Dev

如何查看当前正在索引哪些文件聚光灯

来自分类Dev

在黑暗的环境光上应用聚光灯 - HLSL - Monogame

来自分类Dev

将鼠标悬停在“除...以外”(又名“聚光灯”)效果上:如何进行平滑且轻松的悬停过渡?

来自分类Dev

如何在DirectX11中正确创建聚光灯?

来自分类Dev

切断三个js,聚光灯/阴影相机

来自分类Dev

如何在OpenGL中创建平滑的边缘聚光灯?

来自分类Dev

/ usr / bin /下的自制软件,聚光灯和升级软件

来自分类Dev

如何使我的Javascript仅显示一个集中在鼠标上的聚光灯?

来自分类Dev

强制用户仅从过滤器聚光灯中选择一个值

来自分类Dev

为什么我的three.js场景中的聚光灯始终保持在相机视角的中心,而仅在Android的Chrome上?

来自分类Dev

自动完成在 VS 代码中不起作用,也无法从我的 Mac 禁用聚光灯命令 + 空格也不起作用

来自分类Dev

应用搜索结果未在iOS聚光灯下显示

来自分类Dev

SpriteKit的相机抖动效果

来自分类Dev

gnuplot中的发光(霓虹灯)效果

来自分类Dev

街头霓虹灯的发光效果

来自分类Dev

C#/ WPF中的霓虹灯/发光效果

来自分类Dev

HTML网站上灯灭/灯亮的效果

Related 相关文章

  1. 1

    尝试在Android画布上进行聚光灯效果

  2. 2

    CSS3聚光灯效果,使用带有渐变的圆角矩形

  3. 3

    在OpenGL场景中创建聚光灯

  4. 4

    聚光灯搜索中消失的“东西”

  5. 5

    聚光灯阴影贴图的计算偏差

  6. 6

    聚光灯列内的计算

  7. 7

    为什么聚光灯关了没有灯出来?

  8. 8

    聚光灯在libGDX中不起作用

  9. 9

    iPhone中类似HTML的聚光灯框

  10. 10

    使用Python在图像中创建“聚光灯”

  11. 11

    iPhone中类似HTML的聚光灯框

  12. 12

    Three.js聚光灯不会投射阴影

  13. 13

    如何查看当前正在索引哪些文件聚光灯

  14. 14

    在黑暗的环境光上应用聚光灯 - HLSL - Monogame

  15. 15

    将鼠标悬停在“除...以外”(又名“聚光灯”)效果上:如何进行平滑且轻松的悬停过渡?

  16. 16

    如何在DirectX11中正确创建聚光灯?

  17. 17

    切断三个js,聚光灯/阴影相机

  18. 18

    如何在OpenGL中创建平滑的边缘聚光灯?

  19. 19

    / usr / bin /下的自制软件,聚光灯和升级软件

  20. 20

    如何使我的Javascript仅显示一个集中在鼠标上的聚光灯?

  21. 21

    强制用户仅从过滤器聚光灯中选择一个值

  22. 22

    为什么我的three.js场景中的聚光灯始终保持在相机视角的中心,而仅在Android的Chrome上?

  23. 23

    自动完成在 VS 代码中不起作用,也无法从我的 Mac 禁用聚光灯命令 + 空格也不起作用

  24. 24

    应用搜索结果未在iOS聚光灯下显示

  25. 25

    SpriteKit的相机抖动效果

  26. 26

    gnuplot中的发光(霓虹灯)效果

  27. 27

    街头霓虹灯的发光效果

  28. 28

    C#/ WPF中的霓虹灯/发光效果

  29. 29

    HTML网站上灯灭/灯亮的效果

热门标签

归档