-
1. Data: 2012-04-02 12:10:59
Temat: lokalne znieksztalcanie bitmapy
Od: " " <f...@g...SKASUJ-TO.pl>
chodzi mi o efekt taki jaki daja 'inklucje' w szybie,
gdzie obraz rozplywa sie na boki dookola punktu (zakrzywia)
a reszta jest bez zmian (odwrotnosc implozji)
- jak zrobic taki efekt?
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
2. Data: 2012-04-04 19:14:13
Temat: Re: lokalne znieksztalcanie bitmapy
Od: " " <f...@W...gazeta.pl>
<f...@g...SKASUJ-TO.pl> napisał(a):
> chodzi mi o efekt taki jaki daja 'inklucje' w szybie,
> gdzie obraz rozplywa sie na boki dookola punktu (zakrzywia)
> a reszta jest bez zmian (odwrotnosc implozji)
>
> - jak zrobic taki efekt?
>
robi sie to nadzwyczaj prosto, trzeb apodmienic wspolrzedne pixeli
na poczatku
np
xp = x - 0.9 * x;
yp = y - 0.9 * y;
- jednorodny zoom 10x
xp = x - f(x,y) * x;
yp = y - f(x,y) * y;
-- niejednorodny zoom itp
http://dl.dropbox.com/u/42887985/wichrator.zip
niby dziala ale jestem zly bo kiepsko to napisalem (na
skroty bo niechcialo mi sie pomyslec nad paroma linijkami)
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
3. Data: 2012-04-04 22:14:58
Temat: Re: lokalne znieksztalcanie bitmapy
Od: Michoo <m...@v...pl>
On 02.04.2012 12:10, f...@g...SKASUJ-TO.pl wrote:
> chodzi mi o efekt taki jaki daja 'inklucje' w szybie,
> gdzie obraz rozplywa sie na boki dookola punktu (zakrzywia)
> a reszta jest bez zmian (odwrotnosc implozji)
Naprawdę dobry efekt - równania fresnela i shadery.
>
> - jak zrobic taki efekt?
>
Najprostsza wersja dająca dość przyzwoity efekt:
- generujesz 3 kolorową normal mapę - masz w kolorze kolejnych pikseli
zakodowane wektory
- przyjmujesz jakieś h oznaczające "grubość"
- pokrywasz płaszczyznę normalmapą zamiast oryginalną teksturą
W momencie rysowania punktu (x,y) tekstury:
- bierzesz kolor punktu (x,y) z normalmapy
- konwertujesz do wektora W
- dodajesz W*h do (x,y)
- odczytujesz z oryginalnej mapy współrzędne punktu wg wynikowego wektora
- rysujesz kolor z oryginalnej tekstury
--
Pozdrawiam
Michoo