Beginner question

Hello, I am new to jMonkey and was wondering if some veteran users could answer questions regarding the engine’s capability/suitability for a possible project.

The environment I would like to create would allow the player to walk, drive or fly on a realistic scale with no loading screens. The main concern is one of world/scene size. Typically games limit their max size to about 16 square miles (eg. Skyrim) because of floating point errors. However this is to small for realistic flying (the average jet fighter would overfly Skyrim in 15 seconds without even trying to go “fast”).

Would floating point errors be an issue or does jMonkey do a workaround in the background. If it does not then would it be hard to code a workaround.

float would be an issue.

You will need to keep track of your game objects in double precision and then keep the camera stationary. Your visualization objects would move relative to the camera and therefore always be in decent float range… you would have to convert their double precision world coordinates to local camera-relative floats.

1 Like

And note: the float thing is an OpenGL limitation… so no matter what you do you will need to do camera-relative positioning in float. It’s not an engine issue, really.

1 Like

Depending on how your code looks partitioning might work as well.

1 Like

Also note that if you are at the speed fo a jetfighter, you wont notice aroun 80% of skyrim not being present, and everything done on a 1/80scale for display

Live rendered terrain with 256km² in jme ,1 unit = 1meter, heightmap precision 16 bit, one sample each 4 meters (Actually its rendered twice, one in the live sene and once in the preview)

So you i would say possible.

1 Like

@pspeed
Thanks I didn’t think about it from that perspective. Essentially what you are saying is don’t move the camera/player in the world/scene rather move the scene around the camera.

@normen
I intend to break the map up for level of detail reasons if that’s what you meant.

@Empire Phoenix
Nifty a work example!