|
Re: Projekt Turm der Gezeiten
[Re: MasterQ32]
#436774
02/01/14 21:32
02/01/14 21:32
|
Joined: Jan 2008
Posts: 353
grinseengel
OP
Senior Member
|
OP
Senior Member
Joined: Jan 2008
Posts: 353
|
//// Partikel-Funktion ////
BMAP* particle2_tga = "fire1_red.tga"; // z.B. blauer Partikel
function fade_feuer(PARTICLE *p)
{
p.alpha -= 2 * time_step; // Partikel ausfaden
if (p.alpha < 0)
p.lifespan = 0;
}
function effect_feuer(PARTICLE *p)
{
// p->vel_x = 2 - random(2); // Geschwindigkeitsvector Richtung x-Achse
// p->vel_y = 2 - random(2); // Geschwindigkeitsvector Richtung y-Achse
p->vel_z = 2 - random(2); // Geschwindigkeitsvector Richtung z-Achse
p.gravity = -0.25; // Anziehungskraft nach unten
p.alpha = 5 + random(20); // Alpha-Wert des Partikels
p.bmap = particle2_tga; // Bmap des Partikels
p.size = 10; // Größe des Partikels
// p.flags |= (BRIGHT | MOVE | BEAM); // z.B. Effekt mit Strahlen nach Außen
p.flags |= (STREAK | MOVE | BRIGHT ); // z.B. Effekt ohne Strahlen nach Außen
p.event = fade_feuer;
}
var ttt = 0;
action activate_feuer()
{
set(my,INVISIBLE);
while(1)
{
while (sun_angle.pan > 180 && sun_angle.pan < 360)
{
effect(effect_feuer,10*time_step,my.x,nullvector);
// my.x ==> Angabe der Partikel Startposition
// nullvector ==> keine Angabe, hier kann ein Richtungsvector vorgegeben werden
// z.B. auch die Angabe des normal-Vectors
wait(1);
}wait(1);
}
|
|
|
Re: Projekt Turm der Gezeiten
[Re: grinseengel]
#436786
02/02/14 10:24
02/02/14 10:24
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
Nirgendwoher. BEAM uns STREAK sind nach wie vor verfügbar.
Always learn from history, to be sure you make the same mistakes again...
|
|
|
Re: Projekt Turm der Gezeiten
[Re: grinseengel]
#436793
02/02/14 15:30
02/02/14 15:30
|
Joined: Nov 2007
Posts: 2,568 Germany, BW, Stuttgart
MasterQ32
Expert
|
Expert
Joined: Nov 2007
Posts: 2,568
Germany, BW, Stuttgart
|
Du kennst doch sicher den Improved Overlay-Shader aus dem Wiki, oder? Wenn man den ein bisschen umstellt, wird daraus ein Alpha-Blending-Shader, der immernoch in den Z-Puffer schreibt und daher dinge "verdeckt"
technique alpha_blend_z
{
pass p0
{
zWriteEnable = true;
alphaTestEnable = false;
alphaBlendEnable = true;
SrcBlend = SrcAlpha;
DestBlend = DestSrcAlpha;
}
}
Das ist der Shadercode, die Blendstates müssten so stimmen. Hab leider grade kein GS da, um es zu testen. Grüße
|
|
|
Re: Projekt Turm der Gezeiten
[Re: MasterQ32]
#436827
02/03/14 13:17
02/03/14 13:17
|
Joined: Jan 2008
Posts: 353
grinseengel
OP
Senior Member
|
OP
Senior Member
Joined: Jan 2008
Posts: 353
|
Bin gerade dabei den Code mal auszuprobieren. Nebenbei habe ich mal wieder ein Problem mit meiner neuen A8 Version. Ich habe ungleublich große Unterschiede bzgl. der FPS bei meinem alten Level. Ich habe mal von den Daten zur Laufzeit ein Bild gemacht: Hier von der A7.85 Hier von der A8.40 Kann mir das einer erklären?
|
|
|
|