I'm having the most frustrating time trying to get SceneKit to render custom geometry on Monterey on an MBP M1Max. After some mucking about, I'm starting to suspect that the internal floating point representation has shifted to 64-bit?!? I'm wondering if this is also the case for element buffers, because rendering with UInt32 element arrays is FUBAR. Unfortunately, SceneKit won't allow me to create 64-bit element arrays.
Is SCNVector3 now 64 bit?
Oscar Mike Golf
No, SceneKit and Metal are not 64-bit. Just SCNVector3 is. My difficulty was that I was using SCNGeometrySource(data: ...) rather than SCNGeometrySource(vertices: ...) thinking that because the former has more parameters, that it allows the developer to retain more control over how vertices are laid out in memory. How was I supposed to know that if I wanted to pass my vertex array in a Data object, that I could not use SceneKit's OWN SCNVector3 structure as the underlying data format, but that I had to roll my own 32-bit floating point vector structure?!?
Hey Apple ... documentation is your friend.