Bild dem untergrund anpassen

Posted By: SirSven

Bild dem untergrund anpassen - 03/27/05 02:01

Hallo

weiß jemand wie man folgendes realisieren kann:

man hat ein bild (.bmp oder .tga ...), ein terrain und ein model.

nun soll dass bild was über den beiden anderen sachen ist sich diesen anpassen.

bild
terrain
model

_____________


__#__/\______





__/\__/\______
__#__/\______

Ich hoffe ihr versteht was damit gemeint sein soll .
Ich habe hir zwar schon den projection shader gefunden aber der scheint nicht das richtige zu sein. Doch in dem post (hier) hat Alexander Esslinger ein screen shot von einem shader gepostet der etwas ähnliches tut und ich denke das ist das richtige.

Also wenn jemand weiß was ich meine und mir helfen kann dann wäre ich sehr froh darüber.

Danke
Posted By: Stefan

Re: Bild dem untergrund anpassen - 03/27/05 07:37

Ich denke, dass ein Shader hier nicht das Richtige ist! Es gibt 2 Mothoden meiner Meinung:

1. Decale-System(ist aber leider noch net vorhanden==> siehe Forecast)
2. Du nummst keine Sprites, sondern Flache Modelle und tracest dessen Vertices.

Stefan
Posted By: SirSven

Re: Bild dem untergrund anpassen - 03/27/05 19:17

Das 2. hört sich gut an. Wie kann ich das machen wenn ich als model dan z.b. ne hmp nehme. Dann müsste ich doch alle vertices denen der boden hmp anpassen. Wie kann man das machen?

Danke
Posted By: HeelX

Re: Bild dem untergrund anpassen - 03/28/05 17:40

1. Du findest heraus, wieviele vertices dein Modell hat
2. dann gehst du in einer Schleife alle vertices durch
3. du rechnest dir die position des aktuellen vertexes aus
4. du traced nach unten mit minimalen Aufwand (solltest schnelle EInstellungen im tracemode einstellen). Wenn du weißt das das ganze nur über einem Terrain stattfindet kannst du auch den normalen anstatt des c-trace nehmen!
5. du setzt den vertex neu auf den hitpoint VORSICHT: den vektor den du beim deformieren des vertexes angibst, ist ein vektor vom Modelursprung zum vertex, nicht in relative koordinaten!!! Du musst den Vektor vom hitpoint zum ursprung des models berechnen und ihn dann umkehren und diesen Ergebnisvektor bei der Defomierung angeben!

viel Spaß!
Christian
Posted By: DARKLORD

Re: Bild dem untergrund anpassen - 04/06/05 04:26

Ich hab mal probiert das umzusetzten aber irgentwie funzt das net

Code:
 

var poly_help;
var poly_save;

function trace_vert_down()
{
poly_help = 1;

while (poly_help <= ent_vertices(my))
{
vec_for_mesh(poly_save,my,poly_help);

poly_save.z += 100;

vec_set(temp, poly_save);
temp.z -= 600;
poly_save.z -= c_trace(poly_save, temp, ignore_me + ignore_sprites + ignore_models + ignore_passable + ignore_passents) - 1;

vec_to_mesh(poly_save,my,poly_help);

poly_help += 1;
}

}



Vielleicht kann sich ja mal einer Angucken was da falsch läuft!
Ich vermute beim letzten punkt was falsch gemacht zu haben.
Mfg
Posted By: SirSven

Re: Bild dem untergrund anpassen - 04/07/05 02:25

Ich hab den Code von Darklord ausprobiert und bei mir geht es auch nicht. Ist aber gut das sich jemand die mühe gemacht hat sich das ganze mal genauer anzugucken.
Vielleicht findet ja jemand den Fehler.

MfG
Posted By: DARKLORD

Re: Bild dem untergrund anpassen - 04/09/05 16:49

Hallo,
probier mal das (habs noch nicht getestet, sollte jetzt aber funktionieren)
Hab jetzt endlich den Unterschied zwischen Vec_for_mesh und vec_for_vertex begriffen.

Code:
 function trace_verts_down()
{
poly_help = 1;

while (poly_help <= ent_vertices(my))
{
vec_for_mesh(poly_save,my,poly_help);

vec_for_vertex(poly_world,my,poly_help);
vec_set(temp,poly_world);

poly_world.z += 1000;
temp.z -= 11000;

poly_world = c_trace(poly_world, temp, ignore_me + ignore_sprites + ignore_models + ignore_passable + ignore_passents)-1001;

poly_save.z -= poly_world;

if (poly_world >= 10000){return;}

vec_to_mesh(poly_save,my,poly_help);

poly_help += 1;

c_updatehull(my,1); // Wenn das Modell pasabel ist oder keine kollisionsabfrage braucht lass das weg (ist viel schneller ohne es)
}

}



Die Funktion startest du am besten am anfang deiner Bild-Action. Sie funktioniert (hoffentlich ) mit allen modellen und hmp's.

MfG
© 2024 lite-C Forums