Symulator EU07 (i nie tylko) > Na warsztacie

 Exe - konwersja na C++

<< < (580/637) > >>

tmj:
Ciekawostka, to co jest wydaje sie do pewnego stopnia dzialac, ale tylko gdy kamera jest w okolicach punktu 0,0 a cien jest przywiazany na sztywno do kamery.

Co do macierzy, teoretycznie to co nalezy zrobic to 'cofnac' dany piksel z 'camera space' do 'world space', a nastepnie przeliczyc z 'world space' na 'light space' przepuszczajac wspolrzedne przez 'light view' i 'light projection'. Czyli

texcoord = (coord scale) * (light projection) * (light view) * (camera view)^-1

ale tutaj moze to chyba byc bardziej skomplikowane, bo przy renderowaniu wzgledem obserwatora 'world space' jest rozne dla kamery i dla swiatla, i byc moze trzeba to uwzglednic.

Krzysiek626:

--- Cytat: tmj w 01 Lipca 2017, 23:33:29 ---W dzisiejszym uaktualnieniu:
- eksperymentalnie, wrzucanie tekstur do karty graficznej wykonywane jest dopiero gdy tekstura jest potrzebna do narysowania sceny, a tekstury przez dluzszy czas nie uzywane przenoszone sa do czasu ponownego uzycia do pamieci zasadniczej. Efektem pozytywnym jest zmniejszenie uzycia pamieci vram, wiec jest szansa ze nie zabraknie jej zbyt szybko na wyswietlanie modeli. Efektem niepozytywnym natomiast moze byc okazjonalne przyciecie w renderowaniu, w czasie gdy dane tekstur przesylane sa miedzy karta i pamiecia zasadnicza (aby to wyeliminowac przydalaby sie obsluga tekstur na osobnym watku, ale tak dobrze jeszcze nie jest)

--- Koniec cytatu ---
Jest dobrze, nawet jednego komunikatu nie było o braku pamięci. Vram wypełnia się u mnie maksymalnie do 200mb. ładuje około 1/4 całości tekstur z Kaliskiej. Nie mam przycięć, raczej mam efekt... odwrotny, coś na kształt chwilowego przyspieszenia (szarpnięcia?), ledwo zauważalne. W załączniku errors. Nie chce mi się wyciągać pamięci z komputera dla sprawdzenia jak pójdzie na 2Gb ramu, może kiedyś.

tmj:

--- Cytat: Krzysiek626 w 02 Lipca 2017, 18:02:14 ---Nie mam przycięć, raczej mam efekt... odwrotny, coś na kształt chwilowego przyspieszenia (szarpnięcia?), ledwo zauważalne.

--- Koniec cytatu ---
To jest najprawdopodobniej ten efekt o ktorym pisalem, tylko inaczej odbierany :>  przy przesylaniu tekstur rysowanie jest na moment pauzowane, a po zakonczeniu operacji symulator "nadrabia" przesuwajac kamere o nieco wiekszy dystans niz do tej pory. Byc moze da sie ten efekt w ten czy inny sposob zmniejszyc, ale to pozniej.

Milek7:

--- Cytat: tmj w 02 Lipca 2017, 17:25:18 ---Ciekawostka, to co jest wydaje sie do pewnego stopnia dzialac, ale tylko gdy kamera jest w okolicach punktu 0,0 a cien jest przywiazany na sztywno do kamery.

Co do macierzy, teoretycznie to co nalezy zrobic to 'cofnac' dany piksel z 'camera space' do 'world space', a nastepnie przeliczyc z 'world space' na 'light space' przepuszczajac wspolrzedne przez 'light view' i 'light projection'. Czyli

texcoord = (coord scale) * (light projection) * (light view) * (camera view)^-1

ale tutaj moze to chyba byc bardziej skomplikowane, bo przy renderowaniu wzgledem obserwatora 'world space' jest rozne dla kamery i dla swiatla, i byc moze trzeba to uwzglednic.

--- Koniec cytatu ---
Ustawiłem narazie środek worldspace na 0,0,0 (przez Global::SetCameraPosition) i przesyłam do opengl całe macierze kamery, nie tylko mat3 z nich. Zepsuł się skydome, ale to teraz nieistotne.
Teraz jest: texcoord = (vec4(wierzchołek modelu, 1.0) * (light projection * light camera) * inverse(modelview obiektu)) * 0.5 + 0.5
Tak miałeś na myśli czy coś pokręciłem z kolejnością działań?

tmj:
Nie jestem pewien, chyba tak xD
Jest jeszcze jedna rzecz do sprawdzenia -- zobacz co konkretnie renderuje sie w shadowmap, tzn jak ona wyglada, bo domyslnie wszystkie przesuniecia obiektow robione sa 'na sztywno' wzgledem kamery w scenie, wiec tam sie moze cos ostro rozjezdzac i efekt jest jaki jest, bo mapa nie jest prawidlowa.
Pchnalem na gita wersje gdzie jest to zmienione na kalkulacje wzgledem pozycji definiowanej w Render() modulu rysujacego, moze ci sie to na cos przyda.

Nawigacja

[0] Indeks wiadomości

[#] Następna strona

[*] Poprzednia strona

Idź do wersji pełnej
Powered by Advanced Topic Prefix Pro
Powered by SMFPacks Likes Pro Mod