md3modeldef - project haltet

Any utility that assists in the creation of mods, assets, etc, go here. For example: Ultimate Doom Builder, Slade, WadSmoosh, Oblige, etc.
Forum rules
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
User avatar
CBM
Posts: 373
Joined: Wed Oct 09, 2019 3:39 am
Graphics Processor: nVidia with Vulkan support
Location: The Shores of Hell

md3modeldef - project haltet

Post by CBM »

humble beginning of md3 expansion for md2modeldef

Code: Select all

Quake 3 model identifier found...
done...
---------------------------------------
HEADER MD3 FILE: bolt1.md3
---------------------------------------
ident: 860898377
version: 15
---------------------------------------
path: models/players/model/model.md3
flags: 0
---------------------------------------
num_frames: 30
num_tags: 0
num_surfaces: 2
num_skins: 0
---------------------------------------
offset_frames: 108
offset_tags: 1788
offset_surfaces: 1788
offset_end: 16652
---------------------------------------

C:\gcc-prj\md2modeldef>
Last edited by CBM on Tue Oct 13, 2020 5:28 am, edited 1 time in total.
User avatar
CBM
Posts: 373
Joined: Wed Oct 09, 2019 3:39 am
Graphics Processor: nVidia with Vulkan support
Location: The Shores of Hell

Re: md3modeldef

Post by CBM »

update

a md3 commandline tool that makes gzdoom data files from information taken from quake 3 player models seems possible now

I can read an md3 file by using md2modeldef as a template and then altering data structures to match md3 models

the plan...

md3modeldef.exe (dir-name) (actor-name) (template)

dir-name: directory tha holds all needed source files
actor-name: the name the actor should have in GZDoom
template: the doom 2 monster that will serve as a template for the new monster or doomplayer

read...

animation.cfg
upper.md3
lower.md3
head.md3
weapon.md3
default_* skin files

write...

modeldef file (modelname_modeldef.txt)
decorate file (modelname_decorate.txt)

copy...

all needed files to a dir that is then ready for making a pk3 file

Code: Select all

Quake 3 model identifier found...
---------------------------------------
 tags...
---------------------------------------

---------------------------------------
MD3 org X: 2.784966
MD3 org Y: 1.014371
MD3 org Z: 22.079926
MD3 axis 1 X: 0.359519
MD3 axis 1 Y: 0.932144
MD3 axis 1 Z: -0.043052
MD3 axis 2 X: -0.932945
MD3 axis 2 Y: 0.358125
MD3 axis 2 Z: -0.036887
MD3 axis 3 X: -0.018966
MD3 axis 3 Y: 0.053427
MD3 axis 3 Z: 0.998392
MD3 tag number: 1
MD3 tag name: tag_head
---------------------------------------

---------------------------------------
MD3 org X: 28.310251
MD3 org Y: -21.763365
MD3 org Z: 23.377178
MD3 axis 1 X: 0.762715
MD3 axis 1 Y: -0.442234
MD3 axis 1 Z: 0.471906
MD3 axis 2 X: 0.332522
MD3 axis 2 Y: 0.893992
MD3 axis 2 Z: 0.300344
MD3 axis 3 X: -0.554703
MD3 axis 3 Y: -0.072158
MD3 axis 3 Z: 0.828914
MD3 tag number: 2
MD3 tag name: tag_weapon
---------------------------------------

---------------------------------------
MD3 org X: 0.000000
MD3 org Y: 0.000000
MD3 org Z: 0.000000
MD3 axis 1 X: 1.000000
MD3 axis 1 Y: -0.000000
MD3 axis 1 Z: -0.000000
MD3 axis 2 X: 0.000000
MD3 axis 2 Y: 1.000000
MD3 axis 2 Z: 0.000000
MD3 axis 3 X: 0.000000
MD3 axis 3 Y: -0.000000
MD3 axis 3 Z: 1.000000
MD3 tag number: 3
MD3 tag name: tag_torso
---------------------------------------

---------------------------------------
HEADER MD3 FILE: upper.md3
---------------------------------------
ident: 860898377
version: 15
---------------------------------------
path: models/players/bender/bender.md3
flags: 0
---------------------------------------
num_frames: 158
num_tags: 3
num_surfaces: 1
num_skins: 0
---------------------------------------
offset_frames: 108
offset_tags: 8956
offset_surfaces: 62044
offset_end: 517140
---------------------------------------

C:\gcc-prj\md3modeldef>
the MD3 format:
https://www.icculus.org/homepages/phaet ... ormat.html

when I have something that can actually be useful then I'll post links to a download
User avatar
CBM
Posts: 373
Joined: Wed Oct 09, 2019 3:39 am
Graphics Processor: nVidia with Vulkan support
Location: The Shores of Hell

Re: md3modeldef

Post by CBM »

new update

unless the GZDoom engine can have seperate offsets for a model with multiple models then it puts a limit on how automated importing of quake 3 player models to gzdoom can be

the head, upper and lower parts all need to align, this is normally done by the tags that I can read, but... without the option of individual offsetting each, then transformation is required using a 3D model editor

example:

Image
User avatar
CBM
Posts: 373
Joined: Wed Oct 09, 2019 3:39 am
Graphics Processor: nVidia with Vulkan support
Location: The Shores of Hell

Re: md3modeldef

Post by CBM »

I found out how to use surfaceskin in modeldef

so the offset problem can be solved by this

1) merge head+upper+lower
2)use tag data to guessimate offset and scale
3)write data based on merged model

Return to “Creation, Conversion, and Editing”