Skocz do zawartości
ANtY

Nad czym aktualnie pracujesz?

Rekomendowane odpowiedzi

@Konrad-GM  Jak orientujesz się już trochę w Godocie to może ty będziesz wiedział jak ogarnąć tam odpowiednik GMowych surface? Bo ja kombinowałem i szczerze nie wpadłem na żaden pomysł.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

@I am Lord Jasne, w czołgach używam właśnie metody "surface" żeby połączyć elementy otoczenia w teksturę, ale w Godocie działa to odrobinę inaczej. Viewporty w Godot to nic innego jak OpenGL'owe Framebuffery, ale aktualizują się dopiero po wyświetleniu kolejnej klatki, nie da się rysować bezpośrednio na Viewportach ze względu na VisualServer, który odpowiedzialny jest za interpretowanie komend rysowania np. VisualServer.canvas_item_add_line jest podpięte bezpośrednio pod CanvasItem.draw_line (Node2D, Sprite etc.), dotyczy to wszystkich funkcji rysowania. Dlatego Godot też udostępnia taką funkcję jak VisualServer.request_frame_drawn_callback, dzięki niej można nasłuchiwać, kiedy Viewporty zostały zaktualizowane. Żeby nie aktualizować Viewporta co klatkę, polecam ustawić parametr Viewport.render_target_update_mode na UPDATE_ONCE (ten parametr potem jest ustawiany na UPDATE_DISABLED przez VisualServer, także każda kolejna aktualizacja wymaga przełączenie tego parametru). Zalecałbym też przełączenie tej flagi Viewport.render_target_v_flip na True, bo standardowo obraz będzie odwrócony. Nie zapomnij też o parametrze Viewport.size.

 

Dodatkowo wspomnę, że Viewport.get_texture zwraca referencję na teksturę i wystarczy pobrać teksturę jednorazowo np. w funkcji _ready i narysować ją raz w metodzie _draw bez wywoływania metody update. Ale nie można wtedy usunąć Viewporta, bo usunie nam też teksturę.

 

Jakbyś chciał "ukryć" Node'y z drzewa sceny nie musząc dodawać Viewport node'ów, możesz użyć bezpośrednio metod z VisualServer tj. VisualServer.viewport_createVisualServer.viewport_set_activeVisualServer.viewport_get_textureVisualServer.viewport_attach_canvasVisualServer.canvas_createVisualServer.canvas_item_set_parentVisualServer.free_rid itd. np. do obsługi roboczych Viewportów.

 

Jeszcze wspomnę o OpenGL ES na mobilkach - Texture.get_data nie działa ze względu na limity samego OpenGL ES, które uniemożliwiają przepływu danych z GPU do RAM, także nie da się pobrać pikseli z Viewporta czy jakiejkolwiek tekstury do zmiennej, natomiast na desktopach działa bez problemu.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
24 minuty temu, I am Lord napisał:

kurcze, wygląda na trudne coś jednak nic dziwnego że sam na to nie wpadłem. 

 

Nie jest to tak trudne, po prostu wymaga trochę innego myślenia niż GM-owe surface'y, podsyłam też niewielki przykład:

render-target.zip

 

Nie jestem pewien, czy z forum działa pobieranie plików, ale wgrałem też na inny hosting:
https://www23.zippyshare.com/v/xXpprq1O/file.html

 

- LPM "niszczy" surface

 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Modeluję sobie postaci a'la Disney/Pixar. Celuję w coś jak modele z gry Spy Party

8UyPrEB.pngagMV30I.pngF9LZHEo.png

 

  • Lubię (+1) 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

@kriso99 cóż to za gierencja? 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

całkiem dobrze jeśli postacie to nie będą kucyki w tęczowych kolorkach ;d

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

O kij, siema Saus, kopę lat.

  • Lubię (+1) 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
15 godzin temu, Chell napisał:

mam nadzieje na Fuaru 2 B)

grałbym

  • Super (+1) 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Dnia 11/20/2018 o 21:27, Chell napisał:

mam nadzieje na Fuaru 2 B)

 

Ta gra to.. Puru.

Ale tak, ciągle będzie "purowata" jeśli chodzi o historię i nasze zadania.

Walka to bardzo podrasowana wersja tego co było w Dragon Quest IX. System walki powstawał prawie rok :)

  • Super (+1) 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

nie dostalem serduszka, ja tez bym gral jakby co

Edytowane przez Chell
no i super slyszec
  • Super (+1) 3

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Motion capture robiony za pomocą kinecta?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Tak jest. Całkiem fajnie działa.

  • Lubię (+1) 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

ile taki setup kosztuje mniej więcej?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Kinecta 2.0 można dostać za jakieś 250zł, albo nawet taniej, chociaż nie go już nie produkują. Reszta to jakiś program Delicode NiMate 2 i tutorial gościa który to fajnie rozkminił.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Mnóstwo ogarniania rozmaitych przykładów ale w końcu coś zaczyna mi wychodzić. Łódką można na razie sterować i sprawić żeby zaczęła tonąć/przewróciła się na bok.

Napisałem też w końcu własnoręcznie vertex shader, czyli to co widać na wodzie. Blenduję dwie tekstury w zależności od wysokości vertexa i jednej z nich dodatkowo zmieniam pozycję mapy uv żeby się poruszała lekko w kierunku fali. Teksturki na razie trochę robocze, chyba dodam też jaśniejsze szczyty fali.

 

PyrKr8R.gif

  • Super (+1) 3

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się tutaj.

Zaloguj się tutaj

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×