Modelling
From UFO:AI
Contents |
General
3D-Models are used for items on the map (trees, cars, furniture...) - but they also be modelled via the leveleditor - as well as for the actors (soldiers, aliens, civilians) and their weapons & equiment. The main difference between misc_model and brushes (mapeditor models) are that a misc_model doesn't clip the moving automatically and doesn't throw shadows (atm)
Dimensions
- a player is 56 units tall
- 8 units equals 1 foot
- therefore, player is 7 feet tall
Creating new models
Programs
- AC3D
- Blender
- 3DSMax / Gmax
- Maya
- Cinema4D
- LightWave
- CharacterFX
- Wings3D
- XSI
- DeleD3DEditor
- MilkShape 3D
Needed models
See the Models/Maps section in the TODO/General page or any of the other TODO pages for upcoming versions for a list of needed models.
Modelformat
We use the normal Quake2 md2 format for our models. See the md2 entry for a longer description of the format and tools that you might find useful. We even support the md3 basic features in versions >= 2.1
For those who are familiar with the md3 format and the tags used to identify geometry - we even support tags for md2.
The following numbers are rough guidelines for the various upper limits. They are already a bit dated now and by no means fixed rules. You can always ask a team member if you stuff will be ok.
Texture sizes
- Weapons/cars/big trees 256x256px (some even are 64x256)
- small plants/ammo: 64x64px
Polygons
- cars: ~300-550tris
- big weapons: 200-300tris
- ammo: ~100tris
- characters: ~950tris for body and ~250tris for head
Sizes
- read about the levelflags UFO:AI uses, we should be able to hide some parts of a model if it is higher than one level in UFO:AI. This is why we have split some of the existing models into several smaller ones. This way we are able to set different levelflags for each modelpart in order to hide or display them as needed. For example streetlamps should be split into two parts.
Skins
- see /Skins article for more information
Animation
Character animations are read from anm files with the same basename as the md2. e.g.:
modelname.md2 modelname.anm
.anm file format
The format of these anm files is as following. For each animation sequence you have a line consisting of ...
- animation name
- start frame
- end frame
- fps
... that are seperated by whitespaces.
Example
death1 0 30 18 dead1 30 30 18 death2 31 61 18 dead2 61 61 18 death3 62 94 18 dead3 94 94 18 stand0 189 190 1 walk0 191 206 22 cstand0 209 210 1 cwalk0 212 227 15
List of needed animations for a character
Characters are soldiers and aliens (as opposed to civilians) that can perform actions like shooting with different weapons.
-
stand0, stand1, stand2, stand3 -
walk0, walk1, walk2, walk3 -
cstand0, cstand1, cstand2, cstand3 -
cwalk0, cwalk1, cwalk2, cwalk3 -
death1, death2, death3 -
dead1, dead2, dead3 -
run0 -
move_*, shoot_*, cmove_*, cshoot_*(replace * with the following list)
Attention: "*move_*" is actually an "idle" animation and has nothing to do with moving around.-
rifle -
biggun- Fixme: What is the difference to "rifle"? -
melee -
pistol -
pistol_d(akimbo) -
grenade -
item -
rpg
-
-
stand_menu -
stand_still -
panic0
Meaning of "c"
Every action starting with a "c" is for the same action but in crouched state.
death and dead animations
-
death#- dying animation -
dead#- The animation of the dead body (i.e. the body lying on the floor). In most cases the last frame of the matching "death" animation (effectively making it a non-animation ;))
You may have also noticed, that there are various animations for death. We use three different death animations for each model. So keep in mind, that all of your models will need this three death animations if you build animated models for UFO:AI. The same counts for all other listed animation names.
Meaning of the numbers
The number in the animation names (except for the 'death' and 'dead' ones) is the one defined with animationindex <number> in the weapon_*.ufo files.
-
0- items (mostly the 'unusable' ones like ammo), grenades -
1- rifles -
2- pistols, and 'active' items (e.g. medikit, irgoggles) -
3- rpg (shoulder mounted weapons)
You can also have a look at our *.anm files for the characters.
- body.anm. The head models don't need any *.anm files. They inherit the rotation from the tag file (e.g. body.tag) (the tag-files must have the same base name as the body).
Also see the list of animated models.
Bip-Files
Bip files are for easy transforming animation and bones to your model. See Character Animation.
Links
- GameMedia Repository
- Worldforge CVS Repository (gpled)
- Tutorial about quake2 model editor
- LowPoly Character Modelling Tutorial
- wikipedia
- Tutorials
- Max Realms
- Free and commercial tutorials
- Tutorials for Milkscape and Cinema4D
- Create MD3 Tutorial with 3DSMax]
- MD2 Information
Other programs
- UV-Mapping tool
- 3D modeling program that paint depths on to polygon models in real-time
- Sketchup.com
- 3D Object Konverter ~440 model formats are supported
- ProgMesh Mesh redrucer for 3ds files
- ngPlant Open Source plant modeling package

