HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Plz, I need help with particle emittor

06-19-2003, 04:37 PM#1
exN
Hello there,
I'm in the process of adapting the Doomguard's particle emittor to a sword model ( its based on the BM sword ), I have it working but unfortunately not fitting ( see attached pic ).

Here is an overview of the mdl :

--------------------------------------------------------------
// MDLFile version Jun 6 2002 04:58:04
// Exported on Wed Jun 04 15:23:35 2003
Version {
FormatVersion 800,
}
Model "Sabre" {
NumGeosets 1,
NumGeosetAnims 1,
NumBones 1,
NumParticleEmitters2 3,
BlendTime 150,
MinimumExtent { -19.2596, -8.26518, -7.80572 },
MaximumExtent { 85.9631, 7.09301, 5.24041 },
}
Sequences 14 {...}
Textures 2 {
Bitmap {
Image "Textures\HeroBladeMaster.blp",
}
Bitmap {
Image "Textures\clouds_anim1_bw.blp",
}
}
Materials 1 {
Material {
Layer {
FilterMode Transparent,
TwoSided,
static TextureID 0,
}
}
}
Geoset {
Vertices 24 {[...]}
Normals 24 {[...]}
TVertices 24 {[...]}
VertexGroup {[all are set to 0]}
Faces 1 54 {[.. ]}
}
Groups 1 1 {
Matrices { 0 },
}
MinimumExtent { -19.2596, -8.26518, -7.80572 },
MaximumExtent { 85.9631, 7.09301, 5.24041 },
BoundsRadius 86.0074,
Anim {[...]}
[...]
MaterialID 0,
SelectionGroup 0,
}
GeosetAnim {
Alpha 2 {
DontInterp,
50133: 0,
54567: 0,
}
GeosetId 0,
}
Bone "Default" {
ObjectId 0,
GeosetId 0,
GeosetAnimId 0,

}
PivotPoints 1 {
{ 0, 0, 0 },
}
[b]ParticleEmitter2 "BlizParticle01" {
ObjectId 1,
Parent 0, // "Geo_sword"
DontInherit { Rotation },
Unshaded,
ModelSpace,
static Speed 60,
static Variation 0,
static Latitude 10,
static Gravity -75,
Visibility 3 {
DontInterp,
133333: 1,
190967: 0,
200000: 0,
}
LifeSpan 0.6,
static EmissionRate 18,
static Width 20,
static Length 20,
Additive,
Rows 8,
Columns 8,
Head,
TailLength 1,
Time 0.5,
SegmentColor {
Color { 1, 1, 1 },
Color { 0, 1, 0.988235 },
Color { 0, 1, 0.329412 },
},
Alpha {255, 255, 0},
ParticleScaling {28, 20, 8},
LifeSpanUVAnim {0, 40, 1},
DecayUVAnim {41, 63, 1},
TailUVAnim {0, 40, 1},
TailDecayUVAnim {41, 63, 1},
TextureID 1,
Rotation 2 {
Hermite,
4767: { -0.233159, 0.570404, 0.0555102, 0.785618 },
InTan { -0.233159, 0.570404, 0.0555102, 0.785618 },
OutTan { -0.233159, 0.570404, 0.0555102, 0.785618 },
30400: { -0.233159, 0.570404, 0.0555102, 0.785618 },
InTan { -0.233159, 0.570404, 0.0555102, 0.785618 },
OutTan { -0.233159, 0.570404, 0.0555102, 0.785618 },
}
}
ParticleEmitter2 "BlizParticle02" {
ObjectId 2,
Parent 0, // "Geo_sword"
DontInherit { Rotation },
Unshaded,
static Speed 60,
static Variation 0,
static Latitude 10,
static Gravity -75,
Visibility 3 {
DontInterp,
133333: 1,
190967: 0,
200000: 0,
}
LifeSpan 0.6,
static EmissionRate 40,
static Width 20,
static Length 20,
Additive,
Rows 8,
Columns 8,
Head,
TailLength 1,
Time 0.5,
SegmentColor {
Color { 1, 1, 1 },
Color { 0, 1, 0.988235 },
Color { 0, 1, 0.329412 },
},
Alpha {255, 255, 0},
ParticleScaling {20, 15, 8},
LifeSpanUVAnim {0, 40, 1},
DecayUVAnim {41, 63, 1},
TailUVAnim {0, 40, 1},
TailDecayUVAnim {41, 63, 1},
TextureID 1,
Rotation 2 {
Hermite,
4767: { -0.258388, 0.568464, 0.062785, 0.778551 },
InTan { -0.258388, 0.568464, 0.062785, 0.778551 },
OutTan { -0.258388, 0.568464, 0.062785, 0.778551 },
30400: { -0.258388, 0.568464, 0.062785, 0.778551 },
InTan { -0.258388, 0.568464, 0.062785, 0.778551 },
OutTan { -0.258388, 0.568464, 0.062785, 0.778551 },
}
}
ParticleEmitter2 "BlizParticle03" {
ObjectId 3,
Parent 0, // "Geo_sword"
DontInherit { Rotation },
Unshaded,
ModelSpace,
static Speed 60,
static Variation 0,
static Latitude 10,
static Gravity -75,
Visibility 3 {
DontInterp,
133333: 1,
190967: 0,
200000: 0,
}
LifeSpan 0.6,
static EmissionRate 18,
static Width 20,
static Length 20,
Additive,
Rows 8,
Columns 8,
Head,
TailLength 1,
Time 0.5,
SegmentColor {
Color { 1, 1, 1 },
Color { 0, 1, 0.988235 },
Color { 0, 1, 0.329412 },
},
Alpha {255, 255, 0},
ParticleScaling {12, 7, 3},
LifeSpanUVAnim {0, 40, 1},
DecayUVAnim {41, 63, 1},
TailUVAnim {0, 40, 1},
TailDecayUVAnim {41, 63, 1},
TextureID 1,
Rotation 2 {
Hermite,
4767: { -0.272086, 0.561743, 0.0415748, 0.780183 },
InTan { -0.272086, 0.561743, 0.0415748, 0.780183 },
OutTan { -0.272086, 0.561743, 0.0415748, 0.780183 },
30400: { -0.272086, 0.561743, 0.0415748, 0.780183 },
InTan { -0.272086, 0.561743, 0.0415748, 0.780183 },
OutTan { -0.272086, 0.561743, 0.0415748, 0.780183 },
}
}[b]

---------------------------------------------------------

as you can see, I've set the "Parent" line to my model's bone (Default) but I can't figure out how to have the particle to fit the sword's edge ( I guess it have to do with Rotation 2 {} section ).
Could someone tell me what are the four OutTan and InTan coordinates, please? (X,Y,Z,?)

Any answer would be really appreciated :)

cheers, exN :)
06-19-2003, 04:49 PM#2
exN
mmm I've just reading Ari's thread, ( seems that particule emittors are a "mustdo" nowadays ;P ) and I guess theirs statements are truer than mine :P

Quote:
ParticleScaling {14.6, 21.1, 23.1}, - this somehow determines the scaling of the particles. I don't believe this works as it intuitively should though - I believe you're somehow defining a cube that the emitter exists in, which is then scaled by the game.


Quote:
3. i think particle scaling isn't X Y Z, but start middle end. not sure though, but that is what i come up with after a lot of experimenting.


I'm out for experiments but any informations that could save me a little time would be appreciated :ggani:
06-19-2003, 06:37 PM#3
Ari
Hmmm, if I understand you correctly, you're trying to do two separate things: you want the particle emitter to extend over a longer distance, and at the same time you want it to face towards the tip of the sword.

You can increase either the speed and/or the lifetime of the particles to increase their extent. For rotations, take a look at this link:
http://www.wc3campaigns.com/forums/s...threadid=18921

This in turn links to an applet that lets you calculate quaternion values, which you can then plug in to your rotations in the mdl. It'll seem like gibberish at first, but you should be able to get the hang of how that relates to models with a little trial and error. I'm not sure myself how "hermite" transitions work. I use "linear" transitions, which make a certian intuitive sense, and which have the added bonus that they don't take inTan and OutTan parameters (those lines don't exist in a linear transition). Hope this helps. Let me know if you have any questions (or if I missed the boat completely on answering these :) )


Edit: actually one idea I just had may be to play with the length and width parameters. These define a two dimensional area from which particles emerge. (so a long width and a short length may be what you need - or vice versa). I'm not sure how wc3 treats a "long" emitter with respect to rotating it in 3d (I know a rectangular shaped emitter *will* rotate, but I can only confirm that it properly rotates in 2 dimensions - I've never tried to make a "sword" shaped emiter using this method). But give it a try - maybe that'll be the easiest way for you to play with the emitter on the sword.
06-19-2003, 10:12 PM#4
Guest
mmmh dont see a problem in it, you want doomguards effect? Then you miss the fact that its using a scaling plane for the fire effect. Really, without it and only particles it would plain suck (you NEED a plane that is scaled small to large vica versa , like the effect on the infernal and the skeleton mage).

But if ou really want a line emittor try have a look into the burning archer mdx, they have a particle effect being lined over a certain X,Y coordinate (flames on bowstring for example)

If you are too lazy or need help I can help it with the sword

btw: the real particle effect is the tiny little flametrail that comes out of his sword going up from the sword. (of course it uses parent and rotation shit but you lads got it right). The rest are planes, just planes that are rotated and billboarded even with bones animation
06-20-2003, 08:32 AM#5
exN
Thanks for the help guys!!! I have already put my hands on it and began to experiment this but your help comes in handy ( sorry for my bad english ;P , I mean your posts are helpful ).
I will have a look and investigate all these ways this week end.
Thanks a ton guys!
06-20-2003, 11:39 AM#6
FireAarro
Just change the length or width of the emitter. I did this with Mortuskull of Rise of Nekrix.

ParticleEmitter2 "fire1" {
ObjectId 3,
Unshaded,
static Speed 20,
static Variation 0,
static Latitude 0,
static Gravity -75,
Visibility 1 {
DontInterp,
6667: 0,
}
LifeSpan 0.65,
static EmissionRate 70,
static Width 100,
static Length 20,
Additive,
Rows 8,
Columns 8,
Head,
TailLength 8.45,
Time 0.5,
SegmentColor {
Color { 0.631373, 0.968628, 1 },
Color { 0, 0.847059, 1 },
Color { 0, 0.329412, 1 },
},
Alpha {255, 255, 0},
ParticleScaling {30, 17, 5},
LifeSpanUVAnim {0, 40, 1},
DecayUVAnim {41, 63, 1},
TailUVAnim {0, 40, 1},
TailDecayUVAnim {41, 63, 1},
TextureID 0,
}

That's the emitter. I would give you more specific info but it's late.

Check out the RoN site in my sig for a screenshot.
06-20-2003, 06:08 PM#7
Iron_Ian
(Off-Topic) Are you making her for DK to use in COTN? That looks like one of the trees you made for him that shes standing in front of.(Off-Topic)
06-21-2003, 10:51 AM#8
exN
Thx FirreArro, this is exactly what I want, I will try this ;)

@Iron_Ian : hehe who knows? :P I think you will probably be nicely surprised soon ;)
BTW this is not the next CoTN map ;)