Difference between revisions of "Common Testing"

From Elite Wiki
(Created page with "Here are some tests that can be performed regardless of the operating system. = Performance Test = The main functionality in Oolite is to process the game loop. It reads use...")
(No difference)

Revision as of 06:03, 22 April 2026

Here are some tests that can be performed regardless of the operating system.

Performance Test

The main functionality in Oolite is to process the game loop. It reads user input, processes the world including running all expansions, then renders out the world view. For meaningful tests you need to have a repeatable base. A good metric for performance is the frames per second (FPS) that Oolite can process.

If you want to check performance, you must check with fps uncapped, otherwise you are always getting v-sync fps, which is usually a low number like 60 for a 60Hz monitor, 144 for a 144Hz one etc. Add the animation_timer_interval = x; in OoliteDefaults.plist, where x is 1.0/MaximumFPSYouWantToAchieve. I usually set it to 0.001 which tells Oolite to "go for 1000 fps if you can". Then you can compare actual performance between builds. Also disable v-sync to have uncapped fps. You do this by setting the OoliteDefaults.plist key "v-sync" = NO;.

When comparing builds performance check always with more or less the same amount of entities in the system. If in one case you get 250 entities and in the other you get 70 results may be biased. Try to compare instances where the two system entity numbers are as close as possible. Shift+F shows you this info in test release builds. phkb prepared an expansion for that: CustomPopulator.oxp.zip. And as other expansions may drag on performance, make sure this is the only one you are running on top of a vanilla Oolite.

After starting Oolite, press Shift-F to show the frame rate on the screen, then fly around.