- All of the mass properties have regular getters/setters
- :get/setMass
- :get/setInertia
- :get/setCenterOfMass
- You can use nil for any of the setters to set the mass property to an
"automatic" value, computed from the shape and/or other overridden
mass properties.
- If you override the mass properties, we assume you know what you're
doing and don't try to be sneaky and auto-update downstream values.
So changing the mass or center of mass doesn't auto-scale the inertia.
- If you change the shape (or enabled axes), mass data gets reset.
- You can use :resetMass to reset all 3 mass properties at once. It's
also useful if something about the underlying shape changed.
This fixes issues where some fonts would have glyphs with weird windings
and they would get rendered inside-out.
Unfortunately updating msdfgen increased its size by a factor of 2-3x.
The reason is that the glslang C API doesn't support the extra
overloads that let you provide multiple strings or the lengths for
strings. In our case our shader blobs are not null terminated, so
sending them to glslang would overrun the buffer. I forked glslang
and modified the C API to support a length parameter.
Notes:
- We can actually use a single Activity.java file for oculus/pico now
- We can unconditionally compile os_android.c on Android
- No need for including extra jars in build system
- Headset rendering is guaranteed synchronous now, no need to ref L
- Add an "android flavor" build setting to differentiate between oculus
and pico devices, since they both use OpenXR.
- Update the pico manifest to reflect their OpenXR sample
- Remove some OpenGL hacks that aren't necessary anymore