Forum

modifiable mesh for clothes, water, fire and IK

Discuss programming in the QuakeC language.

Moderator: InsideQC Admins

modifiable mesh for clothes, water, fire and IK

Postby daemonicky » Sun May 22, 2011 2:21 pm

what i want
I want to make water which I can spill over surfaces (~ particles with distance constrains). I want oil to be burnable by fire and dousable by water. I want clothes which can be ripped by sword (~ delete joints). It plan to do it for singleplayer, maybe multiplayer ...

I want some IK. I have Jakkobsen paper about Verlet integrator and I want to try some of my ideas.

how i imagine doing it (solving it)
- I want to make water as bunch of particles, pretty much same as cloth, that is having some distance constrains ... And I want to render the triangular/rectangular mesh (net) between particles. If I was doing it directly in opengl it would do it.

- Dousing of water will most likely be some particle net 1 X particle net 2 collision. Each particle of burning water will be object, have some parameters like energy or life so if it is doused enough it will die, same for water ...

- IK. I will make simplifications, make it my swordgame specific, I really dont want some universal IK system :-).

- IK. I know about sagdoll, but it is great demo (joints of ragdolls are entities), I would have to rework it anyway to make it usable for me. I am not exactly sure whether I want each bone have separate models (~ Tomb Raider, Blood 2, Quake 3?) or part of mesh (~ new games). If it would be part of mesh then i probably could reuse some of this cloth stuff, which map.

illustrative screenshots of separate models for bones from Tomb Raider
http://www.dxtre3d.sakul.cz/pics/scren/fexmerger.jpg
http://www.mobygames.com/game/dos/tomb- ... Id,380227/
http://www.mobygames.com/game/dos/tomb- ... Id,380228/
http://www.mobygames.com/game/dos/tomb- ... Id,380240/

what i want

I want to have it as easy as possible for me to make it. So I am putting engine code modification as a last resort. :-) Simplest and most direct I guess is Quake C.

I thought that I wrote it by entities, but that seems to me like overkill. It might not be, I dont know ... I will try it. I will need some representation of particles and I want to simulate some behaviour on them so entities would be the best choice I guess.

How to make mesh between these entities at realtime :?: How and in which engine (...) to move bones of some model so the mesh is deformed :?: I think, that some Quake engines, like maybe Darkplaces, migh be able to do it, either somehow directly form Quake C or trought shaders, I really have no idea how.

Thanks for help :-) .


(I though about hack. Having mini model, "twig", "triangle" or "quad" and use it to make this mesh and transform it in Quake engine. AFAIK, from Quake C I could do only scale, rotate, translate transformations. Because I think I can't do shear, I think that I can only make models like in Blood 2 or NOLF.)
User avatar
daemonicky
 
Posts: 185
Joined: Wed Apr 13, 2011 1:34 pm

Postby goldenboy » Sun May 22, 2011 10:44 pm

Why not just use the Blender game engine, pretty sure it allows you to do all that.

And boy, was TR ahead of its time.
User avatar
goldenboy
 
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel

Postby mh » Mon May 23, 2011 12:33 am

Simplest and most direct is to not use Quake.

Let me explain. Quake is a simple - and simplistic - game from 1996. That's a very ambitious list of wants you've got there, and Quake just cannot do these things without heavy modification. You'll be constantly fighting against the limits of the formats, you'll be fighting against the limits of QC, and you'll be spending more time doing this fighting than getting anything productive done.

Yes, Quake is great in that it's easily moddable. Yes, QC is great in that all you need is a text editor and a command-line. But you've got to learn what it's good at and what it's not good at to avoid frustrations. Play it to it's strengths and when you find a weakness do something different. Because even when you're making relatively traditional Quake-style stuff there are enough significant moments of beating your head against the wall to be getting on with.

In other words I think you've chosen the wrong tool for the job.

(Edit: I should probably say that I'm not trying to be overly negative here. Ambition is certainly to be encouraged, but you need to set yourself realistic and achievable goals, especially when you're starting out and learning the capabilities of your chosen tools. Try to run before you can walk and you'll most likely smash into a wall. You're a good ideas person, and it wouldn't be nice to see you burn out from trying too much too soon.)
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
User avatar
mh
 
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Postby daemonicky » Tue May 24, 2011 7:49 pm

goldenboy wrote:Why not just use the Blender game engine, pretty sure it allows you to do all that.

Thank You. :) I really like Quake's simplicity. I hope I found some of it in BGE. I looked at it and it seems to have think, touch and some other events plus drawing with OpenGL so I have almost all I need :) . Thanks again.

goldenboy wrote:And boy, was TR ahead of its time.

There is data format http://icculus.org/vt/vt/doc/Tomb%20Rai ... ormats.htm . They packed all into one file. So each level containst everything. There are more docs for TR games http://icculus.org/vt/vt/doc/ .

There http://www.tnlc.com/eep/tr/utils.html is TrueView, it shows TR levels and renders them in OpenGL, it has source code. I once thought about making TR to Quake map convertor, because TR uses some triangles and MAP format has triangles to specify plane ... I believe this one is THE data structure containing level mesh http://icculus.org/vt/vt/doc/Tomb%20Rai ... _room_data ... they are stored as list of faces, not sure if quads or triangles ... one would then need to make each of that face a thumb thin cuboid and it would be done. Note, this viewer is NOT working with demo of Tomb Raider.

mh wrote:Simplest and most direct is to not use Quake.
Let me explain. Quake is a simple - and simplistic - game from 1996 ... you'll be spending more time doing this fighting than getting anything productive done.
... you've got to learn what it's good at and what it's not good at to avoid frustrations.
... You're a good ideas person, and it wouldn't be nice to see you burn out from trying too much too soon.

Thanks for Your advice and kind words :).

I really wanted to do this in Quake, but I would have to make new physics or go around the renderer and create MDL for the cloth each frame. I thought about prototyping some of it in evaldraw http://www.advsys.net/ken/download.htm (which I really want to try), but BGE seems to be more direct. It reminds me of kkriger http://www.theprodukkt.com/kkrieger which was made in werkkzeug http://www.theprodukkt.com/werkkzeug1 probably similar way.
User avatar
daemonicky
 
Posts: 185
Joined: Wed Apr 13, 2011 1:34 pm

Postby daemonicky » Tue May 24, 2011 8:38 pm

So basically, Quake is for games where simple physics will do.
- Where you can get away with simple tracelines for detecting ledges, walls, bridges, monsters ...
- Where you can not change the way the models are composed, but you could make one boulder giant http://www.flash-screen.com/free-wallpa ... onster.jpg by having entities kept together by springs (i made Dark Messiah Of Might And Magic like sword this way). You can also make your own simple physics like pendulums (or some advanced like ) and have Shadow Of The Collosus clone where pendulums were used http://www.ninjadodo.net/temp/making_of_sotc.pdf / http://www.gameanim.com/2007/09/18/shed ... he-shadow/ .

I still need to learn what engine to use for what kind of game. I will see how this BGE will be. :)
User avatar
daemonicky
 
Posts: 185
Joined: Wed Apr 13, 2011 1:34 pm

Postby goldenboy » Tue May 24, 2011 11:23 pm

In BGE, you simply make everything in Blender... which has fluids, soft bodies, physics, and whatever else. And you can export your game as an .exe I think.

Quake's system requirements are probably lower, though.

If I could start over, I'd probably just use Blender for everything, it's very tempting. There is a guy who made Blender DOOM, actually.

However, most people make the mistake to use too many polies for their game stuff in Blender, or even use subsurf, and end up with a laggy game.

Remember games are no movies. Keep the polycount in check and simpler = better.

http://www.youtube.com/watch?v=pc9JWYuUa2o

Alternatives for the kind of stuff you want to make are the Cryengine and idtech4, I believe, or maybe UDK. Crysis is very neat for modding, if I may say so.

By all means use Quake, if you have a high tolerance for pain or are a masochist.
User avatar
goldenboy
 
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel


Return to QuakeC Programming

Who is online

Users browsing this forum: No registered users and 1 guest