Difference between revisions of "Development:Orbital Planet Surfaces"

From VsWiki
Jump to: navigation, search
m (Forum References)
m (Development Needs and Tasks)
Line 104: Line 104:
  
 
==Development Needs and Tasks==
 
==Development Needs and Tasks==
 +
 +
Proposed near-term development roadmap:
 +
1. Replace existing textures with at least 2048x1024 textures (release quality)
 +
2. Expand the set of textures to include more variety in milky_way
  
 
List of tasks for textured surfaces: [[Development:2D_Images#Orbital_Planet_Surfaces]]
 
List of tasks for textured surfaces: [[Development:2D_Images#Orbital_Planet_Surfaces]]

Revision as of 01:15, 16 July 2006

General

This page summarizes concepts and approaches to creating planet surfaces as seen from orbit. Topics of atmospheric entry and close-to-surface planetary topology and atmospheric effects or planetary flight should be covered in a separate document.

Two main topics are covered in this document:

  • Development of textured surfaces
  • Development of procedural surfaces

References

References apply both to textured and procedural approaches if not stated otherwise.

Wiki References

Planets and Systems

Development Roadmap

Forum References

Texture Requirements

Development Tools

Examples, Including, Testing

Submission Process

Development Needs and Tasks

Improvement Proposals

External References

Textured Surfaces

Texture Requirements

Image Resolution and Formats

The planet surface graphics format recommended for the game is currently 2048x1024 in png or jpg format.

The image ratio horizontal:vertical must be 2:1, since the texture is wrapped aroud the planet sphere horizontaly around 360 degrees and vertically around 180 degrees. Necesserily, in order for the surface not to appear distorted, your pixel ratio of the generated texture must be 1.0, i.e. a circle must show as a circle when viewing the texture in an image viewer.

The vertical and horizontal sizes should be a power of two (POT). Really, NPOT (non-power-of-two) textures are possible, but really, really, really troublesome. Don't use them. Just use POT. Love the POT. The POT is the mother, the POT is the father. Trust the POT.

That leaves few options:

  • 1024x512
  • 2048x1024
  • 4096x2048
  • 8192x4096

Keeping original high resolution image (e.g. 8192x4096 or 4096x2048) versions in stock helps maintaining quality and scalability as game development progresses or typical screen resolutions rise in the future with better hardware available to the players.

Image Properties

Naturally, the images should be seamless (tilable) so that seams are not visible, neither on the stitch nor at the poles, on the rotating planet.

3d rendering software with unwrap functions is recommended, since it is extremely inefficient and troublesome to create seamless textures in 2d programs.

Development Tools

Image Manipulation Programs

GIMP

Gimp is the GNU Image Manipulation Program. It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.

Gimp already comes with a great variety of scripts and the library can be extended with your own C, Perl, Python, or Script-Fu plug-ins.

A good starting point for e.g. gas giant texture maps is the 'Solid Noise' filter.

Renderers

POV-Ray

POV-Ray (Persistence of Vision Raytracer) is a high-quality, totally free tool for creating stunning three-dimensional graphics. It is available in official versions for Windows, Mac OS/Mac OS X and i86 Linux. The source code is available for those wanting to do their own ports.

With its unique scripting approach and through a large base of available texture, pigment, and material functions there are almost unlimited possibilities to creating surface maps.

Maps can be exported by using a spherical camera setting: camera {spherical angle 360}

Blender

Blender is the open source software for 3D modeling, animation, rendering, post-production, interactive creation and playback. Available for all major operating systems under the GNU General Public License.

Scripts for blender can be created using Python. No application of blender for creation of planet surfaces is known to the author. Sumbissions are appreciated.

Including and Testing

Submission Process

Development Needs and Tasks

Proposed near-term development roadmap: 1. Replace existing textures with at least 2048x1024 textures (release quality) 2. Expand the set of textures to include more variety in milky_way

List of tasks for textured surfaces: Development:2D_Images#Orbital_Planet_Surfaces

Procedural Surfaces

At the time of writing (June 2006) no known implementation of procedural orbital planet surfaces exists in Vega Strike.

Author: pyramid