Xcode 9在Spritekit中设置SKScene中的纹理时崩溃

BCo*_*ode 12 xcode sprite-kit sktexture xcode9

我正在使用Xcode在Spritekit中构建游戏.更新到Xcode 9后,我发现每次通过.sks文件设置纹理时,Xcode会立即崩溃.我重新启动了计算机,更新了应用程序,重新加载了纹理,没有任何改变.我有2017年的Macbook Prof 13"w/touch bar.这是诊断:

Process:               Xcode [577]
Path:                  /Applications/Xcode.app/Contents/MacOS/Xcode
Identifier:            com.apple.dt.Xcode
Version:               9.0.1 (13249)
Build Info:            IDEFrameworks-13249000000000000~2
App Item ID:           497799835
App External ID:       823984564
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Xcode [577]
User ID:               501

Date/Time:             2017-10-22 17:30:06.029 -0400
OS Version:            Mac OS X 10.12.6 (16G29)
Report Version:        12
Anonymous UUID:        0537A8C3-9FB2-836A-088B-E5D2B7FEB3EB


Time Awake Since Boot: 100 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: SKCRenderer_resource_queue

Exception Type:        EXC_BAD_ACCESS (SIGBUS)
Exception Codes:       KERN_PROTECTION_FAILURE at 0x000000012ceef7b8
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Bus error: 10
Termination Reason:    Namespace SIGNAL, Code 0xa
Terminating Process:   exc handler [0]

VM Regions Near 0x12ceef7b8:
    MALLOC_LARGE           000000012ceaf000-000000012ceef000 [  256K] rw-/rwx SM=PRV  
--> mapped file            000000012ceef000-000000012cf22000 [  204K] r--/rw- SM=COW  
    MALLOC_LARGE           000000012cf31000-000000012cf71000 [  256K] rw-/rwx SM=PRV  

Application Specific Information:
Sending userDidChangeValue: to <SKInspectorTextureProperty: 0x7fadb2219440> from <NSComboBox: 0x7fadb221ad80>
ProductBuildVersion: 9A1004
Performing @selector(userDidChangeValue:) from sender NSComboBox 0x7fadb221ad80
Run Code Online (Sandbox Code Playgroud)

小智 9

我解决了崩溃的问题.

问题出在你的@ 2x和@ 3x图片上.使用Assets.xcassets文件夹中的那些 - SKS节点将使XCODE崩溃.

  1. 仅将1x图像添加到Assets.xcassets文件夹.
  2. 将颜色节点放在SKS场景上.
  3. 选择一个纹理
  4. 调整纹理大小.
  5. 稍后添加您的@ 2x和@ 3x文件.

该解决方案每次都可以100%运行.

  • 谢谢你100次!由于这个原因,我在几个项目中编辑变通办法已经困了几个月......将资产移动到@ 1x并且可以再次编辑而不会崩溃. (3认同)