问题标签 [sceneeditor]

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 回答
222 浏览

ios - SceneKit:删除聚光灯锥体外出现的变暗区域?

目标是模拟类似于这些图像的照明:

关于 SceneKit 光照以及不同光照类型如何相互作用的文档很少(例如,如果您将聚光灯添加到已经存在环境光的场景中会发生什么),因此通过痛苦的反复试验,我们有了走到这一步:

在此处输入图像描述

如场景图中所示,有环境光和聚光灯。(全向光和定向光被隐藏了。)光斑锥体内的阴影和照明都非常好,但光锥之外的一切都是黑色的。

问题1:你是怎么做到的,所以斑点锥外的区域不是黑色的?场景中有一个环境光(不是默认的,是明确添加的),所以不应该使圆锥体外部的区域变亮吗?

问题2:理想情况下,如果在圆锥体内部,整个场景将是litas,同时保留阴影。这可能吗?将光点移动到较高的 Y 值(例如 1000)会点亮整个场景,但冷色阴影会消失。

问题 3:在下面的屏幕截图中,启用泛光灯会洗掉光斑的锥体。这是预期的行为吗?你怎么能把灯组合起来,这样它们就不会互相冲刷掉?

屏幕截图 2(启用泛光灯会清除聚光灯):

在此处输入图像描述

0 投票
1 回答
55 浏览

sprite-kit - 如何在场景编辑器中从颜色精灵中移除纹理?

我想删除我在颜色精灵中选择的纹理。但是,不要用不同的纹理替换它。相反,我只想使用颜色填充。

但是我尝试在属性检查器中删除纹理,它只是在我单击关闭后用纹理名称重新填充框。它不会删除纹理。

如何在场景编辑器中删除纹理并获得只是颜色填充的颜色精灵?

我只想要一个具有物理属性的方形盒子,我可以用颜色填充或使其无色。

在此处输入图像描述

0 投票
1 回答
281 浏览

sprite-kit - 添加纹理会导致崩溃...(未捕获的异常 'NSInvalidArgumentException' )

所以我正在研究侧滚轴。每个级别都有一个带有自定义玩家类的 Sprite。虽然确定精灵的纹理是由它的空闲动画设置的,但我在每个关卡中应用了一个纹理以供参考。

在每个级别它似乎工作正常

例如,这是我的第 2 级,我的主要玩家 Monkey Sprite 出现在大多数关卡中。

在此处输入图像描述

但是,在两个级别上,对此 Player Sprite 的任何更改都会导致游戏崩溃。我不得不把它作为一个没有纹理的精灵……任何改变都会导致游戏崩溃。例如,如果我添加一个新纹理,我会收到以下错误。

例如,在这里它必须保持无纹理,否则我会崩溃。 在此处输入图像描述

我试图通过

  1. 复制我的 2 级并删除除了猴子精灵和相机(以及它的孩子)之外的所有内容,然后将有问题的级别中的所有内容粘贴到(除了无纹理的精灵和它的相机)。错误仍然发生。

当我在 Xcode 7 中开发这个东西时,这似乎没有发生,但是切换到 Swift 3 和 Xcode 8 导致了一些奇怪的错误。

我已经尝试过这两个问题级别。我想不通。如果我只是让它不带纹理,那么游戏构建就可以正常工作。我可以在场景编辑器中添加纹理。但是,然后构建崩溃。

但是,将精灵纹理化以供编辑参考会很有帮助。有人有想法么?

0 投票
1 回答
106 浏览

xcode - 如何在 Xcode 的场景编辑器中使用来自特定图集的纹理

场景编辑器中有没有办法从纹理图集中选择图像?

我想在场景编辑器中使用纹理图集中的图像来创建 SKSpriteNode。问题是我有多个图集,每个图集都包含同名的不同图像。

例如,atlas1 包含 image1、image2、image3,然后 atlas2 也包含名为 image1、image2、image3 的图像,但它们是不同的。只有他们有相同的名字。我想使用来自 atlas2 的 image1,但在媒体库中我只看到来自 atlas1 的 image1,我不知道如何在 atlas2 中选择一个。

0 投票
0 回答
125 浏览

xcode - 在 Xcode 场景编辑器中一次设置多个用户数据值

我在 Xcode 的 SpriteKit 场景编辑器中为许多精灵分配用户数据值。一次为一个精灵设置用户数据既费时又困难。我想知道是否有一种方法可以在编辑器中选择多个精灵并一次为所有精灵分配一个用户数据值。

在此处输入图像描述

我试过这样做,但用户数据只为选择的第一个精灵设置。不幸的是,在这种情况下,无法在代码中设置用户数据。有谁知道在编辑器中执行此操作的更好方法?我的研究表明没有,但我想知道我是否可能忽略了一些东西。

0 投票
1 回答
235 浏览

swift - 如何访问 SpriteKit 场景编辑器参考节点上自定义类中包含的 Swift 中的变量?

首先,我想说我是完全自学的,我在互联网上找到了尽可能多的教程,所以如果有某些我不太熟悉的概念,请提前道歉。

好吧,我想就困扰我好几天的事情寻求帮助。

我在 SpriteKit 场景(GameScene)中有一个引用节点(referenceNode),
该引用节点引用了另一个 SpriteKit 场景(referenceScene),
并且这个场景有一个自定义类(referenceClass.swift)。

我在 referenceClass.swift 中有一个名为 trueOrFalse 的布尔变量,我希望能够从我在 gameScene.swift 中的代码中更改值。

我已经尝试通过创建实例来从 SceneEditor 转换为我的代码,就像你会做 SKSpriteNode 和 SKLableNodes 一样,但这似乎不起作用

这是我的自定义课程

这只是我制作的一个小示例项目,因此我可以通过尝试可以找到的不同解决方案来了解这个概念,但没有成功。我意识到我可以创建全局变量,但我试图保持我的代码干净,因为与此节点相关的所有功能都保留在此参考类中。我也被告知它的编程不好?

任何帮助将不胜感激 :)

巴尼

0 投票
1 回答
62 浏览

sprite-kit - 以编程方式更改场景编辑器中的纹理

我已经在我的场景编辑器中添加了一个名为“arm”的颜色精灵,但出于多种原因,我需要访问该颜色精灵并以编程方式更改纹理。说明我的目标的另一种方式是,我想将节点链接到我的 GameScene swift 文件并使用数组中的纹理更改纹理。有谁知道如何做到这一点?

0 投票
1 回答
24 浏览

xcode - Is SKVideoNode compatible with Scene Editor?

I'm trying to add .mov files to my .sks file in scene editor. Is it possible? If so, how do you do it? This is as far as i got, am i going the right direction?

However, the videoNode returns nil after running.

0 投票
1 回答
82 浏览

swift - 将场景重新定位到视图顶部

Apple 的文档指出我无法使用位置获取器/设置器更改位置。我已经尝试了锚点建议,但仍然无法将场景编辑器中的场景位置移动到顶部。有没有人有任何想法?

已经通过场景编辑器完成了实现,目前唯一提交给帮助场景的代码如下:

在此处输入图像描述

0 投票
1 回答
86 浏览

swift - 如何将字符串传递给 SKScene(filenamed:) 动画文件中的 SKLabelNode?

以前,我通过在我的 SKScene 中创建初始化程序将属性传递到我的 SKScene,然后在我的 SceneEditViewController 中创建我的 SKScene 属性时设置这些初始化程序。这有意义吗?但愿如此。

但是,我现在使用的是场景编辑器,而不是手动创建 SKScene。我的动画场景有一个 SKLabelNode,我想将从不同的 viewController 接收到的文本传递到 SKScene 的 SKLabelNode。下面我在 if-else 的“if”部分提供了我以前的方法。在“其他”部分,我正在尝试新方法,但需要帮助。

当尝试从我的 SKScene 设置属性时,xcode 状态,“'SKScene' 类型的值没有成员'selectedTextSceneUse1'”

包括以下:

  • 场景编辑视图控制器
  • 扩展使我能够从另一个 viewController 接收文本字符串
  • GameScene.swift(连接到我的 GameScene.sks 的 swift 文件)

我正在使用 swift 5.0,如果您需要更多信息,请告诉我。