|
|
TerraPOV is a long-term project I started a while ago. I wanted it to be
as declarative as I could have TerraPOV to do so, allowing the artist to
minimmize programming, and then have those declarations be processed by a
specialized engine. All in POV-SDL as a start point. The process of making
a lansdcape scene would be the following:
-) valuate a (large ...) set of defined parameters for the lansdcape
framework of my scene, with defaults and predefined stuff, and with
preview utilities
-) perform little and 'quite defined' programming for what cannot be
expressed with single values
-) put my objects in the scene with placement/populating macros and few
rules (user-defined code)
-) render the scene using the TerraPOV engine that sets up the scene
accordingly
The first question I had to answer was: what is a lanscape? Observing the
nature, seeing 3D masters' artwork, and using Terragen for a few tries
helped me define the main areas of what a lanscape is made of:
-) Atmosphere, sky, cloudscape and so forth
-) Terrain shaping and texturing, water
-) Vegetation (very, very vast area ...)
-) user-defined objects
I have explored more or less those areas, more for sky-related features,
less for terrain, and even less for vegetation.
In this series of aticles, I will provide some code fragments that
implement the main principles of TerraPOV, and let you use them right now.
I will use the following basic coding rules:
-) All TerraPOV-related identifiers start with 'TP_' or '_tp_', easy
answer to some 'namespace' considerations
-) Constants are uppercase: TP_SOME_CONSTANT
-) Macros and parameters are lowercase: _tp_some_macro (_parameter_1,
parameter_2). Macros shall not be considered as some kind of text
substitution, but like 'real' fonctions or procedures, with typed
parameters and returned value, and are written accordingly
Before I expose how all this assembles in a usable way, I'll describe what
are the sets of parameters I defined, first for skyscape, then for
terrain. When I have something consitent and useable for vegetation, I'll
let you know. But for vegetation, I have in mind POV-Tree and PlantStudio
to help defining a ready-to-use collections of vegetation objects, with
placement and populating macros.
Well, now, let's start in the next article with the first area: TerraPOV's
sky system: Atmosphere.
I hope I won't be too boring.... If so, let me know, I'll return to RSOCP
:p
Bruno
--
http://www.opera.com/mail/
Post a reply to this message
|
|