home home

downloads files

forum forum

docs docs

wiki wiki

faq faq

Cube & Cube 2 FORUM


Sauerbraten engine development

by Aardappel on 03/03/2004 05:18, 1571 messages, last message: 03/14/2008 18:53, 1351267 views, last view: 12/09/2021 04:14

This thread is for discussion of Sauerbraten coding issues / implementation ideas etc.

Go to first 20 messagesGo to previous 20 messages    Board Index    Go to next 20 messagesGo to last 20 messages

#1099: MD3 for Sauerbraten

by >driAn<. on 09/10/2005 23:29

http://sprintf.org/sauerbraten/md3.jpg

I coded md3 support for sauerbraten. Atm there is only one player- and weapon model slot since I don't know how the engine should interface with the md3 code: access using a hashtable (as in md2) or via id's.
The md3 code has a very good functionality/size ratio (IMHO) since it provides custom skins per mesh, custom anim. frames, linking, etc as in Q3A in less than 400 code lines. Sure, those customizations could be hardcoded, but actually all the models on the net require it.
If we stick with md3 in the future and make models for it, we could now discuss how exactly it should be accessible, what features it should provide, etc.

(human-readable) diff to the cvs
http://sprintf.org/sauerbraten/md3.diff

To test it, get this model package and extract it to the game-root
http://sprintf.org/sauerbraten/test-mdls.tar.bz2

/loadplayermdl lobo
/loadweapons
/weapon 0
/thirdperson 1

Again, the storage & access of the models is a hack atm.

reply to this message

#1100: Re: MD3 for Sauerbraten

by >driAn<. on 09/10/2005 23:37, refers to #1099

So, post your feedback and tell me if it fits the philosophy ;)

reply to this message

#1101: ..

by >driAn<. on 09/11/2005 00:52

..thats up to the main dev's. It's not that tragical if they don't accept it, it was fun to code it :)

reply to this message

#1102: ..

by -Rick- on 09/11/2005 01:23

Nice job :)
A good and better looking model format was something which sauer was missing :)

reply to this message

#1103: Re: MD3 for Sauerbraten

by Aardappel_ on 09/11/2005 02:09, refers to #1099

looks pretty good. There's a few things which I want to do differently, but this looks like a good base to start from.

We'll integrate it, and I will put some code in to make the whole model rendering thing a bit more format independent. I am also preparing to have a 3rd custom format for sauer, so it should all be a bit more generic. Supporting 3 model formats sounds like bloat, but all 3 model formats are compact and have their uses... who knows if in the future we don't have any md2 art anymore we can ditch it :)

If you want to keep improving on it, I can probably give you cvs access, and we can talk about what to improve.

Is the code 100% yours, or is there a base of an existing loader in there?

reply to this message

#1104: Sauerbraten campaign....

by Invincible_777 on 09/11/2005 02:44

This is my first post on this forum. I never really liked cube much. I always thought the monsters sucked. And I realize now that the res sucked. Now, with Sauerbraten, I can get 1240x1024 resolution. I forced myself to learn how to use the editor. I know have about 4 maps, which I plan to merge into one large world. I am wondering if anyone has tried this? I would love to get a hold of any new mapmodels and/or monsters etc. But what I really want most is characters/entities that dont attack you (i.e. a bartender/store keeper). If anyone would like to test my map set/campaign, please email me and let me - tell me what I need to give you for you to test it, and then let me know what you think! Thanks

reply to this message

#1105: Re: General Water Inquiries

by Gilt on 09/11/2005 03:50, refers to #1098


Steve:

1: you need to make sure that the cubes at the bottom of the pool are also set to water. you should be able to just select the cubes where the air pockets are, and change them to water.

2: yes, currents or just general pushes will most likely be added.

3: I'm sure there will be models or stuff that will be added to give the appearance of a water fall. but I don't think we'll need the cubes to be "actual water", as you can't really 'swim' in a water fall : )

reply to this message

#1106: conversions

by staffy_27 on 09/11/2005 05:57

I made a quick conversion of douze: http://cube.snieb.com/node/129

reply to this message

#1107: Re: MD3 for Sauerbraten

by Aardappel_ on 09/11/2005 05:59, refers to #1099

ok, I factored out all the md2 frame stuff out of the game code into the md2 loader, and made all the model loading/rendering stuff generic. All that remains is a little bit of integration, drian, have a look at the md3 class in md3.h, and talk to me if you have any questions.

reply to this message

#1108: Re: conversions

by makkE on 09/11/2005 12:36, refers to #1106

Staffy why do you think you can go ahead and mess my map up?!
It´s not like I vanished from the scene for 2 years or so. You should have asked me before :S :S

I´m working on a douze port myself, would you please erase your silly 30mins version? thank you.

reply to this message

#1109: Re: MD3 for Sauerbraten

by >driAn<. on 09/11/2005 13:16, refers to #1103

Thanks for the positive feedback =)

"If you want to keep improving on it, I can probably give you cvs access, and we can talk about what to improve."

Yes, I would like to continue improving it. If you want me as dev member, my sf.net id: adrian_henke at users.sourceforge.net

"Is the code 100% yours, or is there a base of an existing loader in there?"

At the beginning I used gametutorial's code and other doc's to study how exactly md3 works, this code was bloated and not OSS. So, after I learned enough about md3 I rewrote it completely from scratch.

"All that remains is a little bit of integration, drian, have a look at the md3 class in md3.h, and talk to me if you have any questions."

Ok, thanks :)

reply to this message

#1110: Re: conversions

by MitaMAN in the cave on 09/11/2005 14:33, refers to #1108

As far as converting CUBE maps to SAUER I think that everyone should ask permission from the map creator first (if the creator has no plans to convert them themselves).

Here's a good question, are maps considered "public domain", so anyone can do what they want with them?

In all of my maps readme files I state: "You MAY NOT use this level as a base to build additional levels." I doubt anyone will convert any of my SP maps, but I hope any that wanted to would ask permission first.

I may convert a few of my maps once triggered doors are implemented in SAUER and an in-process project is completed (if anyone cares).

MitaMAN

reply to this message

#1111: Re: conversions

by >driAn<. on 09/11/2005 15:30, refers to #1111

Releasing software as open source is a good thing, releasing maps under likewise terms is good too, imho.
A webpage with such a listing is not necessary, just read the readme that comes with each map.

reply to this message

#1112: Re: conversions

by Aardappel_ on 09/11/2005 23:09, refers to #1110

don't worry, I am only going to accept converted cube maps into sauer that are

a) done by the original author
b) were among the best cube maps to start with
c) are a very good conversion, meaning that they have excellent lighting, fixed entities where necessary, and fixed arches and such.

That said, I encourage people to make some kick ass conversions of the better cube maps. You should wait until you get an exe of yesterdays dev cvs at least though, since I fixed a problem with entities and gilt improved remip which makes converted maps a LOT smaller.

reply to this message

#1113: Re: MD3 for Sauerbraten

by Aardappel_ on 09/11/2005 23:24, refers to #1109

excellent. You are added to the dev cvs.

As I said, please continue the integration I have started by means of the md3 class.

Other things I see you could do:

- you do not require data in dynent until you implement animation blending. So either just remove it there and keep it local in the render function, or use the same animstate struct that is already there.

- if you want people to be able to use md3's for mapmodels, items and such, you should implement VBO's for ANIM_STATIC (look at the md2 renderer and see how its done).

- generally, you want to have a good look at the md2 class, and see if there's any functionality of it you are not supporting. The more similar they are, the more people can choose between dm2 and md3 arbitrarily for any use

- minor issue: not all your code formatting corresponds to the rest of the sauerbraten code. Consistency above everything.

- we'll have to figure out the vwep thing later.. maybe if we switch to mostly md3s for players/monsters we can just ignore that md2's don't have any. We'll need 3rd person versions of the actual cube weapons?

In general, from your code it seems like you have taken the sauer coding philosophy to heart, though there's still room for improvement. As always, fixes, making things more robust, and refactoring for better code quality are more important when you work on sauer code than new features. Please do this as much as you can. New features, unless they are dead obvious and a very high functionality : code size ratio, should be discussed here first before implemented, especially if they affect the infrastructure of the engine (i.e. stuff in the "shared" part. Features which are confined to a module are less problematic.

I guess once drian has integrated stuff, we can look at the best md3 models that are worth integrating. If you go browsing on polycount, 2 things are important:
- the author readme states that it is free for non-commercial use somehow
- the model stays within a theme. I would like to keep the main FPS game more about monsters (as the current selection of md2s), less about realism. So any models that are scifi, realistic humans, or characters from existing games/cartoons/whatever, are not applicable.

One model that I really like that I have already seen is of a dragon... I think its one of the highest rating ones in there.

reply to this message

#1114: Re: MD3 for Sauerbraten

by Aardappel_ on 09/11/2005 23:35, refers to #1113

oh and I forgot, of course md3's need animation blending too. If not, animated md3's will actually look worse than md2 whens switching between animations. Check the md2 class how its done.

reply to this message

#1115: Re: MD3 for Sauerbraten

by drian_school02 on 09/13/2005 12:31, refers to #1114

Ok, I will look at those.

"- you do not require data in dynent until you implement animation blending. So either just remove it there and keep it local in the render function, or use the same animstate struct that is already there."

Ok, but I need to add 'int anim' to the animstate struct because md3 animations can share their frames, I need to know which BOTH_/LEGS_/TORSO_ is currently active. This will make things a lot easier.

reply to this message

#1116: Re: MD3 for Sauerbraten

by Aardappel_ on 09/13/2005 20:29, refers to #1115

that's fine.

reply to this message

#1117: Mirror

by pushplay on 09/14/2005 05:13

Is there no mirror command yet or did I miss it? I was working on my map and started hitting M until I realized it doesn't actually do anything.

reply to this message

#1118: Re: Mirror

by nieb on 09/14/2005 09:58, refers to #1117

x=mirror

reply to this message

Go to first 20 messagesGo to previous 20 messages    Board Index    Go to next 20 messagesGo to last 20 messages


Unvalidated accounts can only reply to the 'Permanent Threads' section!


content by Aardappel & eihrul © 2001-2021
website by SleepwalkR © 2001-2021
42367126 visitors requested 58073476 pages
page created in 0.037 seconds using 9 queries
hosted by Boost Digital