Skocz do zawartości

XenoN PlayGate 1.X


PsichiX

Rekomendowane odpowiedzi

  • Odpowiedzi 110
  • Dodano
  • Ostatniej odpowiedzi

Top użytkownicy w tym temacie

Top użytkownicy w tym temacie

przenioslem je do obiektu globalnego PG, bo tez wczoraj zauwazylem ten problem :) nie chce pakowac stalych do gma bo raz ze jest ich ok 400 a dwa ze z czasem ich przybywa i dodawane sa w roznych miejscach, a wiec odpada niestety. Obiekt zalatwia na razie sprawe :D

Odnośnik do komentarza
Udostępnij na innych stronach

Ok, Setup Pack 2 wydany, a w nim nowy przyklad - surfacesy oraz dynamiczne tekstury (np. losowe pęknięcia, dziury w teksturze, itp.),a także sdk do tworzenia pluginow, czyli bibliotek DLL do GMa, które mogą z wewnątrz siebie wykonywać funkcje PlayGate, identycznie jak by były w GM. To pozwoli na rozszerzanie możliwości silnika, poprzez np. wtyczki do ładowania i zarządzania różnymi formatami modeli i konwersja na ciało fizyczne, wtyczki do obsługi gamepada oraz joysticka, a także zwykłe grupowanie funkcji PlayGate, aby używać ich jeszcze prościej! SDK dla pluginów działa tylko i wyłącznie w Visual C++ (2008 lub nowszy). Wymagana jest znajomość obiektowości, obsługi DLLi (pisanie funkcji, ładowanie i wywoływanie w GM), oraz samych funkcji PlayGate.

Nowa wersja dostępna na stronie: http://playgate.psichix.com/

Odnośnik do komentarza
Udostępnij na innych stronach

podobno dawidds taka probuje robic, wiec w sumie zostawiam ta robote na pozniej :D pierw trzeba jeszcze minimum 2-3 przyklady: od shaderow, dzwiekow i fizyki dodac, potem sie moge zajac EnvSys bez silnika.

Odnośnik do komentarza
Udostępnij na innych stronach

Ja te fale w wersji gml skończyłem godzinę-dwie po rozpoczęciu prac, lol.

Nie publikowałem bo jeszcze nie wpadłem na pomysł nadania temu jakiejś przestrzenności (znaczy jeden mam, ale nie chce mi się go robić... :P)

 

PsichiX, czy mi się wydaje, czy do tego sp2 nie dodałeś demek pokazujących nowe możliwości... :P ?

Odnośnik do komentarza
Udostępnij na innych stronach

jasne ze sa :P

obiekt: XenoN PlayGate.gm6 -> Objects -> Tutorials -> 2. Surfaces and dynamic textures -> T2_Main

room: XenoN PlayGate.gm6 -> Rooms-> Tutorials -> RoomTutorial_2

:)

przyklad sprawdza czy karta obsluguje surfacesy, jesli tak to rysuje po nich, a jak nie to rysuje po specjalnie utworzonej do tego teksturze :) tak czy siak, mozna malowac po teksturach ;p

Odnośnik do komentarza
Udostępnij na innych stronach

Mam pytanie, co się stanie gdyby zamienić

GML (39T1Main tutorial 1 39)
// show message

if( gmInterface(

PG.GET, // get interface state (GM or PlayGate)

PG.BUTTON, // from mouse button

PG.PRESSED, // pressed state

mb_left) // for Left Mouse Button

)

{

show_message('Hello World!')

}

 

// game end

if( gmInterface(

PG.GET, // get interface state (GM or PlayGate)

PG.KEYBOARD, // from keyboard

PG.PRESSED, // pressed state

vk_escape) // for ESC key

)

{

game_end()

}

 

na funkcje gmla?

GML
if mouse_check_button_pressed(mb_left)

{

show_message('Hello World!')

}

 

// game end

if keyboard_check_pressed(vk_escape)

{

game_end()

}

 

Bo zamieniłem i nie widzę różnicy.

Odnośnik do komentarza
Udostępnij na innych stronach

bo to jest synonimiczna funkcja do pgInterface(), na wypadek gdybys zmienil obiekt silnika w roomie, aby nie rozkrzaczylo sie i nie plulo bledami, z reszta, w kodzie skryptu ladnie to widac :) stawiam na uniwersalnosc i jak najmniejszy odsetek zmian calego kodu gry, w razie potrzeby zmiany typu silnika :P

Chodzi o to ze jesli masz w roomie obiekt EngineGM to uzywasz hybrydy (GM+PG) interfejsu GMowego - okno, klawiatura i mysz. A gdy masz obiekt EnginePG to uzywasz tylko i wylacznie okna, klawiature i mysz obslugiwane przez PlayGate, maja one wiecej funkcjonalnosci, chocby mouse roller w kodzie ;P wiecej okien po ktorych mozesz rysowac, itp. :)

Odnośnik do komentarza
Udostępnij na innych stronach

kliknij a sie dowiesz xD no nei powiesz mi ze musze za kazdym razem pisac instrukcje obslugi, ktora jest wrecz intuicyjna - chyba kazdy kto odpali ma ochote kliknac myszka? :P

Odnośnik do komentarza
Udostępnij na innych stronach

to zrob mi teraz w gml-u z surfacesa sprajta co klatke i podstawiaj pod 100 obiektow do rysowania, gdzie tutaj tylko redrawujesz na surfacesie i tylko podpinasz danemu sprajtowi teksture, ba, nawet mozesz tylko raz ja podpiac i za kazda zmiana zawartosci surfacesa, sprajt i te 100 obiektow bedzie mialo to co sobie na teksturze narysujesz.

Fakt, kazdy idiota zrobi to w gml-u, no ba i bedzie to nawet 1000 kroc szybciej ;>

 

a tak serio, bez urazy, czasem mnie zastanawia, po co spytac o wiecej jesli mozna wysmiac :P

 

gdyby to nie bylo generalnie szybsze niz GM to bym nawet tego nie robil, troche wiary w ludzi, ja sie z tym nie cackam, aby zrobic funkcjonalnosc na odwal, zeby tylko dla szpanu widnialo FBO :(

Odnośnik do komentarza
Udostępnij na innych stronach

...O.o

 

Już całkiem nie czaje o co Ci chodzi :|

Po kija niby "robić z tego surfejsa co klatke i podstawiać 100 obiektów do rysowania" O.o ?

 

http://eportal.boo.pl/upload/file.php?id=lol.gmk

Weź mi powiedz, czym to (gml) się różni od tego Twojego (dll) (pomijając białe otoczki, zripowałm na szybko printscreenem :P).

Odnośnik do komentarza
Udostępnij na innych stronach

tutaj pewnie niczym. chodzi o to ze: masz 100 obiektow ktore maja sprita, ktoremu chcesz domalowac cos na teksturze, chociazby centki czy co tam chcesz losowo ma byc, co klatke musi byc inny wyglad. no i co, aby w GML zmienic musisz 1. narysowac na surface tlo (chocby draw_clear_alpha()), 2. stary sprite, 3. na nim to co chcesz dorysowac, 4. no i tworzysz z tego nowy sprite, po czym 5. niszczysz stary sprite 6. wszystkim 100 obiektom podstawiasz nowy sprajt. W ten sposob masz co klatke masakre wydajnosciowa (moze nie bedzie to spadek rzedu 10-20 fps ale zawsze to duzo.), a w xenonie: 1. tylko i wylacznie raz podpinasz teksture surfacesa pod sprite, 2. dorysujesz na surfacesie to co chcesz dorysowac (mozesz dorysowac tez sam kanal alpha, badz inny kanal bez reszty, czyli cos czego GM nie ma). Jak widzisz, operacji nie dosc ze mniej, to jeszcze i szybciej.

Czepiasz sie czegos blachego, nie probujac doszukac sie sposobu dzialania w pesymistycznych sytuacjach (bo przypadek powyzej opisany do nich nalezy).

W ogole nie starasz sie zrozumiec plusow tylko szukasz na sile minusow, tam gdzie ich akurat nie ma ;P

 

Dzięki niemu otwierają się przed nami możliwości, o których wcześniej mogliśmy pomarzyć!

I tutaj Twoj sarkazm przestaje byc sarkazmem tylko prawda, niestety dawiddsie ;D

 

PS. wiem ze zaraz pewnie powiesz ze przeciez mozna trzymac surface w GM i go update'owac i rysowac w kazdym spricie, ale zauwaz ze to jest dodatkowa pamiec graficzna, a jak wiesz GM kocha byc pamieciozerny, czy to w RAM czy na GPU, a xenon wykorzystuje wtedy jedna teksture. Silnik jest wydajny, mimo iz dziala razem z GMem.

Odnośnik do komentarza
Udostępnij na innych stronach

Teraz rozumiem ;D

 

Ale kurde, jeśli chcesz zademonstrować możliwości tego silnika, to dobierz jakąś naprawdę przydatną sytuację, a nie pokazujesz to na czymś, co można zrobić bez problemu w samym gmie.

 

Chociaż dalej nie mogę sobie wyobrazić sytuacji, w której potrzeba nam zamieniać surfejsa na sprita dla 100 obiektów co klatkę (bo co to za różnica malować surfejsa a nie sprita), ale ok :P

Nie ważne, czy przydatne, ale pewne możliwości daje, muszę przyznać... ;)

 

Nie, że dalej trzymam na "swoim", ale...

i tak nikt z tego nie skorzysta w gmie :>

Odnośnik do komentarza
Udostępnij na innych stronach

i tak nikt z tego nie skorzysta w gmie :>

pewnie malo kto z GMClanu, bo malo na tyle dobrych osob jest(/zostalo), ale nie zapominaj o GMC, oni widza w tym na prawde wielki potencjal wiec dla nich glownie go tworze (dopoki nie skoncze wszystkich funkcji synonimicznych, wtedy na pewno z GMClanu tez sie wiecej chetnych zbierze), a pokazuje takie proste tutoriale bo chodzi o to przede wszystkim ze funkcjonalnosc ma zastapic GMa, a najlepiej jest pokazac to na zasadzie podobienstw z GMem, nie moge zaczac sypac zaawansowanymi przykladami bo serio wtedy nikt nie wykorzysta, trzeba uczyc metoda step-by-step, ale nie boj, beda z czasem tez zaawansowane przyklady, wiec wtedy bedziesz mogl pomarudzic ;)

 

Chociaż dalej nie mogę sobie wyobrazić sytuacji, w której potrzeba nam zamieniać surfejsa na sprita dla 100 obiektów co klatkę

Najprosciej: Lustra, kamery + TV, obraz rzutowany, kamuflaz predatora, itp, itd ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Jako przykład to to może być, ale powinieneś jednak dać coś na wzór EnvSysa, co by zachęciło ludzi do tego silnika (no, pokazało jego możliwości), a nie kurde, drzewko jakieś pokazuje, lol :P

 

I nie, że Cię zniechęcam do pisania silnika, ale i tak stawiam, że nikt na tym gry nie zrobi... :P

 

Co do luster/kamer - w sumie to też można zrobić w samym gmie :>

 

No ale dobra, bo już zaczynam od tematu odjeżdżać.

Odnośnik do komentarza
Udostępnij na innych stronach

Jako przykład to to może być, ale powinieneś jednak dać coś na wzór EnvSysa, co by zachęciło ludzi do tego silnika (no, pokazało jego możliwości), a nie kurde, drzewko jakieś pokazuje, lol

Tak jak mowie - z czasem bedzie, wlasnie w tym EnvSys, bo ma byc silnik z gotowymi obiektami od przedmiotow, modeli, efektow do powstawiania w room aby miec szybko baze gry i jedynie zajac sie zdarzeniami, fabula :P

 

w sumie to też można zrobić w samym gmie :>

No to rob, ja chetnie popatrze jak sie GM zacznie krztusic :>

Odnośnik do komentarza
Udostępnij na innych stronach

nom, w sumie nie glupi pomysl, zrobie tak bo widac teraz temu brak rak i nog hehe :)

Odnośnik do komentarza
Udostępnij na innych stronach

No to rob, ja chetnie popatrze jak sie GM zacznie krztusic :>
Czekaj.

Mówiąc lustra masz na myśli odbicie fragmentu ekranu, a kamera to pokazanie w pewnym miejscu ekranu innego miejsca ekranu, tak?

 

Chyba znowu nie zrozumiałem, bo przecież takie coś nie miało by prawa ścinać :/

Ale ja niekumaty jestem :>

 

Ed: A kiedy się doczekam bumpmappingu ze światłem punktowym :D ?

Odnośnik do komentarza
Udostępnij na innych stronach

Mówiąc lustra masz na myśli odbicie fragmentu ekranu, a kamera to pokazanie w pewnym miejscu ekranu innego miejsca ekranu, tak?

zrob mi je w 3D, choc tez i w 2D bedzie wolniej :>

 

Ed: A kiedy się doczekam bumpmappingu ze światłem punktowym biggrin.gif ?

gdy sie wezme za przerobienie shadera, poki co mam do zrobienia funkcje synonimiczne i tez wlasne zycie prywatne z ktorego nie zamierzam rezygnowac :)

 

jak uwazasz ze cos jest zbedne, to pokaz, a nie marudzisz ze to to, to tamto. Bo mnie czasem zastanawia skad taka ignorancja u Ciebie sie bierze :P

Odnośnik do komentarza
Udostępnij na innych stronach

dziala Ci? pierdzielisz :D a co odpalales? :0

Odnośnik do komentarza
Udostępnij na innych stronach

yeee, no w koncu :D czyli pozostal tylko Tymon i jego karta, z tych osob co nie dzialalo :D no chyba ze komus jeszcze nie dziala to mowcie ;p

Odnośnik do komentarza
Udostępnij na innych stronach

a wlasnie, ale myslalem ze masz podobnie jak Uzjel i ze tez zadziala. A jednak niet :/ no to bede kombinowal dalej :) a ten shader model 2 jaki wyskakuje, to ten ktory obsluguje silnik i karta. Twoja karta obsluguje 4, ale silnik poki co z wyzszymi niz 2 zadziala jedynie na NVIDII, poniewaz ati nie obsluguje shaderow ARB >2 tylko GLSL, ktory dodaje, a wtedy powinno pokazywac Ci SM4 :)

Odnośnik do komentarza
Udostępnij na innych stronach

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

Jedynie 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ę poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

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

×
×
  • Dodaj nową pozycję...