我需要灯光在我的场景中保持“静止”。到目前为止,我发现的最好的照明方法是实际使用scnView.autoenablesDefaultLighting = true
,但是,我不知道是否有任何方法可以控制某些属性。光的强度有点太亮,光的位置与我想要的位置有点不同,这些属性。
我尝试过使用各种其他灯光,对它们进行单独编码,但是由于它们作为节点添加到场景中,因此当我设置时,灯光(在这些情况下)本身会移动scnView.allowsCameraControl = true
。一旦用户开始移动相机,默认照明是唯一保持“静止”的照明。您可以访问/控制默认照明的属性吗?
我想用SceneKit
建模器创建一个 3D 场景,然后将其读入我的Metal
应用程序。我看到有SceneKit
和ModelIO
API来做到这一点,但我对如何组合在一起不清楚。
所以,我需要的是.scn
文件路径-> MDL Mesh
-> 几何 + 纹理。我不清楚如何将我的Metal
着色器与SceneKit
建模器中创建的材质同步。
我在 3D 对象大小及其 x、y、z 定位方面面临困难。我将 3D 对象添加到 中sceneView
,但其尺寸太大。如何根据我的要求减小 3D 对象的大小?谁能帮我处理 3D 对象的大小及其 x、y、z 位置?
我正在使用 Swift 进行编码。
由于标题的字符限制,请允许我详细说明正在发生的事情。
我有一个使用 Xcode 10.2.1 构建时没有警告和错误的应用程序,但我想在最新的 Xcode 11 beta 中测试它。
然而,它在构建过程中会产生错误,但奇怪的是,该应用程序正确启动并可以在模拟器上使用。
错误:
xcrun:错误:无法找到实用程序“scntool”,不是开发人员工具或在 PATH 中
最初,我认为我的应用程序名称中的空格可能是一个问题,所以我很快将其重命名为使用 _ 代替空格,但这不起作用。
删除空格后重建应用程序还会显示以下警告:
copySceneKitAssets:警告:无法复制 SceneKit 资产,因为 scntool 无法处理以下资源:/Users/someidiot/Library/Developer/Xcode/DerivedData/Build/MyAmazingApp/Products/Debug-iphonesimulator/My_Amazing_App.app/art.scnassets/Game .scn
是的,文件就在那里:
出于好奇,我清除了派生数据,以防出现问题。
rm -rf ~/Library/Developer/Xcode/DerivedData
Run Code Online (Sandbox Code Playgroud)
但是,与之前的情况相同...构建时出现警告和错误,但应用程序在模拟器上成功启动。
我在这里担心的是,如果确实有问题,我想在它成为问题之前修复它,但同时该应用程序确实会成功启动。
不幸的是,我目前无法访问 iOS 13 设备来测试硬件。
我如何开始使用Scenekit模拟火焰?
是否有一个算法预设或编辑器模板,我可以用它来探索粒子系统(SCNParticleSystem)设置的类似火焰的效果?
我是 Xcode 的初学者......我正在尝试使用带有 Scenekit=> 的 openCV c++ 来制作 AR 场景。好吧,我太乐观了。
1/我开始使用游戏的默认 XCode 模板。=> 有效!
2/没有scenekit的openCV=>有效
3/混合...
我在 gameviewController 文件中导入了一些 c++ 头文件(基本上是一个 UIViewController,里面有scenekit)。
如果我这样做,我会收到编译器错误(未定义 cstddef)。很公平,它是 C++,所以,从我读到的内容来看,我只需要将 .m 重命名为 .mm 但是,在这种情况下,我得到了链接器错误的完整列表,例如架构 arm64 的未定义符号:“_OBJC_CLASS_$_SCNAction”,引用自:
=> 我想混合目标 C 和 C++ 会更棘手,但在一个更简单的项目中,没有 Scenekit 但有非常相似的代码,否则它工作得很好。
混合它们的任何线索或指南?我应该使用 swift 吗?
非常感谢,
迈克尔