Warzone 2100 Resurrection

PIE models

From WarzoneWiki

Jump to: navigation, search


When creating models, keep in mind that each tile is 128x128 units, and scale the model accordingly. All new models should only use triangle faces.

You can currently contribute PIE models by either using PieSlicer (only available on Windows), PieToaster, Blender using the Blender PIE plugin or the 3DS 2 PIE converter (compilation instructions). It may still be possible to use 3DSMax with the 3DSMax plugin from the original source release. Let us know if you get this working.

Here are a number of old but useful tutorials on how to use PieSlicer: http://docs.wz2100.net/utilities/notyet.html

You should take a look at the detailed explanation of the PIE format, so you know what the format itself supports and what not.

Contents

Textures

You can add support for one of two kinds of dynamic content in your model: Animation or team colours. Both are specified the same way in the texture itself - by horizontally duplicating the image. For animation, each duplication represents one frame of animation. For team colours, there should be eight versions of the image in total, each in a player colour.

Here is an example of animation frames (cyborg feet):

Image:animation-example.png

Here is an example of team colours (cyborg upper bodies):

Image:Teamcolour-example.png

Team colours should always be coloured in the colours and order shown below (and above):

Image:Team-colours.png

Animation

PIE files support animation. There are two kinds of animation - texture animation as described above, and model animation. The only model at the moment that uses model animation is the oil derrick. Model animation defines multiple meshes (levels, as defined in the PIE format) that may interact with each other. Exactly how texture animation and model animation work is specified in animation files with the extension ".ani", and these are interpreted with a flex and bison script. The .ani file describes changes to position, rotation and scale for each mesh for each defined key frame, although scale is not used. There is no support for joints or bones.

Grim recommends:

There is no etched in stone limit but I try for these:

Polygon limits

  • Bodies: under 100
  • Propulsion: under 256
  • Weapons: under 100

Texture resolution

One 256x256 texture map for each model.

Random info (please sort)

Structures

  • Unused connectors after the first will get a light attached.
  • Defensive structures will always get a teamcolour.
  • Only built structures will be animated.
  • Structures which are not defensive and have at least one poly with the animation flag will be animated. (Exception is for "DOOR" type structures.)
  • See display3d.c:renderStructure() for reference.

Features

  • Oil resources are animated at half the framerate
  • All other features will not be animated, but get teamcolours instead
  • See display3d.c:renderFeature() for reference.