(Risky business, since you would depend on two major variable) If it happens AND if Unity rolls it out, you will have common ground. I think (!) ports will span out soon, including Java. If Java is already set in stone, then how much time do you have? Can you postpone this decision a "little bit"? (Nothing is wrong with Java, but serving Unity clients is not the best choice, I would roll a headless Unity instead) Is the Java server a hard requirement? I would advise against it if you still have a choice. Unfortunately even the original ODE has its Wiki down.ĭo you guys have experience on this part and what approach is best? Thank you! It basically refers to the original C++ ODE for information. ODE4j looks most promising in terms of being actively developed, but its documentation looks very poor, I didn't find proper community or support. So I am concerned it may not be possible to approximate the two simulations on client and server.
Java 3d physics engine full#
My main concern is that although physics is uniform all across the Universe, any given framework might have different set of fine-tuning params than PhysX.Īlso what is exposed by Unity to PhysX is surely not the full set of parameters that can be set. I do not need rendering capabilities except for debugging purposes while in development. jMonkeyEngine (seems actively developed).JBullet - port of Bullet to Java (seems very outdated - based on Bullet 2.72 which is like 2008).ODE4j - port of ODE to Java (actively developed).Therefore I am looking into couple of frameworks to use as plain server-side physics simulation. This is because I doubt it is ever possible to get the same simulation on client and server, not just because they are different machines but also because I can't use PhysX (or some port of it) on the server side. We are making a game with client-side prediction physics simulation and it also has an authoritative server written in Java which needs to correct whenever the client simulation goes off too much.īy "too much" I mean by some margin of error which needs correction.