Page 2 of 3

Posted: 2004-12-21, 14:08
by Thrawn
I think smd would be better because every modelling program supports it. SMD is not old - only the system with mdl, the way Ca3DE uses weapons and the bones structure of the files are old, and those things can be changed!

I hate to learn to use a new specific modelling programm to bring models into Ca3DE...

The only question is, if you are allowed to licence your engine if you use a specific format like SMD that was developed? for a game (Half Life).

:?: :?: :?:

Posted: 2004-12-21, 14:45
by scott
Well as far as I know, .smd model format was created by valve so they own the rights to the format. Carsten probably couldnt use it without paying some sort of licensing fee, considering he is making a commercial engine. I doubt they would license out their formats.

I have read that people have wanted to use quake 3 .bsp format in their commercial engines but cant because of ownership. I'm betting the situation is the same here.

Really I think Carsten ought to invent his own format especially for the engine. Trouble is he has so much work stacked up :)

Posted: 2004-12-21, 15:06
by Carsten
Uh! I always had assumed that smd was more or less a native format of 3D Studio Max. I just cross-checked with Google, to find that indeed I was wrong. :oops:

Thus, you are of course right: smd is no good use for Ca3DE. Either an own easy-to-use exporter is required, or the native file formats of the most common programs (3DS Max, XSI, ...) should be supported.
ASE is probably a good start in that direction, but for anims we'll clearly need something in addition to that.

For learning from others, I think a good start for investigation was to learn what software and what steps exactly do Doom3 and HL2 take for their models. Prepared with that knowledge, it should be feasible to outline an own format...

Posted: 2004-12-21, 15:48
by scott
well as far as I know. with HL2 doom3, unreal2004 etc. the way they have there skeletal anim systems set up is, first they export a base file which contains data for the characters bones, mesh, uv mapping, material details, vertex assignment, Vertex weights, mesh surface properties etc then each animation is exported out. eventually all these files get compiled into one file (Except doom3) Valve uses .smd for the mesh and animation data. Unreal uses .psa for anims and .psk for models. Doom3 uses .md5mesh and .md5anim. You probably already know all of this :)

Posted: 2004-12-24, 22:03
by John
For static/world models, ase is good start. Doom 3 still has some mapobjects in ase format, but they now have .lwo (Lightwave format) in addition to the ase models. Most modeling programs (including wings and blender) can export to 3ds or wavefront .obj format.

Alias FBX is another format that might be worth looking at. http://www.alias.com/eng/products-servi ... ndex.shtml. I don't however know if it is royalty free and if it would be suited to a 3d/game engine environment, or if it's used mainly to move 3d data between different software. There is exporters for most 3d packages and tools to convert from .3ds and .obj.

For character models and animation, it might be worth investing in our own model format. The md5 format looks pretty "simple", and easily understandable. One can get an idea of how the format works simply by looking at the file in a text editor. We would probably aim for something similiar to this, and release the specs of the format with the engine.
Therefore, if your software doesn't support the format, you can simply write your own export script/plugin. We could also write a converter that converts from a common format (.3ds, .obj, .fbx) to our own format.

Posted: 2004-12-25, 11:11
by Carsten
John wrote:[...] The md5 format looks pretty "simple", and easily understandable. One can get an idea of how the format works simply by looking at the file in a text editor. We would probably aim for something similiar to this, and release the specs of the format with the engine.
Yes. I still have to familiarize with all these formats in greater depth, but it seems that md5 is well understandable, well "accessible", and that something similar can be created from scratch without too much trouble.

For static (non-animated) models, maybe the best way is (besides .ase) to add importers for .3ds, .obj and .lwo, and stay with them, i.e. no mandatory transformation into the future own format that will be used for animated models.

Posted: 2004-12-25, 12:59
by Thrawn
Personally I would like to have an external program exporting to a ca3de format from a source format that every model editor supports like 3ds, smd? etc

Then Ca3De will be better supported by all modelling programs :wink:

Posted: 2004-12-26, 11:37
by Carsten
Stormtrooper wrote:Personally I would like to have an external program exporting to a ca3de format from a source format that every model editor supports like 3ds, smd? etc

Then Ca3De will be better supported by all modelling programs :wink:
Well, we will probably not be able to identify a single file format that is supported by all major modelling programs. Thus, wouldn't you agree that it was the easiest if Ca3DE simply imported several formats, namely those of the major programs (like ase, 3ds, lwo, obj, xsi)? For non-animated models, no additional intermediate steps should and would be required.
Only for animated models would we need something intermediate (similar to the concept of md5s).

Posted: 2004-12-26, 12:34
by Thrawn
Oh yes, that's a good idea, but no engine does that because its a lot of work for the programmer. :wink:

But if you have the time and you want to, it's definetly a good solution.

Posted: 2004-12-26, 21:14
by Shadow
i like the idea of a side program converting to ca3d format. just support like 3ds and lwo and im pretty sure that would cover 95% of the modeling world. i currently use wings and then use a converter to make smd so any1 can get wherever they want if they just use their imagination

Posted: 2005-01-08, 11:54
by Thrawn
Just a question: Who says that ASE, 3DS etc are free to use in engines?

Yes, you are right Shadow, but: As I know, 3DMax has different 3DS exporter for their different versions so this only would cause problems. I think the easiest way and best way would be an external Windows API :roll: program where you have to select an ASE (or others ?too?) and that gives you as output an Ca3DE file. Then theres no problem with licensing,only the sound system, but thats bot thaaaaat bad :wink:

Posted: 2005-01-08, 15:33
by scott
Have you guys discussed how your going to handle LOD's for characters etc?

Posted: 2005-01-08, 17:04
by Thrawn
I'm working on an proposal. I'm very buzy atm but I am sure that i'll post it within the next 4 weeks!

Posted: 2005-01-08, 20:32
by Shadow
i tell u how i handle lod for characters. FULL POLYS ALL THE TIME!!! lol but thats only cause my octree is tuned really nice and the terrain has like 4 lod levels and other things like that

Posted: 2005-01-10, 11:03
by Carsten
scott wrote:Have you guys discussed how your going to handle LOD's for characters etc?
Well, LoD for terrains is already implemented, as it is inherent to the technique. LoD for patches is also straightforward.
LoD for characters and models is an entirely different matter. The simplest approach is to have the artist create several versions of a character that represent discrete LoD levels. The engine would then select the appropriate LoD level for each frame. HL2 uses this technique, too, but it has of course the disadvantage of visible "popping" between two subsequent LoD levels.