* Drugi semestr zajęć *

  13 posts   Feedicon  
Replies: 12 - Last Post: October 03, 2010 21:30
by: kingpig
showing 1 - 13 of 13
 
Posted: September 02, 2010 07:04 by kingpig
Generalna dyskusja na temat nadchodzącego semestru.

Pierwsza sprawa - co myślicie o użyciu gotowego game engine do pisania pierwszej gry?

Dobrym przykładem jest http://jmonkeyengine.com. Engine napisane w Java (wbrew pozorom Java co raz bardziej nadaje się do pisania gier - sprawdźcie na tej stronie filimiki z youtube).

Oczywiście ograniczenie się tylko i wyłącznie do gotowego engine nie wchodzi w grę.
Ja widzę to tak:
  • do pisania gry używamy gotowego engine
  • część zajęć poświęcamy na jego omawianie - strona jest bogata w tutoriale, każdy będzie mógł prowadzić zajęcia
  • nie rezygnujemy z omawiania tematów związanych z programowaniem gier. Tzn. engine jest tylko częścią zajęć (używanie gotowych narzędzi jest przecież też niezbędną umiejętnością). Chyba każdy się zgodzi, że programista potrafiący używać gotowych narzędzi a nie mający podstaw praktycznych/teoretycznych jest do bani.
 
Posted: September 02, 2010 07:12 by kingpig
Druga sprawa - kontynuujemy pisanie własnego engine, nie? Wiadomo że nie przebijemy żadnego z już gotowych, ale przecież nie o to chodzi.
Głównym celem jest nauka, jak takie rzeczy się pisze, oraz posiadanie czegoś autorskiego Smile.
 
Posted: September 04, 2010 14:58 by miszaa
"wbrew pozorom Java co raz bardziej nadaje się do pisania gier - sprawdźcie na tej stronie filimiki z youtube"
Smile to ze cos dobrze wyglada nie znaczy ze jest dobre Smile

nooo aleeeee... jak juz od biedy ma byc jakis engine i padnie na ten monkeycośtam to plus tego (i javy) jest taki, ze jak napiszemy coś, to bedziemy mogli to odpalić przez przeglądarke na kazdym systemie (w przeciwienstwie do silverlighta - z dwojga złego wole javę...)

A podstawy muszą być! Jak niby używać czegoś nie wiedząc jak to działa (przyklad - np. proste shadery). Wiec kontynuacja "jak to jest zrobione" musi być konieeeecznieeeee Grin.
 
Posted: September 04, 2010 20:25 by kingpig
Dobre, nie dobre - pisze się w tym naprawdę szybko Smile Engine ma solidną grupę użytkowników. Warte jest uwagi, że jeden z głównych programistów (Joshua Slack) odłączył się od projektu, by na jego bazie stworzyć coś bardziej profesjonalnego - engine Ardor3d. Jednak z racji na ubogą dokumentację to rozwiązanie odpada. A JME, jak wspomniałem, jest świetnie opisane.

A jeśli chodzi o umieszczanie gier w przeglądarce, to sprawa nie jest prosta. Sporo na ten temat szukałem i nie ma dobrego rozwiązania (jakby co, to Quake Live nie jest renderowany w przeglądarce). Są aplety Java (ale w sumie nie są specjalnie popularne). Powstaje też standard WebGL - wspierany między innymi przez Firefox, ale prace jeszcze trwają.

Wikipedia: open source engines.
Czytajmy, wybierajmy Smile
(ciekawym rozwiązaniem jest również Blender - mielibyśmy modelowanie 3d+ tworzenie gier wspomagane skyptami Python)

Chyba że są głosy sprzeciwu wobec stosowania gotowego engine? :]
 
Posted: September 05, 2010 11:22 by miszaa
http://www.youtube.com/watch?v=JfG7n7eSPYI
ale to niby jest pisane na tym monkey engine (video ze strony jME) i jest odpalane w przegladarce... wiec to ten webgl?
pozatym webgl kozysta chyba z ogl 2.0 es - a to nie jest przypadkiem ten ktory jest w urzadzeniach mobilnych (ot np. apple iphone) - to o ile ja wiem to jest tam troche rzeczy innych niz w zwyklym oglu i troszke inaczej trzeba niektore rzeczy pisac.
 
Posted: September 06, 2010 08:54 by kingpig
jME - Nie niby tylko na pewno Smile

I tak, jest odpalane w przeglądarce, ale zapewne (tej gierki chyba jeszcze oficjalnie nie ma?) w formie apletu. Także jedynym warunkiem są dobre sterowniki karty graficznej + Java Runtime Environment. Aplety nie są specjalnie powszechne - nie przyjęły się jako coś popularnego z racji na dodatkowe wymagania (działające środowisko Javy). Jak dla mnie to właściwie żadna przeszkoda (przecież mnóstwo osób gra na Kurnik.pl czy korzysta z chat), ale to jest oficjalny powód.

I nie jestem pewien, ale ... wygląda na to, że na razie jedyne gry 3d w przeglądarkach to właśnie te napisane w Java, osadzane w kodzie jako aplety oraz Flash (ale nie spotkałem jeszcze jakiejś wyje-bongo gry 3d w tym napisanej).

WebGL nie jest jeszcze oficjalnym standardem - działa tylko w niestabilnej wersji Firefox. I z tego co czytałem, to rzeczywiście pisze się w nim zupełnie inaczej.

Jest też pewna ilość mini projektów 3d (Jake2), działających w przeglądarkach. Ale to również Java Smile
 
Posted: September 07, 2010 19:42 by miszaa
no tak tak, o to mi chodziło, ze to aplet. wlasnie o tym mowilem majac na mysli "gre 3d w przegladarce". przeciez jesli ktos chce w taka gre pograc, no to co mu zaszkodzi kliknac w wyskakujace okienko apletu javy i kliknac "run" Smile
Zdecydowanie latwiejsze niz sciagniecie, zainstalowanie itp... Click and go Wink
 
Posted: September 08, 2010 05:55 by kingpig
Aha, sorry Tongue
A mnie właśnie zastanawia - skoro to takie fajne "Click and go", to dlaczego jest tak mało popularne? Smile W sumie do Flash również trzeba doinstalować wtyczki do przeglądarki ...
 
Posted: September 08, 2010 21:27 by miszaa
bo java jest zła Grin
a tak serio doinstalowanie czegos to zaden problem. troche inny przyklad - zwalo sie to bodajze macromedia shockwave czy cos takiego - swojego czasu multum gier bylo pisanych pod to (a swoja droga ja zwsze bylem zbyt leniwy zeby to zainstalowac). ale jave (JRE) ma praktycznie kazdy (a juz napewno windowsowiec). O ile takie cos by zadzialalo to nawet byłbym "za" Smile. Ale na forum tu jak zwykle pusto Tongue Trzeba od pierwszych dni ostro rozpocząć reklamę koła Smile
 
Posted: September 09, 2010 12:30 by kingpig
A ja do Java co raz bardziej się przekonywuję Smile Ale to tylko moje odczucie, nie musimy czegokolwiek w niej pisać. Trzeba rozpatrzyć inne enginy napisane w c++ i nie tylko (chociażby z tego linku na górze)

A cokolwiek związane z Macromedia odpada - trzymamy się open source i kropka Wink

"na forum tu jak zwykle pusto" - ale ktoś te wyświetlenia nabija jednak Tongue Mam nadzieję, że ludzie bardziej uaktywnią się we wrześniu. W końcu mamy jeszcze wakacje.

"od pierwszych dni ostro rozpocząć reklamę koła"
- racja. Założę o tym wątek!
 
Posted: September 10, 2010 20:54 by miszaa
no nie chodziło mi o to, ze macromedia, to taki przykladzik.
Jak tylko zalicze wszystko to rzuce okiem na ta jave + ogl, ale przed tym skoncze swoj malutki projekt, bo coś mi sie pieprzy w nim.
Swoją drogą, warto odrazu korzystać z sprzetowego wspomagania ogl i zabawek typu ARB (swietna sprawa, ZDECYDOWANIE przyspiesza aplikacje). Pozatym jak juz mamy cos robic to mysle, ze dobre by było opisanie ogolnie OGL'a lepiej, zdecydowane przejscie na 3D. Bo teraz to tak naprawde stanelismy troche w miejscu. Ładowanie tekstur, przesuwanie po ekranie, prosta fizyka. Wszystko spoko (w 100% przydatne na poczatek) ale tak naprawde mozna to ogarnac w max kilka tygodni. Ciekawsza sprawa wlasnie jest 3D, zespoly vertexów, normalnych, indeksow, uv, rzutowania, oswietlenie. Chociazby glupie ARB buffer object (bodajze, pisze z pamieci) albo vertex object. Małe coś a ile frajdy z wiedzy ze prawdopodobnie model jest przechowywany na ZAJE*** szybkiej pamieci karty grafiki, a nie w normalnym ramie. Sam z checia bym poczytal o morphingu, systemie kości (odrazu mowie ze modele w *.obj sa lekko mowiac... ciezkie i ograniczone - ok dla prostych modeli i takich ktore sa w sumie statyczne, jesli chodzi o te lepsze to chyba COLLADA sie to zwalo, zdecydowanie uzylbym gotowej biblioteki do ładowania tego bo przeparsować to ... ból...), roznych trickach typu wlasne oswietlenie (OGL ma max 8 swiatel na scenie i sa one... dosyc zasobożerne, przy swoich mozna ich wstawić pierdylnaście). Naprawde gdyby to tak zsumować to KUPA rzeczy jest do ogarnięcia - o ile chcemy sie bawic w zrozumienie 'jak to działa' i to od samych podstaw zeby coś tam sobie napisać. Ale takie cos przydaloby sie wlasnie do zrozumienia juz gotowych silniczków. Teraz sobie pomyslalem, ze mamy te 2h tygodniowo, wiec moznaby nawet podzielic czas (niekoniecznie po polowie) ale zeby zahaczyc o postawy, a pozniej nawet na tej samej godzinie juz omawiac ten jME.
Ale napisałem... omfg...
 
Posted: September 20, 2010 17:58 by kingpig
Sorasy, że tak późno piszę Tongue


Przemyślałem kwestie, które poruszyłeś:
  • "opisać OGL'a lepiej" Zastanawiałem, żeby rzucić w pazdu 2d. Wcześniej byłem nastawiony, że zanim przejdziemy do 3d, to dobrze opanujemy 2d. Ale w sumie 3d jest:
  • ciekawsze niż 2d
  • trudniejsze - moim zdaniem tylko z tego względu, że jest więcej rzeczy do opanowania (przy prostych grach), a to i tak zależy co się chce napisać
  • bardziej efektowne przy tym samym nakładzie pracy także to nie byłby zły pomysł. Jeśli nikt nie podejmie dyskusji, to PG stają się "sekcją programowania gier 3d".
  • "zrozumienie 'jak to działa", "zabawki typu ARB", "wiec moznaby nawet podzielic czas (niekoniecznie po polowie) ale zeby zahaczyc o postawy, a pozniej nawet na tej samej godzinie juz omawiac ten jME" Podoba mi się taki podział. Czyli: część czasu na jME (przypominam innym że chodzi o JMonkeyEngine Wink) a część na hardcore (może za duże słowo) teorię 3d, OpenGL. Nie dajemy nic ze sztucznej inteligencji czy jakiejś algorytmiki, żeby zawężyć zakres materiału i skupić się na czymś konkretnym. jME jako coś efektownego, wysokopoziomowego, łatwego. Esencja 3d jako taka wykładowa, teoryzująca część zajęć.
  • i właśnie np. omawiamy sobie taki format plików Collada a potem za pomocą jME pokazujemy go w akcji. Odpada pisanie własnych loaderów czegokolwiek, bo nie taki jest profil naszej sekcji.


jeśli chodzi o pisanie postów, to Kenai SSie -__-
 
Posted: October 03, 2010 21:30 by kingpig
Dobra, oto moja propozycja.

Dzielimy czas na połowy:

  • Pierwsza jest przeznaczona wyłącznie dla wybranego game engine. Enginowe spotkania będą opierać się na omawianiu możliwości wybranego narzędzia. Zajęcia będą bogate w demonstracje - praktycznie zero zagadnień typu "to wyświetla się w ten sposób, ponieważ OpenGL bla bla bla ..." czy "w tym miejscu zmienna wskaźnikowa A przechowuje adres obszaru pamięci gdzie bla bla bla ...". Nie rozpracowujemy budowy klocków. Uczymy się do czego służą i jak trzeba je do siebie dopasowywać by otrzymać wymarzony efekt.
  • Druga na teorię grafiki trójwymiarowej, OpenGL i inne tematy pozwalające na zrozumienie jak naprawdę działają gry.

Przy takim podziale każdy będzie miał wybór - możliwe będzie świadome opuszczanie zajęć teoretycznych, przy zachowaniu motywacji na pojawianie się na tych, gdzie otrzyma się gotowe, szybkie rozwiązania.
Mogę się założyć, że większa część osób chce skupić się tylko na właściwym pisaniu gry. Ma pomysł i chce go zrealizować przy stosunkowo małym nakładzie pracy. Dlatego uważam też, że to jest właśnie odpowiedź na to, w jaki sposób powinniśmy programować pierwszą grę.

Jeszcze raz zaznaczam, że nie rezygnujemy z podstaw - jestem przekonany, że dla osób, które wiążą swoją przyszłość z 3d, nasze zajęcia będą doskonałą okazją by połączyć przyjemne z pożytecznym. Smile
------------------------------------------------------------------------------------------------------------------------------------------------------------
Co Wy na to?
showing 1 - 13 of 13
Replies: 12 - Last Post: October 03, 2010 21:30
by: kingpig
  • Mysql
  • Glassfish
  • Jruby
  • Rails
  • Nblogo
Terms of Use; Privacy Policy;
© 2010, Oracle Corporation and/or its affiliates
(revision 20120127.ac94057)
 
 
Close
loading
Please Confirm
Close