QuakeC Animation "Tree"
Moderator: InsideQC Admins
24 posts
• Page 2 of 2 • 1, 2
mh wrote:JasonX wrote:the MD3 format does not support +10,000 polys models very well
In what sense? Have you tried changing the value of r_batchmode in DP? By default I believe it uses triangle strips (possibly with degenerate triangles) which is an utter waste of time on any reasonably modern (within the last 10 or so years) hardware; indexed traingle lists are now the optimal render path and have been for quite a long time. Change r_batchmode to 2 and see how things go.
Uhh, DP has never used triangle strips and contains no code to support them (I switched away from glquake mesh files within the first year, too), which will be a problem on the Xbox 360 port where they are essential for performance for some bizarre reason - not even properly optimized vertex cache will do, has to be triangle strips with restarts
r_batchmode 0 issues one glDrawRangeElements(GL_TRIANGLES, ...) for each surface.
r_batchmode 1 issues one per group of consecutive surfaces using the same texture.
r_batchmode 2 issues one per texture (non-consecutive surfaces are merged via memcpy into one index array).
However r_batchmode is gone in the current beta and autobuilds, as I rearchitected the engine to be easier to support D3D (at this time I have some graphics on the screen but it's pretty broken, getting there...), it always functions in mode 2 now (in other words, around 50 Draw calls per frame for 3000 surfaces, most of it hud and other text overlays).
P.S. Would love to chat with you about "things to watch out for" in D3D porting on IRC sometime.
mh wrote:DP however has a fatal flaw in that it uses 32-bit indexes (this FF also exists in Q3A); these are not supported on all hardware so your OpenGL implementation might be going through software emulation just so that it can pass conformance testing. LH really should switch to 16-bit indexes here...
DP switched to 16bit indexes (where possible - on excessively huge maps it will still use 32bit) about a year ago.
mh wrote:But anyway, I get the feeling that this problem may be more a function of the renderer than it is of the format. And who has models with > 10,000 tris anyway?
Nexuiz has 4000-5000 tris player models, skeletally animated, Vermeulen once told me he tried converting them to md3 and they came out 30MB each rather than 400KB as skeletal.
Note: modern games like Final Fantasy XIII have closer to 25000 tris player models if I'm remembering correctly from a conversation with Rich one time.
- LordHavoc
- Posts: 322
- Joined: Fri Nov 05, 2004 3:12 am
- Location: western Oregon, USA
I see that animation blending seems possible, but not really practical. The workflow is a real pain.
But, what about something similar to what is done in HL1 and HL2? There are animations for each possible movement in the game (crouched: moving left, right, back, forward. standing, walking, walking left, walking right, etc.) How can we do this on QuakeC? Any examples? Tutorials on this?
But, what about something similar to what is done in HL1 and HL2? There are animations for each possible movement in the game (crouched: moving left, right, back, forward. standing, walking, walking left, walking right, etc.) How can we do this on QuakeC? Any examples? Tutorials on this?
- JasonX
- Posts: 411
- Joined: Tue Apr 21, 2009 2:08 pm
JasonX wrote:I see that animation blending seems possible, but not really practical. The workflow is a real pain.
But, what about something similar to what is done in HL1 and HL2? There are animations for each possible movement in the game (crouched: moving left, right, back, forward. standing, walking, walking left, walking right, etc.) How can we do this on QuakeC? Any examples? Tutorials on this?
I do not know if anyone has examples, but Chris has done some work on this.
In DP using csqc you can set the fields .frame, .frame2, .frame3, .frame4 and their respective lerp strengths .lerpfrac, .lerpfrac3, .lerpfrac4 (the strength of .frame is automatically computed, in other words, it is 1 - .lerpfrac - .lerpfrac3 - .lerpfrac4), and their animation start times (.frame1time. .frame2time, .frame3time, .frame4time), to have pretty complete control over animation blending between 4 animations simultaneously (a total of 8 frame blends are executed by the engine for this).
Note: this works for each skel_build call, so each one can be a blend between 4 animations.
- LordHavoc
- Posts: 322
- Joined: Fri Nov 05, 2004 3:12 am
- Location: western Oregon, USA
I'm resuming this old conversation just for asking a thing: in this forum I saw a lot of guys who tried to use skeletal animations in DP (me included). Now, after almost 2 years (!!) of searching, copying, pasting code without NO results I'm questioning myself: "but, hey, wait a minute,and if is not possible to implement skeletal animations in DP?".
Anyone knows if, IN THE GLOBE, there's a man, except LordHavoc of course, who did something usable?
If I have to be honest, I seriously doubt..
<supplication>Please LordHavoc, write some documentation about that or just post an usable example, Please!(if it needs a test model to use in conjuction with qc code in IQM,DPM,etc. I SWEAR I'll make it in just a week)
DP Faithful community will be thankful for life!!
</supplication>
Anyone knows if, IN THE GLOBE, there's a man, except LordHavoc of course, who did something usable?
If I have to be honest, I seriously doubt..
<supplication>Please LordHavoc, write some documentation about that or just post an usable example, Please!(if it needs a test model to use in conjuction with qc code in IQM,DPM,etc. I SWEAR I'll make it in just a week)
DP Faithful community will be thankful for life!!
</supplication>
- toneddu2000
- Posts: 1352
- Joined: Tue Feb 24, 2009 4:39 pm
- Location: Italy
toneddu2000 wrote:I'm resuming this old conversation just for asking a thing: in this forum I saw a lot of guys who tried to use skeletal animations in DP (me included). Now, after almost 2 years (!!) of searching, copying, pasting code without NO results I'm questioning myself: "but, hey, wait a minute,and if is not possible to implement skeletal animations in DP?".
Anyone knows if, IN THE GLOBE, there's a man, except LordHavoc of course, who did something usable?
If I have to be honest, I seriously doubt..
<supplication>Please LordHavoc, write some documentation about that or just post an usable example, Please!(if it needs a test model to use in conjuction with qc code in IQM,DPM,etc. I SWEAR I'll make it in just a week)
DP Faithful community will be thankful for life!!
</supplication>
I agree with you. Many people say to you "use csqc", seemingly it is a species of secret or something like that. I suppose that there do not set tutors or examples (only nexuiz it is of open code) for lack of desire or something like that.
It seems incredible, here there are many papers of ssqc but nothing (or almost not at all) of csqc or examples darkplaces.
This way it is difficult that we advance many noobs in our projects, this way darkplaces it will disappear and I prefer to use c ++, in the udk forum I found great more it helps...
hi, I am nahuel, I love quake and qc.
-

Nahuel - Posts: 492
- Joined: Wed Jan 12, 2011 8:42 pm
- Location: mar del plata
Nahuel wrote:Many people say to you "use csqc", seemingly it is a species of secret or something like that
Infact! It seems some misterious ancient aztec prophecy!
Nahuel wrote:This way it is difficult that we advance many noobs in our projects, this way darkplaces it will disappear and I prefer to use c ++, in the udk forum I found great more it helps...
I completely agree. Darkplaces Wiki could be a good starting point but should be completed (Modeling section is ridiculous).
I always switched to UDK , but it's a real shame seeing a so good an powerful (an GPL I should say) engine being abandoned without no support and, most of all, no documentation for a lot of advanced things (skeltal animation is just one of those).
Darkplaces has everything for a modder:
a robust rendering engine with a lot of eye candies
a very robust map editor (I use Netradiant and I find it perfect) - ok, Radiant could be used for any other quake based engine, but I thought that it was correct to be mentioned!
a very simple game logic language that suits almost everyone's needs.
Portable to all platforms!
@Downsider: how bone names could improve blended animations? Can you make an example?
- toneddu2000
- Posts: 1352
- Joined: Tue Feb 24, 2009 4:39 pm
- Location: Italy
Darkplaces is really powerful, but I have not seen any game that extracts profit to everything his capacity. Only nexuiz, but nexuiz is a multiplayer fps. and a fps multiplayer has his logical limits.
Another example is the hunted chronicles, it is a great game really, it has story, atmosphere, puzzles... but the project is dead.
It is a pity that there are no documents, darkplaces it might be much bigger than it is.

Another example is the hunted chronicles, it is a great game really, it has story, atmosphere, puzzles... but the project is dead.
It is a pity that there are no documents, darkplaces it might be much bigger than it is.
hi, I am nahuel, I love quake and qc.
-

Nahuel - Posts: 492
- Joined: Wed Jan 12, 2011 8:42 pm
- Location: mar del plata
Nahuel wrote:Another example is the hunted chronicles, it is a great game really, it has story, atmosphere, puzzles... but the project is dead
Hereyou can find the source code of first episode, the creator did a superb work on quakec (if you see the source is huge).
Same author did the Survival Horror Maker which uses darkplaces pumping up all its power(my jaw felt on the table seeing his youtube videos), but unfortunately no source code release
It uses dpm for characters so I presume it created a skeletal based system. I also contacted him to talking a little about it but, until now, I 've had no replies.
- toneddu2000
- Posts: 1352
- Joined: Tue Feb 24, 2009 4:39 pm
- Location: Italy
24 posts
• Page 2 of 2 • 1, 2
Who is online
Users browsing this forum: No registered users and 1 guest
