scntool:无法转换文件,失败原因:*** -[__NSSingleObjectArrayI objectAtIndex:]:索引 1 超出范围

2024-06-19

我正在 Xcode 9.3 下开发一个基于 iOS 11.3 SceneKit 的项目。我有几个 .dae 文件格式的 3D 模型。

每当我构建项目时,其中一个模型不会被复制到最终的 iOS 包中。深入研究错误,我在复制捆绑资源构建阶段收到以下错误:

Copy SceneKit assets Models.scnassets ...in /Users/andrew/Documents/src/gordon/gordon

scntool: failed to convert file with failure reason: *** -[__NSSingleObjectArrayI objectAtIndex:]: index 1 beyond bounds
scntool: Conversion failed, will simply copy input to output.
scntool: Copy failed file:///Users/andrew/Library/Developer/Xcode/DerivedData/gordon-hewludfnoywxcpegodbqhgocatbu/Build/Products/Debug-iphoneos/gordon.app/Models.scnassets/gordon/gordon-old.dae -> file:///Users/andrew/Library/Developer/Xcode/DerivedData/gordon-hewludfnoywxcpegodbqhgocatbu/Build/Products/Debug-iphoneos/gordon.app/Models.scnassets/gordon/gordon-old.dae error:Error Domain=NSCocoaErrorDomain Code=260 "The file “gordon-old.dae” couldn’t be opened because there is no such file." UserInfo={NSFilePath=/Users/andrew/Library/Developer/Xcode/DerivedData/gordon-hewludfnoywxcpegodbqhgocatbu/Build/Products/Debug-iphoneos/gordon.app/Models.scnassets/gordon/gordon-old.dae, NSUnderlyingError=0x7fd013e5c080 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

基本上,它的表现就像有问题一样戈登老病毒文件。当我在 Xcode 中单击该文件时,它会按预期显示模型的预览。

如果我用“手动将文件转换为 scnxcrun scntool --转换 gordon-old.dae --format scn --输出 gordon-old.scn",Xcode 再次正确预览模型。但是,在这种情况下,模型也在应用程序中正确显示,但 .scn 文件中仅存在第一个/主要几何图形。

如果我运行 Xcode 运行的正常 dae 转换,当它询问您是否要保留原始文件时,使用“xcrun scntool --转换 gordon-old.dae --format dae --输出 gordon-new.dae”,应用程序再次构建和安装工作正常。单击戈登-新.daeXcode 中再次显示良好的预览,并且模型在应用程序中看起来不错。

然而在这种情况下,我用于混合形状的所有几何图形都被分配了诸如“geometry114”之类的名称,而不是我命名的“mouthSmileLeft”。

这里疯狂的是,所有其他模型都可以正常工作,而无需我运行任何命令行。

任何帮助都是极好的!


您好,我之前在大尺寸 DAE 文件中遇到过这个问题,所以我使用终端命令来转换它,但我注意到我走了的材料然后我知道命令行中出现了问题,因为它没有将资源设置到正确的路径,经过多次尝试和错误,我发现正确的方法是

xcrun scntool --convert INPUT.dae --format scn --output OUT.scn --asset-catalog-path .

命令行末尾的点非常重要,这意味着您将把资源设置到相同的位置

如果您不设置 —asset-catalog-path 。你将没有任何材料

通过比较 2 个输出文件,一个转换正确,另一个没有转换

你会注意到少了一行“path”,这一行“path”告诉SCN文件在正确的位置搜索素材

误出.scn

    },
    {   "$class" = :false;
        NS.keys = ( :false );
        NS.objects = ( :false );
    },
    "AMS02Coil.png",
    {   "$classes" = ( "NSMutableDictionary", "NSDictionary", "NSObject" );
        "$classname" = "NSMutableDictionary";
    },

正确的 Out.scn 文件

    },
    {   "$class" = :false;
        NS.keys = ( :false );
        NS.objects = ( :false );
    },
    "path",
    "AMS02Coil.png",
    {   "$classes" = ( "NSMutableDictionary", "NSDictionary", "NSObject" );
        "$classname" = "NSMutableDictionary";
    },

所有 scntool 命令选项的列表位于此位置https://gist.github.com/matux/4a30c4b4b29d636fe6847b6a3234bc4f https://gist.github.com/matux/4a30c4b4b29d636fe6847b6a3234bc4f

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

scntool:无法转换文件,失败原因:*** -[__NSSingleObjectArrayI objectAtIndex:]:索引 1 超出范围 的相关文章

  • 带有嵌套数组的 NSPredicate

    我有以下对象结构 类别 子类别 子类别的 nsarray 子类别 问题 问题的 nsarray 问题 问题 nsstring 答案 ns字符串 我需要的是用给定的子字符串搜索任何问题 以下谓词不起作用 NSPredicate predica
  • 从 WatchKit 中的模态视图传回数据

    当模态呈现或推送界面控制器时 我们可以指定context参数将一些数据传递给新控制器 如下所示 Push self pushControllerWithName MyController context NSDictionary dicti
  • NSDate 输出不正确[重复]

    这个问题在这里已经有答案了 可能的重复 获取日期与 NSDate date 相差几个小时 https stackoverflow com questions 8466744 getting date from nsdate date off
  • MonoTouch 错误:升级到 iOS 5.1 后“未安装 Apple iPhone SDK”

    我已将 iOS 5 0 1 升级到 5 1 并且使用 MonoTouch 5 2 5 和 MonoDevelop 2 8 6 5 当我在 MonoDevelop 中创建示例应用程序时 它显示错误 Apple iphone sdk 未安装 如
  • 在 IOS 上检查 Facebook Connect 会话

    在新的 Facebook 库中 FBSession 对象消失了 当用户启动应用程序时 如何在不提示 safari 或 uiwebview 的情况下立即检查用户的设备上是否有有效会话 facebook isSessionValid 方法适用于
  • 致命错误:找不到“Fabric/Fabric.h”文件

    我正在使用 xcode 6 3 1 OSX 10 10 3 并且我已经在本地系统上成功配置了 crashlytics 它工作正常 并通过 Fabric 应用程序发布构建 但是当我将相同的代码库转移到 teamcity 时 它向我显示以下错误
  • 使用 React Native 隐藏在 TabBarIOS 后面的内容

    我正在使用 React Native 构建一个 iOS 应用程序 并正在实现一个TabBarIOS 选项卡上的内容似乎流到后面并被栏遮挡 在 xcode 中 我只是取消选中 扩展边缘 框 但不知道如何使用 React Native 来做到这
  • 如何在 Swift 中使用具有相同协议变量的多个协议?

    我很快就实现了两个协议 GADCustomEventInterstitial and GADCustomEventBanner 这两个协议都需要一个名为delegate delegate每个协议中的类型不同 因此会产生冲突 class Ch
  • Swift 和 Cocoapods - 缺少必需的模块

    我正在尝试制作一个 Swift 框架 该框架依赖于两个库 阿拉莫菲尔 https github com Alamofire Alamofire and SwiftyJSON https github com SwiftyJSON Swift
  • UIView 的变换看起来很糟糕

    我有一个简单的视图和简单的背景 我需要旋转视图及其内容 代码在这里 CGAffineTransform r CGAffineTransformMakeRotation 5 M PI 180 0f backView transform r 我
  • Safari 不会通过 http/2 加载某些资源

    服务器上启用了 Http 2 昨天我注意到在 Iphone IOS 10 2 上未加载某些资源并出现错误 failed to load resource connecting to server is not possible 当我将 Ip
  • NSAttributedString '\n' 被忽略

    我有一个视图 其唯一的 UI 元素是UITextView In viewDidLoad 我使用 Text n 创建一个属性字符串 并将文本视图的属性文本设置为 NSAttributedString string NSAttributedSt
  • 如何从Vuforia GL矩阵计算相机位置?

    我计算了 a 的相机位置SCNScene这是在 Vuforia 中渲染的 然而 物体并没有固定在标记上 而是在移动时跳跃 场景中的立方体仅以正交方式出现 无论设备如何围绕侧面移动都无法看到 相机位置是根据每一帧计算的 Get model v
  • 具有硬件集成的 iOS 应用程序

    我想开发一个使用外部硬件插件的 iOS 应用程序 有点像 Squarehttps squareup com https squareup com 但是我在苹果的文档中找不到任何参考资料 有人能指出我正确的方向吗 如果您想使用 iPod 连接
  • 如何在首选项包中使用 PSLinkListCell 中的值?

    我想为我的越狱调整制作一个偏好包 我成功地制作了一个带有可用开关的首选项捆绑包 但我想要一个选择颜色的设置 例子 Blue Color gt Yellow Green 所以如果我点击Color 它会将我带到另一个屏幕 要求我选择 Blue
  • 如何以编程方式设置 iOS 6/7 Delta

    当我离开 iOS6 时 我正在使用 Xcode 4 6 开发 UISplitView 应用程序 我有设计 现在我迁移到新的 Xcode5 现在我有这样的设计 UINavigationBar 完全重叠我的 UISearchBar Leo Na
  • Xcode 6 iOS 8 UIImage imageNamed 来自捆绑包问题

    我使用 iOS 7 1 构建我的项目 并尝试使用存储在 images cars car 1 png 中的图像加载 UIImage 视图 所有图像都位于项目树中的图像文件夹中 如下图所示 所以它非常适合 iOS 7 1 和 Xcode 5 但
  • 解雇ViewControllerAnimated:完成:在 iOS 8 上

    在 iOS dismissViewControllerAnimated completion 会导致presentedViewController being nil 在 iOS 8 中 presentedViewController仍然指
  • FileManager 说文件不存在

    我有一个用例需要UIImage保存到文档目录 然后UIImage需要转换为PDF并保存到文档目录 转换为 PDF 的代码 var filePath NSString string self selectedMedia imagePath i
  • SQlite 查询 - 如何检索多列数据?

    我很难在网上找到一个关于使用 xcode 和 cocos2dx 从 SQlite DB 获取多个值的工作示例 这是我的sql查询 char sql query 100 sprintf sql query SELECT FROM SQList

随机推荐

  • 离子旋转器未显示

    我用 http 请求填充 Ionic 集合重复列表 但我不想将所有内容直接加载到 DOM 中 因此 我只显示其中一些项目 并在您向下滚动时添加其余项目 为此我实现了无限滚动功能 当我到达页面底部时 它应该显示一个旋转器 但它没有 这些物品至
  • 将 [字节数组] 分配给没有 Unicode 转换的 Variant

    考虑以下代码片段 在 Delphi XE2 中 function PrepData StrVal string Base64Val AnsiString OleVariant begin Result VarArrayCreate 0 1
  • 无法调用类型“UnsafeMutablePointer”的初始值设定项

    我正在尝试将 Reachability swift 更新为 swift 3 0 但在将 Reachability 实例传递给回调函数时遇到问题 这是我的片段 请注意 self 可达性等级 var context SCNetworkReach
  • 没有为名称定义标签:viewAction

    我刚刚将 JSF 2 2 2 合并到我现有的项目中 我想使用f viewAction但我收到以下错误
  • 哪种方式最适合Python工厂注册?

    这是一个关于这些方法中哪一种被认为是最有效的问题 Pythonic 我不是在寻找个人意见 而是在寻找惯用的观点 我的背景不是Python 所以这会对我有帮助 我正在开发一个可扩展的 Python 3 项目 这个想法类似于工厂模式 只不过它是
  • 如果您使用 CocoaPods,您的 .gitignore 中会包含什么内容?

    我从事 iOS 开发已经几个月了 刚刚了解到有前途的可可豆荚 http cocoapods org 用于依赖管理的库 我在个人项目上尝试过 添加了依赖项Kiwi https github com allending Kiwi到我的 Podf
  • rand() 播种与 time() 问题

    我很难弄清楚如何使用 rand 并使用 Xcode 用 time 为其播种 我想生成 0 到 1 之间的随机十进制数 该代码为我提供了元素 1 和 2 看似随机的数字 但元素 0 始终在 0 077 左右 有什么想法吗 我的代码是 incl
  • JavaScript:从 JavaScript 调用锚标记的点击事件

    我有一个带有锚标记的页面 在我的 JavaScript 中 我设置HREF锚标记的属性基于一些 if else 条件动态变化 现在我想以编程方式调用锚标记的单击事件 我使用了下面的代码 但没有成功 var proxyImgSrc CostM
  • 如何使用 Jenkins 声明性语法登录 docker?

    我的目标是使用声明性语法从 DockerHub 上的私有存储库中拉取 推送图像 我已经用 id 配置了我的凭据xxxxxxxxxxx 我知道我可以使用编程语法来做到这一点如图所示 https jenkins io doc book pipe
  • 使用 XPath 获取属性

    给定一个像这样的 XML 结构
  • 如何在 Windows 窗体中运行屏幕保护程序作为其背景?

    如何在 Windows 窗体中运行屏幕保护程序作为其背景 用户还可以在屏幕保护程序运行时与表单控件进行交互 为什么这个 我们有一个案例 需要在用户时运行 Windows Bubbles 屏幕保护程序 可以继续与表单控件交互吗 您可以使用以下
  • 开始使用 Honeycomb 进行 Android 开发 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Delphi 将面板流传输至文件

    今天我有一个关于将表单的一部分流式传输到文件的问题 在此示例中 我使用 Tmemo 而不是文件来查看流 这是我的表格 表单右上角的面板有一些控件 如标签 编辑等 使用 保存面板 按钮将面板保存在 TStream 上 这里是代码 proced
  • 从代码动态更改多个文本视图的大小(没有“磁盘上”xml 主题)?

    我有 10 个文本视图在我的代码中 我想更改所有代码的字体大小 在我的布局中我使用了 style定义通用属性 但是我不知道一旦布局出现在屏幕上如何从代码中更改它们 我不想做的是更新 AND 对象 但只写在一处 我知道我可以使用应用主题但这假
  • Python:导入模块一次然后与多个文件共享

    我有如下文件 file1 py file2 py file3 py 假设这三个都使用 lib7 py lib8 py lib9 py 目前 这三个文件中的每一个都有以下行 import lib7 import lib8 import lib
  • 将 C# 反射代码移植到 Metro-Ui

    我正在尝试移植使用反射的现有 C 类 通用工厂 但我无法编译这段代码 Type types Assembly GetAssembly typeof TProduct GetTypes foreach Type type in types i
  • GWT MenuItem 选择后失去焦点

    我有一个简单的垂直一维菜单 菜单项不是固定的 它们根据从服务器接收的数据动态变化 所以我无法为它们编写修复代码 在 css 中 我声明选定的 MenuItem 为粗体 我的愿望只是让选定的菜单项在选择后保持粗体 但是当我单击它时 它失去焦点
  • 更新 Google 地图流量层而无需重新加载页面

    我的页面中嵌入了 Google 地图 我使用 initMap js 函数来初始化地图 function initMap var map new google maps Map document getElementById t map zo
  • 在 Elisp 中如何获取变量的初始值?

    在Emacs Lisp中 是否有一个函数可以获取由以下方式初始化的符号的初始值defvar 像some function如下图所示 defvar var initial value setq var changed value some f
  • scntool:无法转换文件,失败原因:*** -[__NSSingleObjectArrayI objectAtIndex:]:索引 1 超出范围

    我正在 Xcode 9 3 下开发一个基于 iOS 11 3 SceneKit 的项目 我有几个 dae 文件格式的 3D 模型 每当我构建项目时 其中一个模型不会被复制到最终的 iOS 包中 深入研究错误 我在复制捆绑资源构建阶段收到以下