“C:\troydp\mapsrc”
|
Rawdata Maps
The "mapsrc" directory contains source Hammer maps
| .VMF |
Hammer map (run_hammer.bat) |
| .VMX |
automaticly generated by Hammer |
After the map is compiled using the Vbsp tool, the BSP files goes in the
gamedata ("troydp/maps")
Note: Vrad will create a BSP, LIN, LOG and VMF into the gamedata after compiling
the VMF in the rawdata. Please, only check-in the VMF that is in the rawdata
and the BSP that is in the gamedata. The LIN file is a pointfile loadable
in Hammer and is usefull to visibly find leaks inside a level. Map contraints :
| number of units |
1 unit = 1 cm.
Maximum x,y,z = +/-16635 units |
| number of brushes |
tbd |
| props |
Overview
of Prop Types (Number in level :)
prop_detail: 10 0000's
prop_static: 1000's
prop_dynamic: 100's
prop_physics: 10's-100's
prop_ragdoll: less than 10 |
| cubemaps |
Cubemaps
- usage : NPC or player : 64 units above the ground
- usage : static world geometry : 16 units away from all brushs
surfaces
|
| 3D skybox |
1:16 scale |
It's important to understand that Doom3 or Unreal2 engines both display
drastically more polygons onscreen at any given time than Half-Life 2
does. A massive portion of the latter game's prettiness comes from some
seriously topnotch texture work. The Brushes are flat-out quake3 style
bsps, so no .bsp maps should contains detailed static brushes. Those should
be models instead and visually enhanced with high-resolution textures
and materials with specific shaders (normal, bump maps, specular effects).
Optimisations and must-reads:
- PVS : Improving
Performance and Controlling Visibility.
- Avoid leaks at all cost : Leaks
Explained (causes, Pointfile .lin).
- Command console for optimizing : Optimizing
and Checking Your Map (+showbudget).
|
“C:\troydp\materialsrc”
|
Rawdata Materials
The "materialsrc" directory contains .tga texture/map and the
textfile to compile it into .vmt/.vtf
| .TGA |
TGA file (16, 24 or 32-bits in depth).
They must be 2D and a power of 2 pixels per dimension
(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 or 2048 pixels) |
| .TXT |
Editable textfile used to compile the material. Must
be the same name as the .tga. The
material creation procedure
|
All the materials shared between maps(BSP) are put in the directory “materials/maps”
The materials for models are put in categories such as player, weapon,
vehicles. The files are then put in the directory corresponding to the
name of the model.
After the material is compiled using the Vtex tool, the VMT and VTF files
goes in the gamedata ("troydp/materials")
into the same directory as in the rawdata.
Material contraints :
| characters |
Maximum : 5 materials per character.
Normal mapping and specularity on metalic parts is recommanded for
characters to enhanced details.
| face |
maximum : 512x256 |
| rest of body |
maximum : 1024x1024 |
See the materials in "models/humans" as an exemple.
|
| weapons |
maximum : 512x512.
Depends largely on the weapon type/size. The important thing is
to be carefull with VRAM usage (not using huge textures for a little
model).
|
| props |
maximum : 512x512
Depends largely on the props type/size. The important thing is to
be carefull with VRAM usage (not using huge textures for a little
model).
Bump mapping recommanded for large props. |
For weapons, we must respect this naming convention for models and materials
:
| p_(weapon) |
"player" model, weapon you see in hands of
other players. |
| v_(weapon) |
"view" model, weapon as it looks in your own hands |
| w_(weapon) |
"world" model, weapon as it looks when lying on the ground |
|
“C:\troydp\modelsrc”
|
Rawdata Models
The "models" directory contains the source scene and the SMD,
QC and QCI files.
The models can be modeled/animated with different packages and then be exported
as SMD files.
| .MAX |
3D Studio Max 6.0 and up. Character Studio 4.0 and up
for rigging.
The official SMD exporter is coming soon from Valve. For now there's
PerPixel's
SMD exporter for 3dsMax. It support the Physique modifier on editable
mesh, but not on editable poly. Please compress your scene. |
| .SCN |
XSI | Softimage for Half-life 2 (free). http://www.softimage.com/products/exp/HL2/
|
| .MB |
Maya 6.0 and up binary scene. To install the SMD importer/exporter
for maya, copy the content of "\Valve\Steam\SteamApps\User\sourcesdk\maya\4.5"
to your folder "Documents and settings\UserName\My Documents\Maya\6.0"
where UserName is your PC's login. |
Important documentation on models : Modeling
Overview
| .SMD |
Files exported from the modeling package. 3 kinds of
SMDs :
| Reference SMD |
Model informations : mesh, skeletal structure,
textures, vertex skinning, no animation its the default pose.
Naming convention : (model).smd |
| Physbox SMD |
Volume for collision detection, convex hull, vertex skinning.
Naming convention : (model)_phys.smd |
| Animation SMD |
Animation data that matches the skeletal model. Naming
convention : (model)_(animation name).smd |
For one animated model, there may be one Reference SMD and one Physbox
SMD but plenty of Animation SMDs. Its important to respect the naming
convention described above. |
| .QC |
A table of content for model projects. Complete list of the asset
(SMDs and Materials) needed by StudioMdl to produce the finished model.
Also, QC files are basic scripts used to trigger effects (glows, particles),
animations and sounds for a given model. QC
file Commands.
Naming convention : (model).qc |
| .QCI |
Only for animated character models. |
Documentation on Rigging
and Physboxes
and Ragdolls
Afterward, the model files (SMD, QC, QCI) are compiled using StudioMdl
(Compiling
Models Basics) to output the resulting files (MDL, VTX, PHY, VVD).
They go in the gamedata ("troydp/models").
Model contraints :
Since we are a multiplayer mod, we have to respect polygon constraints
because it may be a lot of units on screen at the same time. Normal mapping
is favorised rather than a high polycount on every models.
| character |
Polygons : maximum 4000. Bones
: maximum 56. (15 for the Ragdoll)
Hit boxes : maximum 20.
Attachments : maximum 10. |
| p_(weapon) |
Polygons : maximum 700.
This number will be lower for melee weapons. |
| v_(weapon) |
Polygons : maximum 3000. (Including
the hand(s)). Bones
: maximum 30. (15 for the Ragdoll)
Hit boxes : maximum 10.
Attachments : maximum 5. |
| w_(weapon) |
Polygons : maximum 700.
This number will be lower for melee weapons.
|
| props |
Polygons : maximum 4000.
This number will be lower for smaller props.
As a rule of thumb, you shouldn't model individually any props smaller
than 1" cubed. |
HL2 Polycounts :
Soldiers: 4682, Police: 3852, Resistance: 4976, Zombie: 4290, Helicopter:
6415,
Strider: 6444, Alyx: 8323
|