default planet texture resolution

General discussion for players of Oolite.

Moderators: winston, another_commander

Post Reply
User avatar
cbr
---- E L I T E ----
---- E L I T E ----
Posts: 1409
Joined: Thu Aug 27, 2015 4:24 pm

default planet texture resolution

Post by cbr »

Tionisla
Image

So the default planet texture is rendered on the fly when one exits the station or hyperjumped.
Some I like, like Lave, but for Tionisla the land edge are pixelized.

Image

Which are mostly visible in the center, less at the edges of the planet.
Is it possible to have these default textures rendered at a higher resolution on the fly?

:)
vaxon
Dangerous
Dangerous
Posts: 109
Joined: Tue Jul 10, 2007 1:26 pm

Re: default planet texture resolution

Post by vaxon »

Is it possible to have these default textures rendered at a higher resolution on the fly?
I don't think there is. I've tried playing with planet colors in planetinfo.plist to make such things less visible. Some planets look a bit better than others, but still not good enough. Eventually, I've switched to PovRay Planets OXP.
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6645
Joined: Wed Feb 28, 2007 7:54 am

Re: default planet texture resolution

Post by another_commander »

The current planet texture resolution is a compromise between acceptable generation times and texture quality. When in the highest detail mode, the standard generated textures are of 2048x1024 resolution.

A core code change is the only way to increase the planet textures resolution. If you are willing to give it a try, then find src/Core/Materials/OOPlanetTextureGenerator.m and find this block starting at line 133:

Code: Select all

enum
{
	kPlanetScale256x256			= 1,
	kPlanetScale512x512,
	kPlanetScale1024x1024,
	kPlanetScale2048x2048,
	kPlanetScale4096x4096,
	
	kPlanetScaleReducedDetail	= kPlanetScale512x512,
	kPlanetScaleFullDetail		= kPlanetScale1024x1024,
	kPlanetScaleExtraDetail		= kPlanetScale2048x2048
};
Then change the line that reads

Code: Select all

kPlanetScaleExtraDetail		= kPlanetScale2048x2048
to

Code: Select all

kPlanetScaleExtraDetail		= kPlanetScale4096x4096
This will increase the time needed to pepare the texture. A 4096x2048 texture is four times bigger than a 2048x1024.
Post Reply