What are you working on?
Moderator: InsideQC Admins
Re: What are you working on?
I have to agree that just dealing with simple triangles using indices is very nice and... well, simple. And efficient when verts are reused.
Leave others their otherness.
http://quakeforge.net/
http://quakeforge.net/
- taniwha
- Posts: 399
- Joined: Thu Jan 14, 2010 7:11 am
Re: What are you working on?
For organic models, triangles are much better. When animating, it's almost impossible for all four vertices of their quads to keep aligned, because frame interpolation can move them around in unpredictable ways. Modeling with triangles, you can at least know if the pair of triangles that forms a quad will bend inwards or outwards when animating.
When learning to model Fightoon's models, I've spent countless hours just swapping triangles around with Ctrl+E in Milkshape to make sure they would animate correctly. Including triangles that formed perfectly flat quads while in the editor, because many times they would get shaded incorrectly when actually running the game.
Quads are good for models that doesn't animate, and for mechanic models whose parts just moves around instead of deforming.
When learning to model Fightoon's models, I've spent countless hours just swapping triangles around with Ctrl+E in Milkshape to make sure they would animate correctly. Including triangles that formed perfectly flat quads while in the editor, because many times they would get shaded incorrectly when actually running the game.
Quads are good for models that doesn't animate, and for mechanic models whose parts just moves around instead of deforming.
-

mankrip - Posts: 915
- Joined: Fri Jul 04, 2008 3:02 am
Re: What are you working on?
since when has milkshape supported quads?
-

ceriux - Posts: 2223
- Joined: Sat Sep 06, 2008 3:30 pm
- Location: Indiana, USA
Re: What are you working on?
Never. What I mentioned are pairs of triangles aligned like quads. Frame interpolation can often change that alignment during actual game play. And even if you use an editor that supports quads, no game engine actually supports them. Since all quads will be converted into triangles anyway, it's better to edit them directly as triangles, so we can choose which vertices will be used for each triangle.
-

mankrip - Posts: 915
- Joined: Fri Jul 04, 2008 3:02 am
Re: What are you working on?
I should mention the engine i'm modeling her for is UnrealEngine2
I also recently figured out a workaround to export animations for it! I can FINALLY fix those stupid driving animations, as well as making character specific taunt animations, and maybe (if i'm lucky), adjust skeletal proportions!!
I also recently figured out a workaround to export animations for it! I can FINALLY fix those stupid driving animations, as well as making character specific taunt animations, and maybe (if i'm lucky), adjust skeletal proportions!!
i should not be here
- leileilol
- Posts: 2783
- Joined: Fri Oct 15, 2004 3:23 am
Re: What are you working on?
working in quads for game dev isnt bad if you ask me. you just have to know the specific places where the quads dont do what they should and connect the vertices so that they do what you're wanting. working in quads for me is a bit cleaner and easier for me to see what i'm doing i started off in milkshape and doing everything in triangles is a bit cluttered.
-

ceriux - Posts: 2223
- Joined: Sat Sep 06, 2008 3:30 pm
- Location: Indiana, USA
Re: What are you working on?
Quads are good for weapons, vehicles, and stuff like that.
However, depending on the renderer, there's another limitation: Quake's software renderer doesn't support perspective correction on MDL models, so you get weird texturing on trapezoid "quads" like the ones in the regular shotgun. Sometimes, this kind of problem can also be avoided by using triangles so you can manually map up the triangle divisions of the skin in a safer way. Sometimes, another solution is to avoid trapezoids and use square angled quads plus a few more triangles instead. But as I said, this is only required on renderers that doesn't feature perspective correction.
However, depending on the renderer, there's another limitation: Quake's software renderer doesn't support perspective correction on MDL models, so you get weird texturing on trapezoid "quads" like the ones in the regular shotgun. Sometimes, this kind of problem can also be avoided by using triangles so you can manually map up the triangle divisions of the skin in a safer way. Sometimes, another solution is to avoid trapezoids and use square angled quads plus a few more triangles instead. But as I said, this is only required on renderers that doesn't feature perspective correction.
-

mankrip - Posts: 915
- Joined: Fri Jul 04, 2008 3:02 am
Re: What are you working on?
Hello,
A guy at quakeone.com had this idea: To add lava eruptions into Quake´s lava pools.
This is my attempt to do it for DP:
http://www.youtube.com/watch?v=DO8RD3Vl ... ature=plcp
It is done via SSQC only and needs a slight .ent file modification for the maps.
It adds random lava eruptions and custom sound.
Time gap between lava eruptions can be set via .ent file as well.
For simple square shaped lava pools, only one .ent file block is necessary.
For more complicated shaped lava pools, more .ent blocks are needed to reach every corner of the lava pool.
QC edit:
.ent file example for E1M7:
effectinfo.txt entry:
(I use a modified Nexuiz particlefont with added stone/rock textures for tex 44, 45 and 46):
A guy at quakeone.com had this idea: To add lava eruptions into Quake´s lava pools.
This is my attempt to do it for DP:
http://www.youtube.com/watch?v=DO8RD3Vl ... ature=plcp
It is done via SSQC only and needs a slight .ent file modification for the maps.
It adds random lava eruptions and custom sound.
Time gap between lava eruptions can be set via .ent file as well.
For simple square shaped lava pools, only one .ent file block is necessary.
For more complicated shaped lava pools, more .ent blocks are needed to reach every corner of the lava pool.
QC edit:
- Code: Select all
////////////////////////////////////////////////
// Lava eruptions
////////////////////////////////////////////////
.float Xsmall; // for lava pool corner with smallest X-coordinate (negative values are smaller than positive)
.float Ysmall; // for lava pool corner with smallest Y-coordinate (negative values are smaller than positive)
.float Xbig; // for lava pool corner with biggest X-coordinate (negative values are smaller than positive)
.float Ybig; // for lava pool corner with biggest Y-coordinate (negative values are smaller than positive)
.float Zheight; // for z-coordinate of lava pool
void() spawn_lava_eruption =
{
local float dX, dY, Xparticle, Yparticle, Zparticle;
local vector eruption;
dX = self.Xbig - self.Xsmall;
dY = self.Ybig - self.Ysmall;
Xparticle = self.Xsmall + (random()*dX);
Yparticle = self.Ysmall + (random()*dY);
Zparticle = self.Zheight;
eruption_x = Xparticle;
eruption_y = Yparticle;
eruption_z = Zparticle;
pointparticles(particleeffectnum("lava_eruption"), eruption, '0 0 0', 1);
pointsound (eruption, "ambience/lavasplash_shotgun.wav", 1, ATTN_NORM);
// pointsound (vector origin, string sample, float volume, float attenuation);
};
void() lava_think =
{
self.nextthink = time + self.count + random()*1; // change "1" to any value for additional/fixed random time gap between eruptions
spawn_lava_eruption ();
};
void() func_lava = // Yes, I know this function can be skipped !
{
self.think = lava_think;
self.nextthink = time + 0.01;
};
.ent file example for E1M7:
- Code: Select all
{
"classname" "info_notnull"
"Xsmall" "80"
"Ysmall" "-180"
"Xbig" "750"
"Ybig" "310"
"Zheight" "-25"
"nextthink" "0.1"
"think" "lava_think"
"count" "0.5" // is the time gap between eruptions in seconds
}
effectinfo.txt entry:
(I use a modified Nexuiz particlefont with added stone/rock textures for tex 44, 45 and 46):
- Code: Select all
effect lava_eruption // used for lava eruptions (Stones/rocks)
count 3.5
type alphastatic
color 0x000000 0x000000 //color 0xff3300 0xff3300
size 3 7
tex 44 46
alpha 156 256 0
originoffset 0 0 5
originjitter 5 5 5
velocityoffset 0 0 220
velocityjitter 40 40 50
gravity 0.55
bounce -1
effect lava_eruption // used for lava eruptions (splash)
countabsolute 100
type static
tex 16 23
color 0xfa1000 0xfa1000
size 6 7
alpha 200 250 30
gravity 0.44
sizeincrease 5
originoffset 0 0 2
originjitter 2 2 0
velocityoffset 15 15 200
velocityjitter 15 15 100
effect lava_eruption // used for lava eruptions (splash)
countabsolute 100
type static
tex 16 23
color 0xfa1000 0xfa1000
size 6 7
alpha 200 250 30
gravity 0.44
sizeincrease 5
originoffset 0 0 2
originjitter 2 2 0
velocityoffset -15 -15 200
velocityjitter 15 15 100
effect lava_eruption // used for lava eruptions (splash)
countabsolute 100
type static
tex 16 23
color 0xfa1000 0xfa1000
size 6 7
alpha 200 250 30
gravity 0.44
sizeincrease 5
originoffset 0 0 2
originjitter 2 2 0
velocityoffset -15 15 200
velocityjitter 15 15 100
effect lava_eruption // used for lava eruptions (splash)
countabsolute 100
type static
tex 16 23
color 0xfa1000 0xfa1000
size 6 7
alpha 200 250 30
gravity 0.44
sizeincrease 5
originoffset 0 0 2
originjitter 2 2 0
velocityoffset 15 -15 200
velocityjitter 15 15 100
- Seven
- Posts: 301
- Joined: Sat Oct 06, 2007 8:49 pm
- Location: Germany
Re: What are you working on?
i should not be here
- leileilol
- Posts: 2783
- Joined: Fri Oct 15, 2004 3:23 am
Re: What are you working on?
seven, I think it would look even better if you were to somehow prolong the erruption, as those are more explosions than 'splurges' of molten rock. lava generally has a fairly hard surface that takes time to seal up again before the pressure drops.
all I can really suggest is triggering a few (smaller) explosions multiple times over the course of a second or so, so long as the later bursts are weaker.
all I can really suggest is triggering a few (smaller) explosions multiple times over the course of a second or so, so long as the later bursts are weaker.
- Spike
- Posts: 2892
- Joined: Fri Nov 05, 2004 3:12 am
- Location: UK
Re: What are you working on?
seven - Nice looking, though it could use a little more random horizontal variation, as after extended viewing it comes off as lava spark tubes rather than small eruptions. Shared it on the Facebook Quake page.
...and all around me was the chaos of battle and the reek of running blood.... and for the first time in my life I knew true happiness.
-

scar3crow - InsideQC Staff
- Posts: 1054
- Joined: Tue Jan 18, 2005 8:54 pm
- Location: Alabama
Re: What are you working on?
Yes, you are both right.
The particle effects have not yet finaly tuned.
I did this yesterday and was just too excited, that I wanted to show it
My ideas to extend it:
To what scar3crow suggested: Make 3 different effects (low/broad, medium, high/slim) and add a random call which one to spawn each time.
That should give a little variation to the visual.
To what Spike suggested: Yes, I would have to call different effectnums that use different gravity and velocity params.
I have to spend much more time on the finetuning I guess...
Another idea was to add damage to these eruptions.
I thought about how it could be done, because a particle cannot do that.
So I came to the idea to spawn an entity without model. Only give it a bbox size of the eruption.
So it is invisible but can be 'touched'.
The touch function of that entity gives the "other." approx. 10 damage. It removes itself after beeing touched, to prevent damage overflows.
After 1 second (that is the approx. time of the eruption) the entity will remove itself anyhow.
Thank you for your suggestions.
I will try to implement them.
The particle effects have not yet finaly tuned.
I did this yesterday and was just too excited, that I wanted to show it
My ideas to extend it:
To what scar3crow suggested: Make 3 different effects (low/broad, medium, high/slim) and add a random call which one to spawn each time.
That should give a little variation to the visual.
To what Spike suggested: Yes, I would have to call different effectnums that use different gravity and velocity params.
I have to spend much more time on the finetuning I guess...
Another idea was to add damage to these eruptions.
I thought about how it could be done, because a particle cannot do that.
So I came to the idea to spawn an entity without model. Only give it a bbox size of the eruption.
So it is invisible but can be 'touched'.
The touch function of that entity gives the "other." approx. 10 damage. It removes itself after beeing touched, to prevent damage overflows.
After 1 second (that is the approx. time of the eruption) the entity will remove itself anyhow.
Thank you for your suggestions.
I will try to implement them.
- Seven
- Posts: 301
- Joined: Sat Oct 06, 2007 8:49 pm
- Location: Germany
Re: What are you working on?
You should at least recognize this one from MVC2 and Cannon Spike


i should not be here
- leileilol
- Posts: 2783
- Joined: Fri Oct 15, 2004 3:23 am
Re: What are you working on?
leileilol,
This model is too cute to kill.
How can you put her into a fps game ?
This model is too cute to kill.
How can you put her into a fps game ?
- Seven
- Posts: 301
- Joined: Sat Oct 06, 2007 8:49 pm
- Location: Germany
Re: What are you working on?
leileilol: next, you need a wolf 
Leave others their otherness.
http://quakeforge.net/
http://quakeforge.net/
- taniwha
- Posts: 399
- Joined: Thu Jan 14, 2010 7:11 am
Who is online
Users browsing this forum: No registered users and 1 guest