rename before merge
[xonotic/xonotic.wiki.git] / Blender_to_dpm.md
1 Blender to dpm, a mini tutorial
2 ===============================
3
4 Pre-required tools and reading
5 ------------------------------
6
7 -   Go here - http://developer.valvesoftware.com/wiki/Blender\#Installation and download the export script.
8 -   Rig / Animate as outlined here - http://developer.valvesoftware.com/wiki/Animation\_in\_Blender.
9 -   Only works with Blender 248a - 249b (2.50 is a no go).
10
11 Blender work flow
12 -----------------
13
14 -   Select your mesh and armature, export as smd. select Static Mesh. You only need to re-export this smd if the mesh or the rig change.
15 -   Now export as Animation Sequence. Preferably you have one track (and smd file) per animation. name it so you know what it is (modelname\_attack1.smd for example).
16 -   You could possibly use the "Animation Sequence ( ALL )" or "All..." options, but I haven't tried so i cant say if it works.
17
18 dpmodel work flow
19 -----------------
20
21 -   dpmodel needs and a text file telling it how to bake the mesh and animation(s) into a dpm. This text file should look something like:
22
23 \>
24
25     # save the model as model.dpm
26     model model
27     # move the model this much before saving
28     origin 0 0 0
29     # rotate the model 90 degrees around vertical
30     rotate 90
31     # scale the model by this amount, 0.5 would be half size and 2.0 would be double size
32     scale 1
33     # load the mesh file, this is stored into the dpm as frame 0
34     scene model.smd
35     # Each following (if any) smd's are animations
36     scene model_action1.smd fps 30
37     scene model_action2.smd fps 30
38
39 -   Place all smd's and the text file in the same place, execute "dpmodel whatever\_you\_named\_that\_text\_file". If all goes well you should now have a working dpm (and .framegroups file if its animated)
40
41 Caveats:
42 --------
43
44 \* Your mesh needs to have a material assigned to it. The name of the material is what dp will look for to use as texture/shader on the model/mesh/es.
45  \* Blender exports what you got selected. make sure you have the relevant (and only the relevant) objects selected.
46  \* If export script fail with a encoding error, open it in a text editor and remove the whole top comment block (lines starting with \#). There's an illegal character in there according to pyton. I haven't bothered to check closer witch one it could be.