wasser filter? [done]

Posted By: tagimbul

wasser filter? [done] - 07/09/17 22:19

kennt ihr das?
man ist in einem spiel wo man tauchen kann. und wenn man unter wasser ist, und die camera in das wasser eintaucht, kommt so eine art wasser filter der alles was unter der wasser plane ist mit einem filter einfärbt.

wie macht man sowas?



also ich will jetzt nicht etwas utra realistisches und aufwendiges machen. mit tiefen unschärfe und so =)
eher so ein ganz simpler der einfach alles unter der wasserplane mit einem filter einfärbt und alle über der wasserplane normal rendert.
hab ihr mir da einen tip?
mfg tom
Posted By: Ayumi

Re: wasser filter? - 07/09/17 23:12

Wenns ganz simpel werden soll, dürfte doch eine simple Abfrage ausreichen, ob camera.z = plane.z. Die Höhe bekommst du mit vec_to_screen. Und wie du eine Bitmap auf die Kamera setzt, wirst du sicher selber wissen.

Getestet hab ich das nicht, sind nur Gedanken.
Posted By: tagimbul

Re: wasser filter? - 07/10/17 08:15

...darauf wär ich jetzt nicht gekommen...
danke ! grin

wen man nur wasserflächen hat die horizontal sind wäre das eine gute/schnelle/einfache lösung.

ich werde das mal umsetzen =)
Posted By: tagimbul

Re: wasser filter? - 07/10/17 10:23

muss leider sagen das dass nicht sauber realisierbar ist.
ich benutzte für vec_to_screen XY der camera und Z der wasserplane
was leider nicht klapt weil die naht/der schnitt der entsteht, wenn man mit der camera ins wasser eintaucht, nicht damit zu ermitteln ist.
da kommen eine unmengen an variablen dazu die man auf den ersten blick garnicht wahrnimmt. ich denke auch so varaiblen wie arc, clip_near
oder aspect der views müsste man berücksichtigen.
ich denke ich müsste bei der camera so tief rein, um einen genauen schnittpunkt zu erhalten, das das ganze schon fast wieder unrealistisch wird....

aber hat jemand sonst noch eine idee?
Posted By: tagimbul

Re: wasser filter? - 07/10/17 20:25

den wasserfilter könnte ich mit einer art... waterbox machen.
und ein view an dem dort, wo wasser ist die wasser plane und eine box ist.
und so sieht man, wenn man von oben nach unten schaut, erstmal nur die wasserplane. wenn man jedoch eintaucht und die wasserplane geschnitten wird sieht der shader dann die wasserbox mit ihrer eigenen farbe.

macht man die wasserbox auf ein totales blue also 255 bzw im shader color.b == 1
dann kann man bei jedem pixel wo color.b auf 1 ist einen return auf 1 setzen.
und im falle das das nicht da ist kann man 0 returnen

so hat man dann ein bild das legetlich aus 1 und 0 besteht und nur das zeigt wo unterwasser sich befindet.
dieses bild gibt man dann zurück in engine um es ann eine kette weiter geben und zwar an einen post prozessin shader.
dann gibt man den normalen view + dieses gerenderte bild rein
und kann so einen filter einbauen! grin


edit:
mit dieser methode könnte man sogar wasser shader mit einem wellengang ausschneiden.
das einzige was mich dabei stört ist das man extra einen view nur für den wasserfilter machen muss =(
Posted By: tagimbul

Re: wasser filter? - 07/11/17 12:53

jap das hat geklapt grin

vorschau:


vorschau2:
https://dl.dropbox.com/s/xslfi0vs03ymnia/shot_0.jpg?dl=0

hier der download fals einer reingucken will =)

https://www.dropbox.com/sh/r6gcilbvs01slwd/AADGvkR0-8yeDgC7rPDZ-obra?dl=0
© 2024 lite-C Forums