Bjorn
Bjorn
[ik-table.zip](https://github.com/bjornbytes/lovr/files/14320050/ik-table.zip) Here's the table version of the IK test. I tested this on this branch rebased onto vector-experiments, and also fixed `luax_checkendpoints` on this branch to work with tables so...
I won't be merging this as-is because I think supporting both userdata and tables at the same time makes things too difficult to document with the combinatorial explosion of function...
- Remove gravity from `lovr.physics.newWorld`! I think it's there because LÖVE did it that way, but 95% of the time I don't care about gravity and just want to use...
> * The inertia seems to be doable through the `MotionProperties.SetInverseInertia` . Thanks, didn't know about this. > While we are changing the API, we should also adapt the querying....
So far I'm kinda leaning away from the CompoundShape idea as well as the merged BoxCollider/SphereCollider/CompoundCollider/etc. object. For `CompoundCollider` you still need a way to add/remove shapes and get/set their...
From chat: - Jolt has a triangle shape, this would make it easier to add `World:queryTriangle`, which was proposed before in #689 - World:raycastAny is weird - When filtering by...
Here's my up-to-date list: - [x] `CompoundShape` or otherwise supporting multiple shapes per collider in Jolt (#762) - [x] World contact callbacks instead of "overlaps" system - [x] `lovr.physics.newWorld` takes...
I did a deeper dive on queries and came up with the following design: - World:raycast - World:raycastAny - World:raycastAll - World:collidePoint - World:collideTriangle - World:collideShape - World:castShape - World:queryBox...
A simpler raycast API would be: ```lua collider, x, y, z, nx, ny, nz, shape = World:raycast(start, end, filter) World:raycast(start, end, filter, function(collider, x, y, z, nx, ny, nz, shape)...
Simplifying further (similar to Josip's previous suggestions) - raycast with zero/nil direction could map to CollidePoint - shapecast with zero/nil direction could map to CollideShape - collideTriangle can be replaced...