SceneKit:更改着色器参数对对象没有影响
SceneKit: Changing shader parameters have no effect on object
我在 Maya 上创建了一个对象并导出到 dae
文件。该对象是一个包裹在纹理中的圆柱体。在 maya 上创建并导入 SceneKit 的着色器是具有以下特征的 Phong:
我使用以下参数向场景添加泛光灯:
圆柱体似乎被光线吹过,过度照明。但只是那个圆柱体。场景中的其他对象看起来很好。
当我尝试更改灯光和对象着色器上的任何参数时,我在界面构建器预览中看到更改,但当我 运行 iPhone 上的应用程序时没有效果。是的,我已经尝试清理 Xcode 缓存并在构建之前从 iPhone 中删除应用程序。没有变化。
有什么想法吗?
iPhone 的默认渲染 API 是金属。尝试将其切换到 OpenGL。在 Interface Builder 中,select 您的 SCNView,您将看到 "Rendering API" 的弹出窗口。或者您可以将布尔值为 YES 的 PrefersOpenGL 键添加到您的 Info.plist:https://developer.apple.com/library/ios/qa/qa1904/_index.html
这是 Interface Builder 控件。 Select 你的 SCNView:
我在 Maya 上创建了一个对象并导出到 dae
文件。该对象是一个包裹在纹理中的圆柱体。在 maya 上创建并导入 SceneKit 的着色器是具有以下特征的 Phong:
我使用以下参数向场景添加泛光灯:
圆柱体似乎被光线吹过,过度照明。但只是那个圆柱体。场景中的其他对象看起来很好。
当我尝试更改灯光和对象着色器上的任何参数时,我在界面构建器预览中看到更改,但当我 运行 iPhone 上的应用程序时没有效果。是的,我已经尝试清理 Xcode 缓存并在构建之前从 iPhone 中删除应用程序。没有变化。
有什么想法吗?
iPhone 的默认渲染 API 是金属。尝试将其切换到 OpenGL。在 Interface Builder 中,select 您的 SCNView,您将看到 "Rendering API" 的弹出窗口。或者您可以将布尔值为 YES 的 PrefersOpenGL 键添加到您的 Info.plist:https://developer.apple.com/library/ios/qa/qa1904/_index.html
这是 Interface Builder 控件。 Select 你的 SCNView: