问题标签 [skshapenode]

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 投票
0 回答
263 浏览

ios - 在 Sprite Kit 中实现 bodyWithBodies

我正在使用 Apple 的 Sprite Kit 创建游戏,目前我绘制了一个SKShapeNode类似于以下内容的对象:

在此处输入图像描述

我的实际精灵有圆形边缘,但为了简单起见,我试图让所有东西都首先使用这个形状。我能够完美地绘制精灵。但是,我无法创建一个物理实体来覆盖精灵。我希望精灵能够识别其表面任何地方的碰撞,所以我想要一个仅覆盖深灰色区域的物理体。另外,我希望精灵对力和脉冲做出反应,所以我需要一个基于体积的物理体。

我的第一个想法是简单地使用CGPathRef我为精灵创建图像的相同方法,并将其传递给bodyWithPolygonFromPath方法以创建相应的物理体。我发现这行不通,因为我的形状不是凸的。

所以,现在我想我应该能够用它bodyWithBodies来创建一个形状适当的物理体。我想创建三个矩形物理体(一个覆盖灰色区域的左侧,一个覆盖顶部,一个覆盖右侧),并使用它们创建一个物理体,其区域覆盖我的精灵的灰色区域通过使用这个:

但是,我遇到的主要问题是正确定位进入数组的各个实体,该数组被传递给bodyWithBodies方法。通过使用上述方法,我显然无法控制这些物理物体相对于彼此放置的位置。结果是所有三个物理体在mySprite.

在将物理实体传递给bodyWithBodies方法之前,您应该如何准确地定位数组中的物理实体?

0 投票
1 回答
99 浏览

ios - 如何在应用程序中限制触摸线的大小

我创建了一个代码,通过触摸创建一条无限大小的线,我想知道如何限制大小,使线的开头和结尾可以是一个很小的距离到最大设定距离?

我使用的代码是:

在触摸开始方法和

在 touchMoved 方法中。

谢谢

0 投票
1 回答
844 浏览

ios - 具有固定轮廓宽度的扩展圆

我想要的效果就像水面上的雨滴,波浪从中心点向外辐射。

我创建了一个圆形:

然后我让精灵展开,然后淡出:

这很接近,但是当圆圈的大小正确扩大时,lineWidth 也在扩大。你能想出一种方法来做到这一点,同时保持线宽不变吗?

0 投票
2 回答
919 浏览

swift - NSNumber 不是 UInt8 的子类型

我正在尝试做一些相当简单的 SKShapeNode 数学来设置形状节点的位置。它看起来像这样:

但是,在“let x...”行中,会产生错误:“NSNumber 不是 UInt8 的子类型”。我在这里做错了什么?

0 投票
1 回答
1432 浏览

swift - PaintCode 文件到 SKShapeNode

我可以使用一些指针将 PaintCode 文件转换为 SKShapeNodes,以便在我正在构建的应用程序中使用。我正在努力克服两个具体问题,如下所述。我正在为该项目使用 Xcode 6 beta 4、SpriteKit、Swift 和 PaintCode。首先,代码:

我遇到的第一个问题是,我生成的几乎每个重要的 PaintCode 文件都包含多个 UIBezierPath。据我所知,SKShapeNode 的路径属性只能采用一条路径,但也许可以将它们链接起来?

第二个问题是渐变颜色似乎不起作用。

我实际将此文件转换为 SKShapeNode 所做的事情是: 1. 导入 SpriteKit 2. 将类扩展名从 NSObject 更改为 SKShapeNode 3. 重命名绘图函数 4. 为设置名称的形状节点创建一个 init 函数和小路

我很高兴收到有关此类转换的任何提示。谢谢!

0 投票
0 回答
1031 浏览

swift - SKShapeNode disappears when updating path

I initially draw a line with an SKShapeNode.

This works fine. It draws a purple line across the screen. I am trying to update the path of that line in an update function that get's called 60 times a second. This curves the line based on the users finger.

As soon as the update function runs the line disappears. I don't know if I am using the right procedure of updating the path of the SKShapeNode. I can't seem to find any information about how to do so. I get the fingerLocation from the touchesMoved method using touch.locationInNode(self).

0 投票
1 回答
2336 浏览

objective-c - SKShapeNode 笔划未在 Swift 中绘制

我有这个代码:

shapeNode 出现并绘制了它的填充颜色,尽管它的描边没有。回到 iOS 7 的 Obj-C 中,相同的代码可以绘制笔画。

0 投票
2 回答
1576 浏览

ios - 使用 Touch iOS Sprite Kit 画线

我使用以下代码在我的精灵套件场景中绘制线条,但没有显示任何内容。但是节点数增加了。任何人都可以看到可能是什么问题。我一直在与这段代码作斗争

编辑-----删除后台节点后代码可以工作。如何设置后台节点以便我可以在上面进行操作?谢谢

0 投票
2 回答
100 浏览

sprite-kit - 按宽度缩放梯形 SKShapeNode,同时在侧面保留 45-45-90 个三角形

我有一个 SKShapeNode,它应该是一个突破式游戏中的一个桨,我想按某个因素缩放宽度。

它看起来像这样:

图片

我跑之后

它看起来像这样(忽略角落里的另一块灰砖,那只是另一个桨):

图片

问题是边上的三角形不再是 45-45-90。

0 投票
1 回答
2257 浏览

ios - SKShapeNode 空矩形

我开始学习 SpriteKit 并立即遇到了问题。我正在尝试使用 SKShapeNode 绘制一个空矩形,但确实出现在屏幕上。如果我为填充属性设置颜色,则会出现矩形。我究竟做错了什么 ?