问题标签 [sktextureatlas]

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

skspritenode - 在 Spritenode 动画和移动过程中出现红色大 x

这是我每隔一秒向场景添加缩放精灵的问题。当我向 zoombie 节点添加另一个子动画 zoombie 时,有时它会加载动画纹理,而其他时候会出现红色大 X。在此处输入图像描述

0 投票
0 回答
311 浏览

sprite-kit - 如何从 plist 文件加载 SKTextureAtlas 纹理

我需要从 plist 文件加载纹理图像以用于 SKTextureAtlas。我已经手动将图像用作框架,即使用纹理运行动作。但现在我已将图像压缩在一个 .png 中,并将它们的数据添加到 .plist 文件中。

如何从此 plist 文件加载纹理?

0 投票
2 回答
7098 浏览

swift - CUICatalog:无效请求:请求子类型而不指定成语(它来自哪里以及如何修复它?)

当我运行我的 SpriteKit 游戏时,我在控制台中多次收到此错误。据我所知(虽然我不完全确定),游戏本身不受影响,但错误可能还有其他一些影响,以及拥挤的调试控制台。

我对该错误进行了一些研究,并找到了一些可能的解决方案,但似乎都没有完全奏效。这些解决方案包括转向ignoresSiblingOrder并将false纹理指定为SKTextureAtlas(named: "atlasName").textureNamed("textureName"),但这些都不起作用。

我认为错误来自资产目录中纹理和纹理图集的使​​用,尽管我不完全确定。以下是我如何实现其中一些纹理/图像:

还:

上面的代码只是用来创建一个数组来为角色设置动画,并且动画运行得很好。

对于所有其他精灵节点,我使用SKSpriteNode(imageNamed: "imageName")资产目录中的图像名称进行初始化,但不在纹理图集中。所有图像都有@1x、@2x 和@3x 版本。

我不确定错误消息是否还有其他可能的来源,或者上面的示例是否是错误的来源。

这只是精灵套件的错误,还是我的代码或资产的合法错误?

谢谢!

0 投票
1 回答
312 浏览

swift - Sprite Kit UIActivityIndi​​cator 不会停止动画

我正在尝试预加载显示 UIActivityIndi​​cator 的纹理图集数组。加载纹理后,我想使用 .stopAnimating() 方法停止活动指示器。我插入了断点,发现编译器确实到达了 .stopAnimating() 方法,但什么也没发生……指示器继续……

我在这里做错了什么?

0 投票
2 回答
1563 浏览

swift - SKTextureAtlas 找不到

我将一个名为“movementAnim”的文件夹拖到 Image assets 文件夹中,该文件夹用于创建纹理图集(来自我从 WWDC 2015 What's New in SpriteKit Session 中挑选的内容)。请看下面的代码:

简单精灵类:

在 GameScene 类的初始化中:

我收到以下日志消息:

但是当我使用以下而不是纹理时,它可以完美地工作:

我已经检查了名称并确保没有重复。我不确定出了什么问题。

0 投票
3 回答
499 浏览

ios - SpriteKit:使用 SKTextureAtlas 导致不正确的物理体

我正在构建我的第一个精灵套件游戏,最近阅读了一篇文章,说使用 SKTextureAtlas 来提高性能。

所以我将我所有的精灵图像迁移到有组织.atlas的文件夹中,并相应地更新了代码。然而,现在我的精灵有奇怪的物理体(主要是过度放大)

例如,我的播放器精灵具有三种状态:飞行(平面)、向上飞行和向下飞行。这三幅图像非常相似,略有不同(手臂指向平、上、下)

在迁移到纹理图集之前,物理主体与图像非常吻合。然而,现在它比图像大得多,并且在 y 轴上略微拉伸。

这是我的 player.atlas 文件结构:

播放器-飞行-iphone.atlas:

  • player-flying-down@2x.png
  • player-flying-down@3x.png
  • player-flying-up@2x.png
  • player-flying-up@3x.png
  • player-flying@2x.png
  • player-flying@3x.png

这是我的代码示例: (Player 是一个子类 SKSpriteNode)

0 投票
1 回答
1376 浏览

sprite-kit - SKTexture 缓存和重用如何在 SpriteKit 中工作?

在 StackOverflow 上经常提到 SpriteKit 做自己的内部缓存和重用。

如果我不努力重用纹理或图集,我可以从 SpriteKit 获得什么缓存和重用行为?

0 投票
1 回答
102 浏览

ios - UImage 加载整个 SKTextureAtlas 而不仅仅是 SKTexture

我需要带有“trueName”的纹理才能加载到我的 myImageViewOutlet.image 中。我得到的结果是将整个图集渲染到其中。我的代码如下

0 投票
1 回答
744 浏览

swift - Swift:如何处理内存中的大量纹理

我的游戏中有很多角色,因此我有很多纹理。当加载纹理图集(包含大约 5 个不同的图像纹理)时,它会增加内存使用并将其保持在该数量。所以更多的纹理只会不断增加这个数字,直到有时应用程序崩溃。我不需要一次所有的角色,我怎么能在我需要的时候加载一些角色纹理并在我不需要的时候释放其他的,但是我需要能够把它带回来。

0 投票
1 回答
117 浏览

ios - “纹理图集不支持模板渲染”SpriteKit 和 Xcode

我正在 SpriteKit 中制作游戏,并且我正在为我的所有纹理使用纹理图集。我正在使用设置

  • 比例因子:单向量

Xcode 给了我这个 TextureAtlas 的警告:

纹理图集中不支持模板渲染。

我不确定这意味着什么