Autor Wątek:  Tekstury normalne ze zdjęć  (Przeczytany 5873 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline qduaty

  • Wiadomości: 9
    • Zobacz profil
  • Otrzymane polubienia: 0
Tekstury normalne ze zdjęć
« dnia: 12 Grudnia 2008, 15:20:14 »
Ostatnio widząc rozmazane lokomotywy w MaSzynie miałem chyba niezbyt dobry pomysł żeby ratować rozdzielczość tekstur indywidualnymi mapami UV. Pomijając to, na wątku pojawiło się też zagadnienie tworzenia map normalnych. I to chyba da się uzyskać :)

Wiadomo, że dwa czarno-białe zdjęcia A i B wykonane z dwóch różnych punktów widzenia (ale pokrywające ten sam obszar), można wyrównać i odjąć jedno od drugiego (A - B + poziom szarości). W miejscach płaskich nie będzie nic widać - będzie szare tło, ale każda nierówność którą widać tylko na zdjęciu A, będzie jaśniejsza, i odpowiednio nierówności widoczne na zdjęciu B, będą widoczne jako ciemniejsze. Korygując to w perspektywie, otrzymujemy oś Y mapy normalnych - a oś X wyliczamy z różnic między tekselami, np. algorytmem Sobel.

PS. nie mogę jeszcze obronić tej koncepcji bo nie mam zdjęć, ale postaram się je zrobić w ten weekend.
« Ostatnia zmiana: 12 Grudnia 2008, 15:38:51 wysłana przez qduaty »

Offline Winger

  • Administrator
  • Wiadomości: 1466
    • Zobacz profil
    • http://www.winger.eu07.pl
  • Otrzymane polubienia: 25
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #1 dnia: 12 Grudnia 2008, 15:56:18 »
Ciekawa idea, z normalnymi będzie można pobawić się w bump mapping.
Pozdrawiam,
Winger

Offline qduaty

  • Wiadomości: 9
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #2 dnia: 12 Grudnia 2008, 18:05:51 »
Na razie wziąłem dwa przypadkowe zdjęcia z internetu (http://www.dzyszla.aplus.pl/galerie/kolej/IMG_0345.jpg i http://marcin.czelusc.tbg.net.pl/Galeria/PIC0126.jpg), które przedstawiają tę samą lokomotywę EU07-076 ale od różnych stron. Wyprostowałem i złożyłem, po odjęciu otrzymując to zielone w załączniku (jest to mapa normalnych z samą składową Y). Drugi załącznik to wyrenderowany obraz EU07 obdartej ze "skóry", która połyskuje w słońcu gładkością metalu. Niestety nie miałem zdjęcia, na którym by była EU07-076 pokazana dokładnie z boku, (które mogłoby być teksturą diffuse), i dlatego nie ma koloru.

Offline Winger

  • Administrator
  • Wiadomości: 1466
    • Zobacz profil
    • http://www.winger.eu07.pl
  • Otrzymane polubienia: 25
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #3 dnia: 12 Grudnia 2008, 18:12:51 »
Hmmm, nie widzę najmniejszego sensu tworzenia jakichkolwiek tekstur ze zdjęć robionych pod kątem. Nigdy nikomu się to nie udało.
Tekstury normalne można dość łatwo tworzyć ze zwykłej diffuse za pomocą np. CrazyBump.

Pozdrawiam,
Winger

Sigman

  • Gość
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #4 dnia: 12 Grudnia 2008, 18:23:55 »
Hmmm, nie widzę najmniejszego sensu tworzenia jakichkolwiek tekstur ze zdjęć robionych pod kątem. Nigdy nikomu się to nie udało.

Nie wiesz, co mówisz :D Udało się, udało...

Offline qduaty

  • Wiadomości: 9
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #5 dnia: 12 Grudnia 2008, 18:34:18 »
Pojedyncza tekstura diffuse nie zawiera danych niezbędnych do obliczenia nierówności powierzchni - dlatego wybiera się je z luminancji, filtrując tu i ówdzie, a czasem zwyczajnie domalowuje. Obliczyć można dopiero z dwóch zdjęć, bo są na nich niezbędne różnice. Oczywiście masz rację Winger, że zdjęcia nie powinny być robione pod kątem, bo trzeba je wtedy prostować, ale powinny różnić się punktem z jakiego są robione. Wrzucę lepszy przykład jak sam sfotografuję jakiegoś loka.

Offline ShaXbee

  • Administrator
  • Wiadomości: 1984
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #6 dnia: 12 Grudnia 2008, 20:55:17 »
Ja ze swojej strony mogę dostarczyć 'przeglądarkę' modeli używających normal mappingu, opartą o OSG.

Offline El Mecánico

  • Wiadomości: 1067
  • Dawniej El Driver
    • Zobacz profil
    • Stowarzyszenie POLARIS - OPP
  • Otrzymane polubienia: 2
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #7 dnia: 12 Grudnia 2008, 21:05:34 »
Odnośnie tego i drugiego wątku w tym temacie. Zastanawiacie się nad rodzajami mapowania, a nie sprawdziliście, czy to ma sens. Z tego co wiem, to MaSzyna obecnie nie obsługuje nic z tych rzeczy, i pewnie nie będzie, bo to wiąże się ze zmianą silnika. Proponuję więc uciąć w tym miejscu i wolne zasoby umysłów skupić na to co da się jeszcze z symka wycisnąć.
www.polaris.org.pl
www.ciemneniebo.pl
MaSzyna_LD w trakcie tworzenia...

Offline qduaty

  • Wiadomości: 9
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #8 dnia: 12 Grudnia 2008, 23:47:39 »
@ShaXbee - jeśli mi do jutra zapał nie opadnie (sobota to dobry moment na takie wyprawy), będę miał komplet zdjęć.

@El Mecánico - symek ma słabe tekstury (w sensie rozdzielczości) i do tego nie filtruje ich tak jak należy. Oświetlenie tła zmienia się skokowo, a całość ma mało klatek, na sprzęcie który obsługuje najnowsze gry. Przyczyną o ile wiem jest zbyt duża złożoność modeli, więc dyskutujemy o rozwiązaniu które może ją znacznie zmniejszyć. A wymianę samego silnika graficznego - przy pozostawieniu udanej i dobrze działającej reszty, czyli dźwięku, wejścia i fizyki - można przeprowadzić przy zachowaniu zgodności z obecną zawartością.
« Ostatnia zmiana: 12 Grudnia 2008, 23:52:38 wysłana przez qduaty »

Offline MuNiO

  • Wiadomości: 444
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #9 dnia: 13 Grudnia 2008, 12:41:10 »
symek ma słabe tekstury (w sensie rozdzielczości) i do tego nie filtruje ich tak jak należy.

Slabe tekstury (czytaj rozmyte) sa wynikiem braku wyostrzania zdjec w czasie obrobki.

Offline Winger

  • Administrator
  • Wiadomości: 1466
    • Zobacz profil
    • http://www.winger.eu07.pl
  • Otrzymane polubienia: 25
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #10 dnia: 13 Grudnia 2008, 13:20:33 »
Przyczyną wymagań obecnej wersji MaSzyny jest brak optymalizacji w grafice (pisane na czystym OpenGL'u lata temu) oraz liczenie fizyki (przelicza po kilka, kilkanaście lub kilkadziesiąt razy dla każdego pojazdu na jedną klatkę, zależnie od FPS).

Nowe technologie (shadery, może i bump mapping?) będa prawdopodobnie wykorzytane w projekcie SPT, będącym efektywnie MaSzyną 2.

Co do robienia zdjęć w celu wygenerowania tekstur normalnych, jedyny logiczny pomysł jaki przychodzi mi do głowy to ustawienie się w odpowiednim miejscu pod kątem prostym do pojazdu (centralnie wobec pudła) w słabych warunkach oświetleniowych, po czym wykonanie zdjęć po uprzednim oświetleniu modelu z jednej strony mocnym źródłem światła (reflektory halogenowe?), a następnie po oświetleniu pojazdu z drugiej strony. Powinno to pozwolić na generację tekstur normalnych bardzo wysokiej jakości.
Pozdrawiam,
Winger

Offline ShaXbee

  • Administrator
  • Wiadomości: 1984
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #11 dnia: 13 Grudnia 2008, 13:25:26 »
Tylko że prawdziwe tekstury normalne się robi trochę inaczej... Przygotowuje się model o bardzo wysokiej ilości trójkątów, potem przygotowujemy druga wersje z usunietymi detalami i ladujemy je do Melody.

Dobry tutorial o normal mappingu w 3ds maxie jest dostępny pod adresem http://www.poopinmymouth.com/tutorial/normal_workflow.htm
« Ostatnia zmiana: 13 Grudnia 2008, 13:30:32 wysłana przez ShaXbee »

Offline Winger

  • Administrator
  • Wiadomości: 1466
    • Zobacz profil
    • http://www.winger.eu07.pl
  • Otrzymane polubienia: 25
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #12 dnia: 13 Grudnia 2008, 13:31:55 »
No faktycznie, czyli cała sprawa (generowania tekstur normalnych) jest prostsza niż myślałem, będzie to jedynie wymagało determinacji modelarzy.
Pozdrawiam,
Winger

Offline El Mecánico

  • Wiadomości: 1067
  • Dawniej El Driver
    • Zobacz profil
    • Stowarzyszenie POLARIS - OPP
  • Otrzymane polubienia: 2
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #13 dnia: 13 Grudnia 2008, 16:00:13 »
Panowie, nie wydaje mi się, żeby t3d i silnik symka obsługiwał nawet normal map.

Cytat: qduaty
A wymianę samego silnika graficznego - przy pozostawieniu udanej i dobrze działającej reszty, czyli dźwięku, wejścia i fizyki - można przeprowadzić przy zachowaniu zgodności z obecną zawartością.
Co do wymiany silnika to możliwość wykonania tego jest karkołomnym zawodem, gdyż grafika i fizyka zostały napisane praktycznie jako jedna całość. O szczegóły proponuję zapytać kolegów YouBy'a, Kursa i Q, którzy jeszcze coś tam w temacie walczą.
www.polaris.org.pl
www.ciemneniebo.pl
MaSzyna_LD w trakcie tworzenia...

Offline ShaXbee

  • Administrator
  • Wiadomości: 1984
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #14 dnia: 13 Grudnia 2008, 16:15:24 »
Ekhm, mówimy o SPT...
Chyba że Q znajdzie czas żeby dodać normal mapping do jego exeka :)

Offline uetam

  • Zasłużony dla Symulatora
  • Wiadomości: 2641
    • Zobacz profil
  • Otrzymane polubienia: 6
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #15 dnia: 13 Grudnia 2008, 19:39:41 »
Lepiej nie zapodawać mu takiego pomysłu, bo jak tak dalej pójdzie to przerobi symka na system operacyjny :]

Offline El Mecánico

  • Wiadomości: 1067
  • Dawniej El Driver
    • Zobacz profil
    • Stowarzyszenie POLARIS - OPP
  • Otrzymane polubienia: 2
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #16 dnia: 14 Grudnia 2008, 14:34:29 »
Ekhm, mówimy o SPT...
No to trzeba tak było od razu:D A czy w OSG nie ma aby przypadkiem fabrycznie normal, bump i mipmap wstawione?
www.polaris.org.pl
www.ciemneniebo.pl
MaSzyna_LD w trakcie tworzenia...

Offline Winger

  • Administrator
  • Wiadomości: 1466
    • Zobacz profil
    • http://www.winger.eu07.pl
  • Otrzymane polubienia: 25
Odp: Tekstury normalne ze zdjęć
« Odpowiedź #17 dnia: 14 Grudnia 2008, 16:25:43 »
Jest czy nie, musisz mieć odpowiednie pliki tekstur (diffuse & normal) żeby skorzystać z efektu.
Pozdrawiam,
Winger