Back to the Vavoom Forum Archives


Forum

[Not a bug] [SVN] 3D models not loaded

Fri, 23 Mar 2007 17:01:54

scen

With the current SVN version MD2 3D models (using Vavoom models pack) aren't loaded anymore. Enhanced music and textures works fine, instead. [EDIT] I've tried with a new configuration, created from scratch. Same issue on both x86 and AMD64 Linux systems.
Sun, 25 Mar 2007 11:46:54

Janis Legzdinsh

It's because current SVN version needs model definition files. They will be provided with the new versions of model packs.
Mon, 26 Mar 2007 06:58:31

scen

Ok! <!-- s:) --><img src="{SMILIES_PATH}/icon_smile.gif" alt=":)" title="Smile" /><!-- s:) --> (i've had some suspicion about this, indeed <!-- s:P --><img src="{SMILIES_PATH}/icon_razz.gif" alt=":P" title="Razz" /><!-- s:P --> ) http://vavoom.svn.sourceforge.net/viewvc/vavoom/trunk/vavoom/source/r_model.cpp?sortby=file&view=log
Revision 1940 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jan 3 21:52:10 2007 UTC (2 months, 2 weeks ago) by dj_jl
File length: 23617 byte(s)
Diff to previous 1937

Removed support for old style model definitions.

Revision 1937 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jan 3 20:54:49 2007 UTC (2 months, 2 weeks ago) by dj_jl
File length: 23562 byte(s)
Diff to previous 1936

Implemented support for defining model replacements for a class states entirely in the model definition file.


Are there any tech-notes about this new feature? I'd like to give a look (so i could try to hack some model <!-- s8) --><img src="{SMILIES_PATH}/icon_cool.gif" alt="8)" title="Cool" /><!-- s8) --> )
Mon, 26 Mar 2007 18:50:32

Janis Legzdinsh

Here's example script for zombieman (save it as basev/doom/models/monsters/trooper/model.xml):
<?xml version="1.0" encoding="UTF-8" ?>
<vavoom_model_definition>
	<model name="base">
		<md2 file="models/monsters/trooper/base.md2">
			<frame index="0" />
			<frame index="1" />
			<frame index="2" />
			<frame index="3" />
			<frame index="4" />
			<frame index="5" />
			<frame index="6" />
			<frame index="7" />
			<frame index="8" />
			<frame index="9" />
			<frame index="10" />
			<frame index="11" />
			<frame index="12" />
			<frame index="13" />
			<frame index="14" />
		</md2>
	</model>
	<model name="death">
		<md2 file="models/monsters/trooper/death.md2">
			<frame index="0" />
			<frame index="1" />
			<frame index="2" />
			<frame index="3" />
			<frame index="4" />
			<frame index="5" />
			<frame index="6" />
			<frame index="7" />
			<frame index="8" />
		</md2>
	</model>
	<model name="gibs">
		<md2 file="models/monsters/trooper/gibs.md2">
			<frame index="0" />
			<frame index="1" />
			<frame index="2" />
			<frame index="3" />
			<frame index="4" />
			<frame index="5" />
			<frame index="6" />
			<frame index="7" />
			<frame index="8" />
		</md2>
	</model>
	<class name="Zombieman">
		<!-- Spawn -->
		<state index="0"  model="base"  frame_index="0" />
		<state index="1"  model="base"  frame_index="1" />
		<!-- See -->
		<state index="2"  model="base"  frame_index="2" />
		<state index="3"  model="base"  frame_index="3" />
		<state index="4"  model="base"  frame_index="4" />
		<state index="5"  model="base"  frame_index="5" />
		<state index="6"  model="base"  frame_index="6" />
		<state index="7"  model="base"  frame_index="7" />
		<state index="8"  model="base"  frame_index="8" />
		<state index="9"  model="base"  frame_index="9" />
		<!-- Missile -->
		<state index="10" model="base"  frame_index="10" />
		<state index="11" model="base"  frame_index="11" />
		<state index="12" model="base"  frame_index="12" />
		<!-- Pain -->
		<state index="13" model="base"  frame_index="13" />
		<state index="14" model="base"  frame_index="14" />
		<!-- Death -->
		<state index="15" model="death" frame_index="0" />
		<state index="16" model="death" frame_index="1" />
		<state index="17" model="death" frame_index="2" />
		<state index="18" model="death" frame_index="3" />
		<state index="19" model="death" frame_index="4" />
		<!-- XDeath -->
		<state index="20" model="gibs"  frame_index="0" />
		<state index="21" model="gibs"  frame_index="1" />
		<state index="22" model="gibs"  frame_index="2" />
		<state index="23" model="gibs"  frame_index="3" />
		<state index="24" model="gibs"  frame_index="4" />
		<state index="25" model="gibs"  frame_index="5" />
		<state index="26" model="gibs"  frame_index="6" />
		<state index="27" model="gibs"  frame_index="7" />
		<state index="28" model="gibs"  frame_index="8" />
		<!-- Raise -->
		<state index="29" model="death" frame_index="5" />
		<state index="30" model="death" frame_index="6" />
		<state index="31" model="death" frame_index="7" />
		<state index="32" model="death" frame_index="8" />
	</class>
	<class name="DeadZombieman">
		<!-- Spawn -->
		<state index="0"  model="death" frame_index="4" />
	</class>
</vavoom_model_definition>
You will also need a <game_dir>/models/models.xml file that includes it like this:
<?xml version="1.0" encoding="UTF-8" ?>
<vavoom_models_list>
	<!-- Monsters -->
	<include file="models/monsters/trooper/model.xml" />
</vavoom_models_list>

Back to the Vavoom Forum Archives