NukeBoards - Kreatywność przede wszystkim
FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  DownloadDownload
RejestracjaRejestracja  ZalogujZaloguj

Odpowiedz do tematu
Poprzedni temat :: Następny temat
[MMF2] Oddalanie kamery bez pogarszania grafiki
Autor Wiadomość
kamiledi15 
Kapitan


Główny edytor: TGF
Drugi edytor: MMF2
Pomógł: 8 razy
Posty: 864

8594 Prestiż
Wysłany: 30-10-2014, 19:47   [MMF2] Oddalanie kamery bez pogarszania grafiki

Próbuję zrobić do swojej gry takie coś, że kręcąc kółkiem myszy oddalamy lub przybliżamy kamerę. Żeby jakość przy powiększeniu się nie pogorszyła, to obiekty zrobiłem dosyć duże i skaluję je na mniejsze. Próby z obiektem Viewport wypadły nieźle, ale są z nim dwa problemy - przy większym oddaleniu jakość grafiki się pogarsza, pojawiają się piksele, których przy powiększeniu nie ma, poza tym proporcje obiektów się zaburzają. Jest też kolejny problem, bo oddala mi się również tło, a nie powinno - musiałbym je zrobić bardzo duże, żeby przy dużym oddaleniu wypełniało nadal cały ekran. I jeszcze jeden problem - jeśli fragment jakiegoś obiektu wyjedzie poza ekran, to przy oddaleniu ten fragment jest dziwnie rozciągnięty. Problem z jakością przy oddaleniu pojawia się również, kiedy zmieniam rozmiar obiektu ręcznie przez polecenie Scale w zdarzeniach. Obiekt Perspective zamiast oddalić obraz zniekształca go. Obiektu Lens nie bardzo umiem używać, ale pewnie też byłby taki efekt. Na różnych stronach czytam o jakichś shaderach wykorzystujących HWA - zoom shader, magnify shader, ale nigdzie ich nie mogę znaleźć. Jak już znajduję jakieś linki, to okazuje się, że już nie działają - czyżby Clickteam wywalił je wszystkie ze swojej strony? Macie jakiś pomysł, jak to zrobić?
_________________
Pies Syrena - GRA UKOŃCZONA.
 
 
     
Neoqueto 
Moderator
Akcelerator


Główny edytor: Fusion 2.5 Dev
Drugi edytor: MMF2
Pojedynki: być może
Skype:
Pomógł: 60 razy
Posty: 537

7976 Prestiż
Wysłany: 01-11-2014, 18:38   

Na SB wcześniej dałem Ci to MFA: https://www.dropbox.com/s...d_lens.mfa?dl=0

Tutaj pokazałem oddalanie i przybliżanie klawiszami "+" i "-". Musisz pamiętać, że ani Lens, ani shadery nie zadziałają oddalająco w poprawny sposób, ponieważ przetwarzają one to i tylko to, co aktualnie dzieje się na ekranie.
Jeśli zależy Ci na oddalaniu, powinieneś w grze wszystko zrobić pomniejszone od samego początku, ustawić przybliżenie na około połowę i potem dowolnie oddalać i przybliżać, pamiętając oczywiście, że przy przybliżaniu utracisz jakość.
Możesz również spróbować uruchamiać grę w dużej rozdzielczości, we właściwościach aplikacji ustawić "Resize display to fill window size" i wtedy przybliżyć na 50% i manipulować.

Zoom shader i magnify shader naprawdę nie będą działać inaczej od lens shadera, lens shader jest po prostu bardziej zaawansowaną formą tego typu shaderów.

Jeśli Viewport faktycznie jakimś cudem działa w HWA, to ja myślę, że powinieneś dalej z nim próbować.

Tak naprawdę jeśli chciałbyś wykonać prawdziwe dynamiczne zoomowanie w MMF2, to jest to bardzo czaso- i pracochłonne, bo musisz to opracować od podstaw, skalując i pozycjonując każdy z obiektów po kolei.
Tutaj proszę, robiony na kolanie i na szybko (bitwa) kod Symulatora Mecha, jeśli chcesz się próbować z niego rozczytać, to zapraszam serdecznie: https://www.dropbox.com/s...w/mech.mfa?dl=0
_________________
Jeśli otrzymałeś pomoc - pamiętaj o przyznaniu punktu Pomógł!
 
     
kamiledi15 
Kapitan


Główny edytor: TGF
Drugi edytor: MMF2
Pomógł: 8 razy
Posty: 864

8594 Prestiż
Wysłany: 01-11-2014, 19:10   

Z tym efektem, który mi podałeś, dzieją się trochę dziwne rzeczy. Dałem wielkość tego obiektu na wielokrotność ekranu, tak żeby przy oddaleniu objął bardzo duży obszar, a mimo to krawędzie tła mi się dziwnie rozmazują, tak jakby wykraczały poza ten obiekt. W dodatku tło mi się rozjeżdża. Nie wiem, czy widziałeś fotki, które dałem na SB. Tak to wygląda w MMF2:
http://i.imgur.com/I65IXnT.png
A tak w grze:
http://i.imgur.com/7PixqG1.png
Widać, że boki tła się dziwnie rozmazują, a w dodatku wszystko się rozjechało. To jest z użyciem tego Looki Background Lens.
Cytat:
przy przybliżaniu utracisz jakość

Właśnie dlatego zrobiłem to inaczej. Obiekty są od razu w wysokiej jakości i dlatego oddalenie powinno być bardzo duże. Dzięki temu na zbliżeniu obiekty nic nie stracą na jakości. I o ile twój przykład dobrze sobie radzi ze zbliżaniem, to całkowicie leży jeśli chodzi o oddalanie. Ale pewnie to dlatego, że nie umiem go prawidłowo użyć. Zmieniałem rozmiar tego obiektu ,,lupy" na wszelkie sposoby, ale zawsze coś jest nie tak.
Myślałem nawet nad tym, żeby ręcznie zmieniać każdemu obiektowi scale. Wiadomo, że wtedy wszystko się rozjeżdża, ale może dopasowanie tego będzie łatwiejsze niż zabawa z tymi rozszerzeniami. A jak nie wypali, to chyba dam sobie spokój z tą kamerą, nie jest to takie niezbędne.
Ideałem by było, gdyby taka lupa powiększała tylko niektóre obiekty. Na przykład wolałbym, żeby nie powiększała mi obiektów tła - gra dzieje się pod wodą, więc tło jest ruchome. A przy dużym oddaleniu musiałbym zrobić ogromne tło, niepotrzebnie zwiększając rozmiar gry. Dlatego skłaniam się ku metodzie z ręcznym zmienianiem parametru scale w wydarzeniach, bo dzięki temu mógłbym zostawić tło w spokoju.
A Viewport oczywiście nie działa na HWA. Włączyłem go tylko do testów, wyłączając HWA.
_________________
Pies Syrena - GRA UKOŃCZONA.
Ostatnio zmieniony przez kamiledi15 01-11-2014, 19:13, w całości zmieniany 1 raz  
 
 
     
Neoqueto 
Moderator
Akcelerator


Główny edytor: Fusion 2.5 Dev
Drugi edytor: MMF2
Pojedynki: być może
Skype:
Pomógł: 60 razy
Posty: 537

7976 Prestiż
Wysłany: 01-11-2014, 19:13   

Nie da się oddalać, bo shader nie wie co znajduje się poza ekranem. To tak, jakbyś zrobił screena z okna gry i zmniejszył je w paincie - w ten sposób nigdy nie zobaczysz tego, co znajduje się poza oknem. Efekty zadziałają dobrze do zbliżeń, ale nie do oddaleń.

Tak naprawdę skalowanie każdego obiektu to niestety jedyne słuszne rozwiązanie.
_________________
Jeśli otrzymałeś pomoc - pamiętaj o przyznaniu punktu Pomógł!
 
     
kamiledi15 
Kapitan


Główny edytor: TGF
Drugi edytor: MMF2
Pomógł: 8 razy
Posty: 864

8594 Prestiż
Wysłany: 01-11-2014, 19:31   

No na to wygląda. Myślałem, żeby zrobić to tak, że okno gry będzie sztucznie powiększone i żeby zablokować postaci dostęp do krawędzi - dzięki temu postać znajdowała by się zawsze z dala od krawędzi i przy oddaleniu gracz by widział te elementy niedostępne dla postaci i grafika by się nie psuła. Ale z tym dodatkiem też jakoś to nie wychodzi. Będę musiał pewnie to robić ręcznie, ale zostawię to sobie na później.
Takie zbliżanie i oddalanie to też byłby fajny efekt przy przerywnikach filmowych.

[ Dodano: 11-11-2014, 23:17 ]
Mam pytanko... Zrobiłem te oddalanie w zwykły sposób, poprzez polecenie Scale i ręcznie przesuwanie obiektów. Ale jest jeden problem - zrobiłem sprity w HD, żeby na zbliżeniu wyglądały dobrze i w czasie gry je oddalam do właściwych rozmiarów. Ale w efekcie oddalone obrazki mają ,,ząbki", czyli są lekko poszarpane - wiadomo chyba, o co chodzi. Próbowałem zwiększać rozdzielczość, włączać anty-aliasing w ustawieniach, ale nic to nie daje. Jest na to jakiś sposób? Trochę to dziwne, bo przy oddaleniu jakość chyba nie powinna się psuć. Oczywiście na zbliżeniu żadnych ząbków nie ma.
Wstawiam zdjęcie:
http://i.share.pho.to/524ffef8_o.png
Po lewej widać, jak obrazek wygląda na oddaleniu. Po prawej widać, jak to POWINNO wyglądać. Przypominam, że chodzi o oddalanie, a nie o zbliżanie. Obrazek się trochę rozciągnął po wrzuceniu na serwer, dlatego jest lekko rozmazany. Obrazek po lewej jest zeskalowany do wartości 0.3.
Dodam, że na tym obiekcie Looki Lens, który miałem od Neoqueto, jest dokładnie taki sam efekt. Im większe oddalenie, tym gorzej to wygląda.

[ Dodano: 11-11-2014, 23:46 ]
Ok, znalazłem sposób na obejście problemu poprzez dodanie drugiej, pomniejszonej wersji obiektu. Średni sposób, ale grunt, że działa. Chyba że ktoś wymyśli coś lepszego.
_________________
Pies Syrena - GRA UKOŃCZONA.
 
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

PSK Cytaty Klikibaza - kopia wszystkich klików Klikipedia - encyklopedia o tworzeniu gier Discord KlikCzat Zaproszenie Wielkie Muzeum Klikowe

Powered by phpBB modified by Przemo © 2003 phpBB Group