Did you make any progress figuring this out? I'm pretty sure a version of this bug existed in iOS 16. In iOS 16 we've had a problem where randomly the normal map seems to become corrupted. After weeks of tracking it down it seemed to be related to 4 things interacting badly: SCNSkinner, SCNMorpher, normal maps and lights which cast shadows. The only "fix" was to remove normal maps or disable all shadow casters. Ultimately, because it was pretty rare we just lived with it.
Now with iOS 17 we see exactly the problem you're describing-- models that have both a normal map and a SCNMorpher will render with what appears to be totally corrupted normals. When I export the scene from our app as a SceneKit scene file, the problem still exists and is visible in the Xcode scene editor. [Here's the scene file for anyone who's curious: (https://drive.google.com/file/d/1XEZqvU1LwkCdvt96MXt3dKSSFtLOPf4-/view?usp=share_link)]
What super interesting is I took Apple's game project template from Xcode 15, and tried adding a normal map and morpher to the spaceship model, and in that project it seems to work. So that gives me hope that there’s still something that can make the combination work.
Are you using any 3rd party libraries to load your models? Do you generate / assemble the model in code?
Post
Replies
Boosts
Views
Activity
I had this problem and tested it... Xcode build 12A7209 from the App Store crashes whenever I open the documentation browser. Xcode build 12A7208 from the download 'Xcode_12_GM_seed.xip' works fine. Just throw this on the pile of problems with the App Store I guess =)
Because the downloads section is kind of hidden, here's how to find it: On the developer site go to your account, choose 'Downloads' from the sidebar, then look under the top navigation bar on the downloads page and there is a tiny 'More' link in the top left (next to 'Beta' and 'Release'.) Click 'More' and you'll get the real list of downloads.
I hit the same error and out of curiosity I created a new empty project, and discovered that it failed to build as soon as I added "import AVFoundation" to any source file... so it looks like a bug in the macOS SDK.
I looked at the .swiftinterface file for AVFoundation (for my build platform it was 'AVFoundation.swiftmodule/x86_64-apple-macos.swiftinterface') and the problem seems to be that 'extension AVAudioSession.Location' is not explicitly marked as unavailable on macOS. Because it's an extension to AVAudioSession and AVAudioSession is marked as unavailable it won't compile.
So I added '@available(OSX, unavailable)' in two different places where the extension to AVAudioSession is defined. So where it looked like this:
@available(iOS 7.0, watchOS 2.0, tvOS 9.0, *)
extension AVAudioSession.Location {
I changed it to this:
@available(OSX, unavailable)
@available(iOS 7.0, watchOS 2.0, tvOS 9.0, *)
extension AVAudioSession.Location {
That got everything compiling and working again.