I'm aware of most if not all the available physics libraries, but not having used most of them I'm not really sure which is best for what I need.
The use case is specifically for doing LOS checks to other players/mobs on the server side which is java. The client is Unity. Players and mobs are already tracked in a spatial grid.
Ideally I'd like the simplest library possible that just let's me import meshes into it and do raycasting against them. Also the ability to setup some type of masking so I can pick what meshes the ray will stop at when hit.
I envision the whole process something like this.
1. Initialize the physics engine with the static meshes and a bunch of player meshes. Player meshes all have base coordinates of something like 0,0,0.
2. When I need to do a LOS check, I take as many player meshes as I need for the simulation and change their coordinates to match the players actual world coordinates. Then do my LOS checks. Then set the player meshes involved back to the default position.
3. Rinse, repeat
I've been looking at using one of the java jni wrappers for bullet or possibly the java ODE port. I'd like to find something more specific to the task at hand if possible, if such a thing exists.