PDA

Prikaži potpunu verziju : Koliko više ima smisla?


Geomaster
10.2.2011, 0:24
Evo ovako forume Sveta Kompjutera, odnosno programeri sa foruma Sveta Kompjutera, otvorio sam ovu temu da bih vas pitao nešto u vezi sa razvojem igara danas. Molim vas, pročitajte do kraja, cenim da će bar biti odmor od klasičnih tema koje se ovde pojavljuju ("ne znam da otvorim help pa pitam vas", imam ispit sutra a ništa nisam učio, kako se programira u c-u" i sl.).
Vidim da sve više i više niču razni softverski alati namenjeni za brz i robustan razvoj igara. Takvi alati se uglavnom sastoje od nekog game engine-a koji ih pokreće i nekog skript jezika koji se koristi za programiranje ponašanja i interakcije igre sa korisnikom (i komponenti igre među sobom).
Korišćenje ovih alata je u najmanju ruku lako zbog toga što se korisnik ne mora brinuti praktično ni o čemu osim o tome da njegova igra radi i izgleda kako treba.
Pitanje, koliko je to fer prema nekome ko svoju igru pravi "from scratch" ili integrisanjem više različitih biblioteka, pritom vodeći računa o svim pipavim detaljima između tih biblioteka? Ukoliko je ozbiljan projekat u pitanju, taj neko će verovatno morati da iskoristi neki scripting jezik. To onda povlači pisanje gomilu modula koji povezuju nativni kôd igre i ovaj scripting jezik – jednom rečju, to je mnogo posla. Za tako nešto je potrebno mnogo truda, strpljivosti, vremena itd.
Međutim, sa druge strane, druga osoba može skinuti neki od ovakvih softvera za razvoj igara (jedan primer je recimo Unity (http://unity3d.com/) koji je meni prvi pao u oko ali sudeći po raznim izvorima, nije ni prvi ni poslednji alat ovakvog tipa). U ovakvom alatu su sve stvari – za koje je osobi A trebalo 7 neprospavanih noći da napiše, testira, debugguje i sredi – dostupne kao ready-made moduli. Onaj ko hoće nešto da uradi u ovom alatu je dovoljno samo da startuje editor, importuje svoje assete i krene da kuca kôd za skripte – nigde ne vidite memory management, interakciju modula igre, implementacije vezane za grafiku, zvuk, fiziku, GUI sisteme, scene managere, optimizaciju, itd. – sve što skripting jezik vidi je jedan veliki, integrisan i robustan interfejs koji se veoma lako koristi. Sva implementacija otpada na razvojni tim dotičnog alata koji verovatno broji stotine (možda i hiljade?) profesionalaca sa velikim iskustvom i izvrsnom specijalizacijom.
Možemo slobodno reći da će igra koju napravi osoba A biti potpuno igriva, solidnog izgleda i interesantnog gameplay-a zbog toga što je dotična osoba bila veoma pažljiva pri njenoj izradi, i uz to je trebala da vodi računa o mali milion stvari.
Igra koju je osoba B napravila za 10 puta manje vremena (zbog svih stvari koje je već imala na raspolaganju) izgledati lepše i biti bolje optimizovana (ovo već zavisi od veštine osobe B, ali čisto diskusije radi) zbog toga što je framework koji stoji iza te igre izgradilo stotine profesionalaca, dok je u slučaju osobe A to bio jedan developer za malim iskustvom i veštinom u poređenju sa već pomenutim timom.
Pokažite te dve igre krajnjem korisniku i on neće pitati kako su napravljene. Gledaće grafiku, zvuk, gameplay, najverovatnije će iskusno gejmersko oko zapaziti i najmanji bag i nelagodnost i oko toga dići dreku (da, čitao sam Screenfun).
Opet ponavljam pitanje, koliko je fer prema osobi A izjedanačavati igru koju je ona napisala, sa igrom koju je napravila osoba B?
A opet, ne možete reći da se osoba B služila "prljavim trikovima" – i ona je, sa svojih deset prstiju napravila tu igru, samo što je koristila različit alat od osobe A. I sad, tu je 'no hard feelings', niko ne može nikoga da okrivi, ni za šta.
I evo, pitam vas, da li ja, kao neko ko se uklapa u profil osobe A iz ovog teksta (naravno, sa mnogo manjom veštinom i mnogo manjim iskustvom iza sebe) trebam da idem linijom manjeg otpora i pređem na neki softverski paket za razvoj igara, i da ne radim više pomoću "štapa i kanapa"? Ako ne, koju ja motivaciju za to imam? To što će neko doći sutra sa igrom iz nekog ovakvog softverskog paketa, koju je napravio sa evidentno manjim trudom od mene, koja lepše izgleda i radi od moje (možda je ekspertiza mene i dotične osobe relativno ujednačena, ali korišćen alat stvara disbalans ovde) i ja, naravno, neću moći da se bunim, ni da kažem ijednu reč? A i realno, nemam pravo – kvalitetna igra je kvalitetna igra, bez obzira kako pravljena. Isto tako ja nemam nikakvo pravo da osobu B smatram na "nižem nivou" što se tiče veštine od mene, zbog toga što je napravila igru koja izgleda kvalitetnije od moje, niti bih isto probao da uradim da sam se našao u ovoj situaciji.
Ovo pitam, naravno, ne samo u moje ime, nego u ime mnogih sitnih game developera, koji se verovatno pitaju isto ili makar slično kao i ja.
Dakle, koliko danas ima smisla (x), da kao "sitna riba" u ovom poslu (čitaj: amater) radim na "old school" način izrade igara, i koliko ima smisla (1-x) da pređem na veći softverski paket (što sigurno ne bih hteo, jer meni to jednostavno ne leži, i ne osećam se "kako treba" kad to nekome predstavim kao "svoju igru", zato što iza nje leže milioni redova kôda od kog većinu ne razumem).

Evo, domaći zadatak za Forum: po čemu se dve generalno opisane igre razlikuju na način na koji će krajnji korisnik primetiti razliku, i zašto je dobro (ili loše) raditi igre na ovaj ili onaj način. Meni ovo jednostavno nije jasno, nekad je za normalnu igru bilo potrebno meseci i meseci znojenja nad kôdom, testiranja, štelovanja, debuggovanja, a danas je dovoljno skinuti neki besplatan paket, otvoriti editor i pustiti mašti na volju.

Moj ličan primer je što već mesec i po dana gradim jak framework koji stoji iza moje buduće igre, i tek sam pomalo zašao u grafiku više za potrebe testiranja nego za potrebe finalnog proizvoda, a onda vidim jednog lika (kog znam sa Interneta) kako mi pokazuje punu igru, možda duplo manje komplikovanu od moje, ali za koju mu je trebalo svega dva meseca da napravi i isprogramira.
I sad, ko je ovde lud?
(...)

Geomaster
10.2.2011, 0:30
Nastavak:

disklejmer: da se razume, nikog ja ovde ne napadam, posebno ne ljude koji koriste ovakve softverske pakete, niti napadam dotične softverske pakete (koji su, realno, prava remek-dela današnjeg softvera), već samo pitam: koliko sve to ima smisla raditi danas?
disklejmer 2: video sam par ljudi da je skoro na ovom forumu postavljalo neke projekte rađene sa Unityjom, da razjasnim (da ne bi bilo konfuzije posle) da ne mislim na njih, i da sam ovaj post planirao da napišem već neko vreme, kad dotične teme i postove nisam ni video (niti sam siguran da su postojali).

I za kraj, ovaj post jesam napisao zbog mog konkretnog slučaja, ali ovaj stav sam čuo kod mnogih amatera u gamedev poslovima i mislim da bi bilo OK da ovo postavim na forum koji je, kako mu ime kaže, forum i služi za otvorenu diskusiju na razne teme, a ne tebra-uradi-mi-domaći-i-vidi-ovu-simpa-igricu-koju-sam-napravio-u-krekovanom-game-makeru.

Mr.Eco
10.2.2011, 0:51
Pa ovako pročitao sam tvoj post pažljivo i strpljivo nisam programer i neznam koliko je potrebno truda da uloži da se napravi neki game engine from the scratch ali pošto sam linux korisnik mogu da povučem paralelu sa ovim što si do sada izneo (dijametralno drugačije stotine programera koji rade na windowsu, i bezbroj ljudi koji stoje iza linuxa i kontributuju na razne moguće načine) ...Ovako velika većina ljudi misli da je windows bolji od linuxa zato jer to radi korporacija velikog imena a da ne proba linux, ljudi to odma znaju na prvu ruku. Što se tiče igrica ja spadam u tu vrstu ljudi da me ne interesuje ko ili šta stoji iza te igre, sve dok me igra zabavi može to biti jedan čovek koji je mukotrpno radio na igrici, a može biti i tim od stotine ljudi koji su radili do najsitnije detalja... a što se tiče endžina to pogotovo bitno mi je da je dobro optimizovano i to je sve (zvuči okrutno ali mislim da tako mnogi ljudi misle...)
e sad na kraju igra treba da ima dobru priču pre svega pa sve ostalo, bilo da je urađeno od početka ili u tim gotovim programima jer na kraju krajeva to se i prodaje...
neznam kakav engine praviš nadam se da ćeš ga dobro uraditi i srećno, sad u zadnje vreme su veoma aktivne indie igre pa preporučujem da tako nešto napraviš sretno...

ilic stefan
10.2.2011, 0:58
E dragi moj Geomasteru. Svet je takav. Zato danas imamo igre koje fensi izgledaju ali su toliko bagovite jer ljudi sve rade sa jednim ciljem. Pare. Kada bi malo više razmišljali o igri a ne o parama "Crysis ne bi bio samo još jedna pucačina sa fensi grafikom" (kako reče jedan pametan član) već bi bio remek delo bolje od Half-Life. Na prste mogu da nabrojim igre koje danas rade bez ikakvih bagova još u 1.0 verziji. Pogledaj samo Fallout 3 ili Starcraft 2 gde je dogurao sa patch-evima. I još nisu kako treba.

Problem je i to što ta osoba B koju si naveo ne postoji. Međutim postoji osoba C koja za manje vremena isprogramira igru, igra lepše izgleda ali je daleko bagovitija i neigrivija od tvoje.

Moj savet ti je da doneseš borbu na njihov teren. Koristi i ti taj alat za razvoj što i oni koriste, sigurno ćeš daleko bolje da ga upotrebiš nego neki tamo balavac koji je tek naučio jedan programski jezik a već misli da može da napravi novi Half-Life. Pokaži svoju pravu kreativnost u tome. Nemoj da se obazireš na ostale. Gledaj sebe.

Jednom mi je jedna dobra žena rekla: "Nećeš svojim dobrim ponašanjem da promeniš svet, samo ćeš sebe iskidati".

Geomaster
10.2.2011, 1:09
Pa ovako pročitao sam tvoj post pažljivo i strpljivo nisam programer i neznam koliko je potrebno truda da uloži da se napravi neki game engine from the scratch ali pošto sam linux korisnik mogu da povučem paralelu sa ovim što si do sada izneo (dijametralno drugačije stotine programera koji rade na windowsu, i bezbroj ljudi koji stoje iza linuxa i kontributuju na razne moguće načine) ...Ovako velika većina ljudi misli da je windows bolji od linuxa zato jer to radi korporacija velikog imena a da ne proba linux, ljudi to odma znaju na prvu ruku. Što se tiče igrica ja spadam u tu vrstu ljudi da me ne interesuje ko ili šta stoji iza te igre, sve dok me igra zabavi može to biti jedan čovek koji je mukotrpno radio na igrici, a može biti i tim od stotine ljudi koji su radili do najsitnije detalja... a što se tiče endžina to pogotovo bitno mi je da je dobro optimizovano i to je sve (zvuči okrutno ali mislim da tako mnogi ljudi misle...)
e sad na kraju igra treba da ima dobru priču pre svega pa sve ostalo, bilo da je urađeno od početka ili u tim gotovim programima jer na kraju krajeva to se i prodaje...
neznam kakav engine praviš nadam se da ćeš ga dobro uraditi i srećno, sad u zadnje vreme su veoma aktivne indie igre pa preporučujem da tako nešto napraviš sretno...
Tako je otprilike, paralela sa Linuxom dobro ilustruje o čemu se radi.
Odavno mi je poznato kakav je odnos krajnjih korisnika prema proizvodu, i to bi trebalo da je tako. Korisnika ne bi ni trebalo da zanima šta stoji iza tog proizvoda, sve dok on radi korektno i kako korisnik očekuje, i to nije toliko surovo (dobro možda je 'surova istina' na koju su programeri oguglali) koliko činjenica da će neko provesti godinu dana sklapajući nešto što liči na jednu veoma dobru igru, a onda neki pametni reviewer koji "traži dlaku u jajetu" primeti neki mali bag koji se javi u nekoj nebuloznoj okolnosti – i to je odmah veliki minus za developera. Naravno to što je svaki detalj pažljivo uklopljen i isprogramiran nije plus nego "očekivano ponašanje". Ali to je to, život je takav i to se može prihvatiti.
Što se tiče mene, ne radim na endžinu (daleko sam od toga), već integrišem biblioteke u jedno (OGRE, irrKlang, PhysX, CEGUI itd.) i sve to ubacujem u framework sa Lua skriptingom. Kao što sam rekao u prvom postu, dosta posla, a jednim klikom na Unityjevom sajtu dobijete sve to, najverovatnije kvalitetnije isprogramirano nego što bih ja mogao, i za 2 minuta već gradite igre na ovom frameworku, za dva dana gledate svoju sopstvenu igru kako se razvija.
I naravno, hvala :)
E dragi moj Geomasteru. Svet je takav. Zato danas imamo igre koje fensi izgledaju ali su toliko bagovite jer ljudi sve rade sa jednim ciljem. Pare. Kada bi malo više razmišljali o igri a ne o parama "Crysis ne bi bio samo još jedna pucačina sa fensi grafikom" (kako reče jedan pametan član) već bi bio remek delo bolje od Half-Life. Na prste mogu da nabrojim igre koje danas rade bez ikakvih bagova još u 1.0 verziji. Pogledaj samo Fallout 3 ili Starcraft 2 gde je dogurao sa patch-evima. I još nisu kako treba.

Problem je i to što ta osoba B koju si naveo ne postoji. Međutim postoji osoba C koja za manje vremena isprogramira igru, igra lepše izgleda ali je daleko bagovitija i neigrivija od tvoje.

Moj savet ti je da doneseš borbu na njihov teren. Koristi i ti taj alat za razvoj što i oni koriste, sigurno ćeš daleko bolje da ga upotrebiš nego neki tamo balavac koji je tek naučio jedan programski jezik a već misli da može da napravi novi Half-Life. Pokaži svoju pravu kreativnost u tome. Nemoj da se obazireš na ostale. Gledaj sebe.

Jednom mi je jedna dobra žena rekla: "Nećeš svojim dobrim ponašanjem da promeniš svet, samo ćeš sebe iskidati".
U prvom delu teksta ubo si poentu. Retko igram igre (dobro volim i ja ponekad ali nije mi neka navika) i skoro sam skinuo Call of Duty Black Ops, čisto da bih bio u toku sa time koliko su igre napredovale. Znači bukvalno sam ručno morao da menjam njihove skripte da bih naterao neke misije da rade bez bagova, ali to je sad već offtopic.
Osoba B možda i postoji, sigurno postoje ljudi koji koriste ovakve alate a uz to su i veoma dobro tehnički potkovani, a za osobu C si donekle u pravu.
Jasno je to meni, ali zašto uopšte ovo vidimo kao borbu? Meni nije problem da downloadujem takav alat, i cenim da bi se snašao. Ali opet nije to to, rekoh čini mi se u prva dva posta. Teško je da se nekome objasni, ali prenesi to na svoju oblast, čime se baviš — kad radiš na nečemu mnogo dugo, sklapaš ga, paziš na svaku sitnicu, onda ga uključiš — a ono radi kao sat :D Znači to je lična satisfakcija. A uz to, mnogo ću više poboljšati svoje skillove kao programer radeći na "stariji" način nego koristeći alat, ali izgleda je ovo kao neki tradeoff, otkud znam.

irreal
10.2.2011, 1:11
Nekoliko puta ponavljas pitanje koliko je fer.

Ne moze da bude fer ili ne fer, ne postoji sud koji odlucuje koji alat smes da koristis koji ne, pa da ti fer sudi.

Ako ima potraznje i ponude, bice korisceno.

Ima ljudi koji zele da prave stvari kao sto je Unity i ima ljudi koji zele da isti koriste kako bi lako i brzo napravili igru. To je jednostavno kako jeste, nema sta tu da bude fer ili ne fer, tebe niko ne prisiljava ni na jednu opciju.

Zamisli da si pitao: "koliko je fer da ja posto sam hardcore amiš moram da jasem konja gde god da krenem a drugi ljudi koriste masine iza kojih stoji stotine i hiljade ljudi (automobile) da se lako i brzo prevoze".
Tu su jedino bitne tvoje mogucnosti i tvoje opredeljenje.


Sto se tice toga koliko ima smisla raditi "old school", to, opet, zavisi od tvog opredeljenja. Ako ti radis old school, znaci da za tebe ima smisla. Ako neko drugi nece to da uci nego koristi Unity, za njega to drugo ima smisla.

Jedno bi bilo da si ti ne informisan o tome kakvo je stanje (sto naravno nisi) pa da pitas koliko ima smisla. Al posto si vise nego upucen, ostaje samo da odlucis, ne mozemo mi umesto tebe da mislimo :)

IcaRakijica
10.2.2011, 1:19
Pa iskreno mislim da osoba B ide samo kraćim putem do cilja nego osoba A. Govorim to iz ličnog iskustva. Velike kompanije za razvoj igara prvo naprave game engine za igru a potom dodaju sve ostalo. Jako puno vremena je potrebno da bi se napisao pristojan engine tako da osoba A izgubi jako mnogo vremena na engine-u dok osoba B samo preskoči taj deo. I pored svih tih engine-a na tržištu skoro da i nema nekih dobrih igara koje je uradio samo jedan čovek. I da bi izvukao maksimum iz nekog engine-a opet moraš znati dobro da programiraš, modeluješ, da izrađuješ teksture... Kada osoba A završi svoj engine teško da će imati nešto bolje od Unity-a ili nekog drugog engine-a a izgubiće puno vremena. Za to vreme osoba B može da unapređuje svoju igru ili da počne da pravi drugu. Potvrda da je game engine izuzetno dobro rešenje govori i to da je Need For Speed: World urađen sa Unity game engine-om. Sve više kompanija koristi engine kao što je UDK ili Unity iz prostog razloga - imaš ideju, odmah je realizuješ i izbacuješ na tržište. Ne gubiš vreme i profit. Hiljadu ljudi unapređuje Unity da bi mogao da se takmiči sa ostalima kao što je UDK, to bi morala da radi i osoba A. Za jednu osobu ili manji tim game engine je pravi izbor. Kod osobe A jedini problem je vreme koje nema.

Geomaster
10.2.2011, 1:21
Nekoliko puta ponavljas pitanje koliko je fer.

Ne moze da bude fer ili ne fer, ne postoji sud koji odlucuje koji alat smes da koristis koji ne, pa da ti fer sudi.

Ako ima potraznje i ponude, bice korisceno.

Ima ljudi koji zele da prave stvari kao sto je Unity i ima ljudi koji zele da isti koriste kako bi lako i brzo napravili igru. To je jednostavno kako jeste, nema sta tu da bude fer ili ne fer, tebe niko ne prisiljava ni na jednu opciju.

Zamisli da si pitao: "koliko je fer da ja posto sam hardcore amiš moram da jasem konja gde god da krenem a drugi ljudi koriste masine iza kojih stoji stotine i hiljade ljudi (automobile) da se lako i brzo prevoze".
Tu su jedino bitne tvoje mogucnosti i tvoje opredeljenje.

Sto se tice toga koliko ima smisla raditi "old school", to, opet, zavisi od tvog opredeljenja. Ako ti radis old school, znaci da za tebe ima smisla. Ako neko drugi nece to da uci nego koristi Unity, za njega to drugo ima smisla.

Jedno bi bilo da si ti ne informisan o tome kakvo je stanje (sto naravno nisi) pa da pitas koliko ima smisla. Al posto si vise nego upucen, ostaje samo da odlucis, ne mozemo mi umesto tebe da mislimo :)
Moguće da sam par puta ponovio pitanje, pod utiskom. Ako se uporede takve dve igre onda je činjenica da to po definiciji nije fer, zbog prednosti koju jedan autor ima nad drugim.
Ja sam, recimo, pre par godina, imao ideju da napravim neki mali game studio. Tada je to bila ideja bez uticaja bilo čega ostalog, tj. nisam znao da takvi alati već postoje. Onda sam skoro naleteo na Unity i tu video sve stvari koje sam u glavi (više nesvesno) zamislio u tom virtuelnom game studiju. Čak je i ideja za sistem shadera koju sam imao implementirana u punom svetlu pod imenom 'surface shaderi'. Znači isto tako sam zamišljao - jedna funkcija u Cg-u koja radi neki specifični shading, pa onda shader sistem koji komponuje više takvih funkcija u jedan shader koji se veoma lako customizuje. Kad sam to video skontao sam da mnogo stvari nema smisla raditi sam, zato što je to već neko uradio, mnogo kvalitetnije i bolje, i da to ima smisla samo ako radim za ličnu edukaciju (niko normalan ne bi uzeo moj mali game studio, bagovit i sa malo featurea, nasuprot velikom Unityju sa ogromnom masom ljudi koji ga koristi i njegovoj profesionalnosti).

Pitanje sam postavio upravo da pitam da li se isplati raditi ovo, mada mislim da ću ipak morati ja da porazmislim malo o ovome. Meni lično bi bilo žao da ostavim ovih 6 godina iskustva u C++-u (koliko god to bilo malo) da bih krenuo da radim u nekom većem alatu u kome mogu da vidim rezultate brže, ali u kome mi je praktično sve dato "na tacni".

Hvala na odgovorima do sad.
Pa iskreno mislim da osoba B ide samo kraćim putem do cilja nego osoba A. Govorim to iz ličnog iskustva. Velike kompanije za razvoj igara prvo naprave game engine za igru a potom dodaju sve ostalo. Jako puno vremena je potrebno da bi se napisao pristojan engine tako da osoba A izgubi jako mnogo vremena na engine-u dok osoba B samo preskoči taj deo. I pored svih tih engine-a na tržištu skoro da i nema nekih dobrih igara koje je uradio samo jedan čovek. I da bi izvukao maksimum iz nekog engine-a opet moraš znati dobro da programiraš, modeluješ, da izrađuješ teksture... Kada osoba A završi svoj engine teško da će imati nešto bolje od Unity-a ili nekog drugog engine-a a izgubiće puno vremena. Za to vreme osoba B može da unapređuje svoju igru ili da počne da pravi drugu. Potvrda da je game engine izuzetno dobro rešenje govori i to da je Need For Speed: World urađen sa Unity game engine-om. Sve više kompanija koristi engine kao što je UDK ili Unity iz prostog razloga - imaš ideju, odmah je realizuješ i izbacuješ na tržište. Ne gubiš vreme i profit. Hiljadu ljudi unapređuje Unity da bi mogao da se takmiči sa ostalima kao što je UDK, to bi morala da radi i osoba A. Za jednu osobu ili manji tim game engine je pravi izbor. Kod osobe A jedini problem je vreme koje nema.
Sad, jedno pitanje o kome sam malo razmišljao. Ako svi krenu da rade sa Unityjom i UDK-om, ko ostaje da programira i unapređuje te alate? Ako se u budućnosti sve bude radilo tako, šta jedan programer sa nešto iskustva rada u jednom programskom jeziku može da uradi da to iskustvo "uposli"? Da li to znači da iskustvo sa radom sa nekim graphics, sound, physics ili nekim trećim engineom postaje bezvredno zato što se prelazi na ovakve alate?
Da li je ovo "surova istina" koju samo treba prihvatiti kao takvu ili ja mašim nešto ovde?
Opet, ono što me odvraća od Unityja i sličnih alata je to što polako nestaje individualnost.

IcaRakijica
10.2.2011, 1:34
Teško da možeš nešto sam da uradiš, ali možeš da pokažeš svojim radom svoje iskustvo i pridružiš se nekom timu na razvoju engine-a. Jedan čovek sam nije u mogućnosti, ni sa engine-om kao što je Unity, da napravi neku hit igru.

Mr.Eco
10.2.2011, 1:35
Evo opet nerazumem se u te termine unity i to ali, ako se može napraviti kvalitetna igra u tom engine, isto takva kakvu bi ti napravio za duže vreme, mislim da tu netreba da se polemiše jedino ako nisi hobista i imaš višak vremena, kako mi se čini da sa tim enginom da je to kao na fabričkoj traci da igre jedno za drugom što nije loše ako neko ima dobru ideju može lako da je plasira, jedino ako želiš nešto da napraviš revolucionarno što nema nigde pa moraš iz početka onda je ok ali ovako...

Fibonacci
10.2.2011, 1:37
Ne bih da komentarisem na temu jer smatram da nisam kompetentan, samo bih da kazem da me je cela tema vrlo zagrejala za buducu Geomasterovu igru. Tako da, srecno i kada zavrsis, obavezno obavesti! :)

IcaRakijica
10.2.2011, 1:48
Revolucionarno po pitanju ideje za igru? Ako je ideja za igru nešto što još nema, opet možeš da je za kraće vreme plasiraš sa engine-om. Revolucionarno po pitanju engine-a? Teško, oni svi zavise od mogućnosti operativnog sistema, grafičke karte, memorije itd. Primer - ako ti igra podržava DX10, onda moraš da igraš po njihovim pravilima, znači to ti je limit ili prostije mogućnosti integrisanih biblioteka. Savremeni engine-i se redovno apdejtuju i kako se pojavljuju nove mogućnosti oni ih iskorišćuju.

Geomaster
10.2.2011, 1:56
Teško da možeš nešto sam da uradiš, ali možeš da pokažeš svojim radom svoje iskustvo i pridružiš se nekom timu na razvoju engine-a. Jedan čovek sam nije u mogućnosti, ni sa engine-om kao što je Unity, da napravi neku hit igru.
Kao što rekoh ranije, ja možda imam neko iskustvo, ali realno niko mene ne bi pustio da u 14 godina radim na nekom game engine-u. Stvar je u tome što je meni primarni fah programiranje, rešavanje problema, dizajniranje sistema i pisanje kôda, a manje rad na umetnosti tipa modeling, 2D art (teksture, HUD, GUI).
Evo opet nerazumem se u te termine unity i to ali, ako se može napraviti kvalitetna igra u tom engine, isto takva kakvu bi ti napravio za duže vreme, mislim da tu netreba da se polemiše jedino ako nisi hobista i imaš višak vremena, kako mi se čini da sa tim enginom da je to kao na fabričkoj traci da igre jedno za drugom što nije loše ako neko ima dobru ideju može lako da je plasira, jedino ako želiš nešto da napraviš revolucionarno što nema nigde pa moraš iz početka onda je ok ali ovako...
Nije ni Unity toliko lak za korišćenje da izgleda kao da je na fabričkoj traci, ali je sigurno lakše nego pisati sam svoj framework. Ja sam od početka bio protiv toga jer bih se osećao asimilirano u ceo taj svet. Radom u Unityju više dolaze do izražaja umetničke sposobnosti autora, dok radom "pešaka" više dolazi do izražaja sposobnost kodiranja i sofisticiranog rešavanja raznih problema.
Ne bih da komentarisem na temu jer smatram da nisam kompetentan, samo bih da kazem da me je cela tema vrlo zagrejala za buducu Geomasterovu igru. Tako da, srecno i kada zavrsis, obavezno obavesti! :)
Hvala! Naravno, kad budem završio obavestiću, ali neću još ništa o njoj da pišem zbog toga što je trenutno tek na početku i više u nekoj 'virtuelnoj' fazi (preko 50 fajlova sa čistim kôdom, ali veoma malo toga na ekranu, više za potrebe testiranja). Kada budem malo poodmakao objaviću i na ovom forumu i možda još negde, zajedno sa celim development logom koji će možda pomoći drugim game developerima u svojim projektima, ali otom potom. Od ideje do realizacije.
Revolucionarno po pitanju ideje za igru? Ako je ideja za igru nešto što još nema, opet možeš da je za kraće vreme plasiraš sa engine-om. Revolucionarno po pitanju engine-a? Teško, oni svi zavise od mogućnosti operativnog sistema, grafičke karte, memorije itd. Primer - ako ti igra podržava DX10, onda moraš da igraš po njihovim pravilima, znači to ti je limit ili prostije mogućnosti integrisanih biblioteka. Savremeni engine-i se redovno apdejtuju i kako se pojavljuju nove mogućnosti oni ih iskorišćavaju.
U svakom slučaju postavlja se pitanje zašto su sve današnje igre ipak pisane u nekom programskom jeziku a ne u već gotovom alatu za gamedev sa neta. Btw, sad sam pogledao i video da i ti radiš u Unityju, pa jedno pitanje na koje nisam uspeo da nađem odgovor—koje sve render systeme Unity podržava na PC-ju i koje sve OS-ove (win32/win64, linux, osx)? Na sajtu piše da radi na PC-ju ali nigde ne piše da li koristi DirectX, OpenGL ili oba i na kojim operativnim sistemima radi.
Ono što sam video na sajtu je to da ono što Unity daje na kraju jedan executable, što ja vidim kao jako nefleksibilno rešenje, ali dobro.

IcaRakijica
10.2.2011, 2:17
"U svakom slučaju postavlja se pitanje zašto su sve današnje igre ipak pisane u nekom programskom jeziku a ne u već gotovom alatu za gamedev sa neta."

Sve igre koriste game engine. Evo ti primer...

Call of duty 4
-IW Engine

America's Army 3
Batman: Arkham Asylum
BioShock
Borderlands
Brothers in Arms: Hell's Highway
BlackSite: Area 51
Gears of War
Gears of War 2
Unreal Tournament 3
Rainbow Six Vegas
Splinter Cell: Conviction
Lost Odyssey
Mass Effect
Mass Effect 2
The Last Remnant
Medal of Honor: Airborne
Blade and Soul
Bulletstorm
-Unreal Engine 3

Assassin's Creed II
Prince of Persia: The Forgotten Sands
Assassin's Creed: Brotherhood
-Anvil engine

Far Cry
-CryEngine

Crysis
Entropia Universe
-CryEngine 2

Crysis 2
-CryEngine 3

Warhammer 40,000: Dawn of War 2
-Essence Engine

Fallout 3
-Gamebryo

Star Wars: The Old Republic
-HeroEngine

Doom 3
Quake 4
Prey
Enemy Territory: Quake Wars
Wolfenstein
-id Tech 4

Baldur's Gate
Baldur's Gate II: Shadows of Amn
-Infinity Engine

Midnight Club: Los Angeles
Grand Theft Auto IV
-RAGE

The Lord of the Rings: The Fellowship of the Ring
-Riot Engine

Red Alert 3
Generals
Tiberium Wars
The Battle for Middle-earth II
-SAGE engine

Jagged Alliance 3 (in development)
Heroes of Might and Magic V
-Silent Storm engine

Half Life 2
Team Fortress 2
Portal
Left 4 Dead
Left 4 Dead 2
-Source engine

The Settlers 7: Paths to a Kingdom
Cutthroat
-Vision Engine 8

Svi ovi engine-i su dostupni samo velikim razvojnim timovima. Neki se plaćaju i po 100.000 - 500.000 za komercijalnu upotrebu. Unity ima svoju besplatnu verziju za komercijalnu upotrebu.

Ivan452
10.2.2011, 2:28
Ovakva dva pristupa imas svuda.
Mislim da je najocigledniji primer u WebDesign-u.
Gde sa jedne strane imas ljude koji rade "from scratch", sve sami. Pozadine, slike, animacije, digmice, skripte.
A sa druge strane imas one koji uzmu template, skinu programe koji ce da odrade animacije. I eto, gotov sajt za 10x manje vremena.
Znao sam ljude koji su prodavali sajtove a koje su pravili samo na osnovu gotovih template-ova. A mislim da su o WebDesign-u znali manje od mene koji nikad to nisam radio.

Onda evo imas primer u programiranju za Android. Izasao program koji platis 400 evra godisnje i sam ti izgenerise svu potrebnu fiziku u bilo kojoj igrici.

Tako da se svuda ovaj princip ponavlja.
Nisam se ikad bavio programiranjem igara, ali verujem da ces lakse ova grupa koja radi "from scratch" preci na koriscenje softvera nego obrnutno.

Kada sam na faxu ucio Java programiranje, prvo smo ucili crtanje dugmica pa tek onda DragAndDrop.
I sada ih naravno ne crtam nego ih samo prevlacim.

Tako da mislim da se generalno ne treba slepo drzati jednog principa.
Naucis da radis "from scratch", a onda ako ce ti trebati 10x vise vremena da odradis nesto nego kada bi koristio softver mislim da bi suludo bilo okrenuti mu ledja. I onda kada ukombinujes ta dva pristupa izvuces maksimum.

A generalno, zivot nije fer.

hr0nic
10.2.2011, 10:04
@Geomaster
Mislim da covek treba uvek da se prilagodi situaciji, ili jedino ako nema sposobnosti nekog diktatora pa da situcaiju prilagodi svojim potrebama :)
Ja sam kao klinac pisao igre za spectrum, commodore i cak neke za Amigu, ali eto sticajem okolnosti nisam zavrsio kao programer. Godinama sam radio samo sa hardverom, cak sam drzao svoju firmu nekoliko godina, ali me to nikad nije ispunjavalo, nego je moralo od necega da se zivi. Pre jedno dve godine sam opet krenuo da se interesujem za game development, i evo vec godinu dana zivim samo od toga. A to je samo zato sto sam uspeo nekako da se prilagodim situaciji. Jednostavno covek mora da zna dokle moze sam da tera neke stvari.
Nije bas toliko prosto ili jednostavno da se radi i sa gotovim enginima. Nekad je lakse da napises svoj kod nego da prepravljas neciji. Radio sam u jednoj kompaniji koja nije mogla da nadje zamenu za glavnog programera vise od mesec dana, a finansije nisu bile problem, nego je bio problem da se nadje covek koji ce fiziku u enginu da sredi i prilagodi potrebama igre, jer nije bilo mogucnosti ni u ludilu da se engine pise od nule.Tu smo recimo svi imali mesec dana pauze zbog toga.I imam jos gomilu primera gde je bilo bolje da se ima svoj engine.
Savetujem ti da se ne opterecujes sa ovim stvarima, nego da samo ides napred i radis ono sto volis.Sigurno ces biti uspesan game dizajner jednog dana.

mogu i ja da ti odgovorim na pitanje u vezi unitija:
Unity koristi i OpenGL i DirectX, i pod windowsom moze da koristi oba.
Radi pod Windowsom i MacOS(samo OpenGL) za iphone koristi OpenGL ES.
Za bake svetla,AO i GI koristi Beast engine,Za occlusion culling koristi Umbra, za fiziku nvidia Physx.
Unity izbacuje jedan fajl samo kada je u pitanju web verzija igre, standalone ima gomilu fajlova sa sobom.

galebns
10.2.2011, 10:05
Pretpostavimo da ti sam napravis endzin za par godina, koji je sasvim solidan, ne mora biti i ultra napredan i napravis igru koja bude hit. Da li ces ti za sledecu igru opet iz pocetka da pises endzin? Neces, naravno. Postojeci ces da unapredis i onda ti dolazis u situaciju u kojoj je osoba B iz prvog posta :)
Da ne ulazim sad u to da li ti mozes sam i sta je sve potrebno da se napravi endzin, poenta je da sto da gubis vreme (pa i novac) da pravis nesto sto je vec napravljeno. E sad, ono po cemu tvoje delo, bilo da je to endzin ili igra napravljena sa vec gotovim endzinom, izdvaja od ostalih jeste ideja. Ok, svi mozemo skinutu Unity, nauciti da ga koristimo, ali konacni rezultat, igra, ce zavisiti samo od nas samih.
Slicna stvar je sa Photoshopom na primer, eto sad u poslednjoj verziji mozes u dva klika da uklonis nesto sa fotke kao da nikad tu nije ni bilo. I sad neko ko PS koristi od verzije 3 (ne CS3 :) ) moze da kaze "uh, al si se namucio, ja sam to nekada radio sat vremena".
Zbog ovoga neko moze da kaze "ih danas je lako napraviti super fotku/sliku/render/igru". Tehnicki jeste lakse ali napraviti umetnicko delo i biti originalan je sve teze i teze, upravo zbog toga sto je sve vise stvari moguce uraditi u dva klika, pa tako danas mali Perica moze da uradi nesto za 10 minuta sto je velikom Ziletu profesionalcu trebalo 3 sata :)
Poenta je da kakve god alate da imas na raspolaganju uvek ces se izdvojiti po nacinu na koji te alate koristis tj. po kreativnosti.

sasha vukelic
10.2.2011, 10:47
@geomaster: na kraju krajeva, znas i sam koliko je tebi lakse kad koristis npr. visual studio, u poredjenju sa kuckanjem koda u dosu od prije nekih petnaestak godina... a mozes da ides i dublje od toga... umjesto da kazes: "zasto da zavisim od nekog engine-a" isto tako mozes reci: sto bih ja zavisio od gotovog operativnog sistema? -- napravicu svoj OS koji ce biti potpuno odgovarajuci mojoj igri... ili dublje: sto bih zavisio od skupa operacija koje mi dozvoljavaju procesor i graficka kartica? -- cak i ovo zvuci potpuno opravdano kada razmislis: npr. zasto 3D svijet mora da se predstavlja pomocu trouglova? -- hocu da napravim svoju graficku karticu koja ce imati nekakav point sistem, ili sta ti ja znam.

sve zavisi od tebe: ako hoces da napravis novu mapu za SC2, treba ti jako malo vremena, ali sam znas koliko si ogranicen. s druge strane je da pocnes od toga da dizajniras novu vrstu kompjutera (i svega vezanog za to) i tu bi te malo sta ogranicavalo, osim kolicine potrebnog vremena :)

voodoo_
10.2.2011, 12:02
Disklejmer: da se razume, nikog ja ovde ne napadam, posebno ne ljude koji koriste ovakve softverske pakete, niti napadam dotične softverske pakete (koji su, realno, prava remek-dela današnjeg softvera), već samo pitam: koliko sve to ima smisla raditi danas?
Nema smisla. Koristi gotov endžin, ali izvuci maksimum iz njega. Bićeš zadovoljniji i ti i igrači tvoje igre.

Kada se koristi dobro razrađen endžin na kome radi gomila ljudi, greške u finalnoj igri nisu kritične prirode i lako se ispravljaju (jer se svode na popravku skriptovanja i slično). A onda pogledaj one nesrećnike koji su pravili Magicku u sopstvenom endžinu (koji je doduše izgrađen na XNA, ali je svejedno njihov jer su morali isprogramirati i fiziku i rendering i upravljačku mehaniku), izašlo je devet patcheva za dve nedelje i igra još uvek nije 100% stabilna.

player1
10.2.2011, 12:37
Presnost gotovog engine-a i alata za njega:
-lakoca pravljenja igre
-usteda vremena, a vreme je novac!!!

Primer: Obisdian je za nepunih godinu dana uradio Knights of the Old Republic II, koristeci endgine keca, kao i vecinu asseta. Slicno, taj isti Obsidian je uradio sa endgine-om za Fallout 3, i napravio Fallout: New Vegas.


Mane:
-limitiran si onime sta taj endgine podrzava, nema dovoljno fleksibilnosti

Primer: CD Project nije bio zadovoljan limitima Aurora engine-a (duuuuga ucitavanja, prostor iscepkan na male delove), koji je koristio u igri Witcher, i odlucio da pravi, od nule, novi endgine-a za Witcher-a 2.




P.S.
Sve u svemu, za one-man projekat, mnogo je zgodnije koristiti gotov engine, dok sa druge strane iskustvno u pravljenju sopstvenog engina moze da mnogo pomogne u buducnosti po pitanju zaposljavanja, jer bar u igrackoj industiji itekako je i praksa praviti engine od nule.

Pa sad vidi, dal ti je vaznije da napravis kompletnu igru, u razumnom vremenskom roku, ili da sto je moguce vise naucis.


P.P.S.
Sto se tice komercijalne ne-gejmerske sfere programiranja, druga opcija, tj. pravljenje programa u alatima za razvoj je mnogo vise zastupljeno, jer prosto usteda na glupostima, kao rucno pravljenje menija, prozora i slicno, mnogo znaci, a pitanje performansi nije toliko bitno.

voodoo_
10.2.2011, 12:40
Doduše CD Project je 80% Aurore u Witcheru napisao od nule, tako da tehnički to i nije bio baš stari endžin.

player1
10.2.2011, 12:54
Ali i tih 20% je bilo previse po pitanju "nefleksibilnosti". Tj. u pitanju je unapredjena Aurora, sa nekim stvarima koje su i dalje sustinski iste. Na primer, zone povezane loading ekranima, bas kao u Bioware-ovom Neverwinter Nights-u, za koji je Aurora isprva uradjena.

I sad, u CD Projektu, hoce da im se cela igra streamuje u realnom vremenu. U takvoj situaciji, moras da porusis temenje i krenes ispocetka.

NISAM NESTO SMART
10.2.2011, 13:37
I mene zanima game dev i trenutno pravim jednu igru koristeci SFML(sto i nije pravi game engine vec kao neki framework za igru) i cesto imam nedoumicu kao Geo, da li ima smisla ili jednostavno uzeti neki full engine kao GM i za par dana zavrsiti igru.Ali onda kad malo razmislim ni da me bijes ne bih koristio GM,ja neznam da radim grafiku,muziku,gamedizajn jedino sto bi dobio je jednu jadno uradjenu igru sa losim resoursima...bar ovako naucim dosta o programiranju a to mi je i cilj, imam vecu slobodu da ubacim sta god hocu u igrici jednostavno nekako nisam ogranicen.
Meni sad nije bitno da sto pre napravim igru i da na toj igri zaradim neke pare ili nesto slicno...tako da meni sto vise vremena provodim praveci je neznaci gubitak novca vec odbitak znanja.
Sad po meni najbolje je odabrati neku oblast u gamedev..koja tebi najbolje lezi i krenuti tako, i da je svako strucan u svojoj oblasti i kad se svi zajedno skupe u tim trebalo bi da naprave funkcijonalnu i dobru igru sad da li ce biti uspesna to vec odredjuju drugi faktori.
Tu i tamo pratim indie game dev, i uglavnom ljudi kojima je to profesija programiraju svoje igre, neki to vec rade u postojecim enginima neki u svojim, evo i ovde ima tema slicna ovoj (http://forums.tigsource.com/index.php?topic=13989.0)
Evo na primer ja u flashu programirao sam igre koristeci flixel engine poprilcno prost i jednostavan i sve je ok..dok mojoj igri nisu trebale neke opcije koje nisu ugradjene u engin....trebao sam da prilagodim tile map klasu koju vec imas gotovu u flixelu, ali ja nisam razumeo kako ona funkcionse i nisam ni mogao da ubacim neke dodatne opcije...jednostavno morate znati sta je ispod haube da bi ste imalu potpunu kontrolu.
Sto se tice one-man team u game dev moguce je napraviti veoma dobru igru iako onda morate prakticno o svemu da se brinete, jer dosta velikih game studija prave dosadne igre sve jedno isto samo napucanija grafika i vise bagova....zato vise i volim indie igre koje pruzaju nesto originalnije...jedan super primer je Minecraft koje uradio samo jedan lik i to mislim da je u Javi programirao, napravio originalan gameplay, nice retro dizajn i igra postala veliki hit.

Geomaster
10.2.2011, 13:53
Većina nije tačno razumela šta ja radim — ne pravim game engine 'od nule', već samo integrišem više biblioteka u jednu (OGRE za rendering, irrKlang za zvuk, PhysX za fiziku i Lua za skritovanje), ali kao što rekoh i tu treba dosta posla pre nego što krenem stvarno da se bakćem sa igrom.
Kao što neko reče, taj framework koji sad napravim mogu samo da unapredim za svoj sledeći projekat, i dolazim u situaciju kao osoba B. Jedna stvar zbog koje ne bih voleo da koristim gotov alat je to što ja mnogo manje toga naučim, a tu je i ono što je neko spomenuo a to je zaposlenje u budućnosti. Mada pisati svoj framework možda i jeste malo luda ideja, ali dobro, ima se vremena.

voodoo_
10.2.2011, 16:03
Vremena ćeš imati sve manje što budeš stariji, u to ne sumnjaj :D

doctor
10.2.2011, 16:27
Heh, a meni bi na primer predstavljalo zadovoljstvo da napišem svoj engine od nule ili neki framework :) Ali, opet, kad sagledam sve ograničava me samo jedan faktor - vreme. Jednostavno ga nemam od previše obaveza.

Dakle, kao što reče voodoo, problem će ti ubuduće najviše predstavljati vreme, osim ako stvarno ne odlučiš da se posvetiš jednoj stvari koliko je god to moguće.

Ljudi u velikim studijima to znaju, i zato koriste "gotove" engine-e, jer vreme je novac ;)

Sada verovatno imaš dovoljno entuzijazma da pišeš svoj engine/framework, i to je jako dobro jer ćeš imati veću kontrolu nad igrama koje budeš pravio, ali neće taj jedan engine večno biti aktuelan, tako da će ti se sve to na kraju smučiti. Bar ja tako mislim.

Lepo je napisati svoj engine jer se pritom stiče ogromna količina znanja, ali je takođe i jako naporno, a može biti i neisplativo.

Na kraju krajeva lično smatram da bi trebao da se opredeliš: pišeš engine-e ili praviš igre uz pomoću tuđih engine-a. Pisanje svog engine-a i pravljenje igre u njemu predstavlja moralnu satisfakciju, kako god drugačije da sagledaš (pogotovu sa aspekta utrošenog vremena), mnogo je bolje uzeti neki drugi engine i izraditi igru u njemu.
Ono što ja hoću da kažem: ili razvijaš ono što je ispod haube ili dizajniraš haubu :D

My 2 cents :D

player1
10.2.2011, 16:42
Pa kao sto sam rekao, treba videti sta je bitnije. Da li uraditi igru u spremnom engine-u, ili nauciti sto vise pravljenjem svog engine-a, uz rizik da igra nikad ne bude zavrsena.

Meni deluje da je tebi bitnije ovo drugo, tj. ne da napravis igru po svaku cenu, nego da se usavrsavas. Zar ne?

Geomaster
10.2.2011, 20:22
Pa kao sto sam rekao, treba videti sta je bitnije. Da li uraditi igru u spremnom engine-u, ili nauciti sto vise pravljenjem svog engine-a, uz rizik da igra nikad ne bude zavrsena.

Meni deluje da je tebi bitnije ovo drugo, tj. ne da napravis igru po svaku cenu, nego da se usavrsavas. Zar ne?
Naravno da je meni na prvom mestu da se usavršim što više u programiranju, ali to ne znači da neću da pišem igru — ovaj game framework pišem upravo zato.

JohnnyNT
10.2.2011, 21:13
Nisam programer, ali sličnu pojavu ovoj koju Geo navodi sam uočio i u web dizajnu (kao što neko već pomenu).Uzmeš CMS i fancy tempalte i eto bloga, sajta, pa čak i društvene mreže.Samo da isklikćeš po pravim opcijama i to je to.
A kada treba izmeniti template, ispraviti grešku u nekom modulu ili plugin-u, nedostaje znanje iz php-a, java script. pa čak i bazično znanje html-a.
Doduše, i ja sam bio osoba B iz prvog posta, ali sam posle nekog vremena uvideo da me default opcije dosta ograničavaju pa sam počeo da učim php i ostao (bar sam html odavno znao, muka manje).
Uostalom nijedno znanje nije beskorisno, u budućnosti će tvoj CV biti mnogo bogatiji od onoga što je koristio "instant" rešenja, a samim tim i šanse da dobiješ željeno radno mesto.

boshkodj
10.2.2011, 21:29
Ne znam, meni je odgovor na ovo pitanje isuvise prosto. Ako hoces da budes programer - programiraj igru u nekom jeziku. Ako hoces da budes designer ( Modelar, Artist ) - koristi neki od spomenutih game studio-a.

Neki od vas mesaju game engine i game studio. Uglavnom je svaka igra uradjena u nekom engine-u, tesko da ce neko raditi u cistom directX ( openGL-u ). Geomaster govori o game studio-ima, za koje je potrebno malo ( nimalo? ) programerskih vestina da bi se nabudzila neka igra.

:ciao:

Geomaster
10.2.2011, 21:41
"U svakom slučaju postavlja se pitanje zašto su sve današnje igre ipak pisane u nekom programskom jeziku a ne u već gotovom alatu za gamedev sa neta."

Sve igre koriste game engine. Evo ti primer...

Ovo je već zamena teza. Nisam govorio o game engine-u već o "gotovom alatu za gamedev" odnosno development environmentu za igre, uostalom prilično dobro je objasnio @boshkodj:

Neki od vas mesaju game engine i game studio. Uglavnom je svaka igra uradjena u nekom engine-u, tesko da ce neko raditi u cistom directX ( openGL-u ). Geomaster govori o game studio-ima

Game fever
10.2.2011, 22:43
Slazem se sa JohnnyNT. Uvek kad nesto programiram zelim da znam kako radi. Cak i kad prekopiram neku skriptu sa neta, proucim sta radi kako radi i sta bi mogao da izmenim. Nikad se nisam bavio tako velikim poduhvatima kao ti. Ali jedno znam, ma koliko neko proucavao neki engine nikad nece moci da ga savlada kao da ga je sam pravio i uvek ce biti ogranicen mogucnostima engina. Takodje smatram da je ne moguce naci engine koji moze da ispuni sve ideje nekog developer, pre ce programer da promeni svoje ideje i uskladi ih sa sistemom, sto opet ogranicava mastu i ideje. Ja sam se nedavno bacio na pravljenje svog CMS u php-u (content managment system), znam da postoji joomla i wordpress, ali ja zelim da implementiram neke ideje koje tamo ne postoje (ili su resene na nacin koji se meni ne svidja) i da mogu da ga izmenjam kako klijent zeli. A i sa tim se slazem sto je geomaster rekao, ne volim da predstavim nesto iza cega stoje hiljade redova koda koje apsolutno ne razumem.

Apprentice
11.2.2011, 12:51
Geomaster pre svega ne kloni duhom. Mislim da stvari sagledavaš kao neko ko je svaki svoj projekat radio sam.( izvini ako grešim ) Nema ništa loše u tome što sve radiš "od nule" bez nekog alata. Za šest godina si verovatno postao mnogo dobar i nema potrebe da misliš kako imaš premalo iskustva. Verovatno znaš da senior developeri postanu seniori sa nekada i manje od 5 godina. Ali to je druga tema.

Koristiti neki alat za pravljenje igara je tvoja lična odluka, koja ,naravno, zavisi od tvojih afiniteta, vremena, želja itd.
Verovatno si zamislio ovakvu situaciju:
Šta radi ogroman tim na nekom dugoročnom game projektu. Kako kreće realizacija. Kako kreće razvoj. Kakav je projekat uopšte ( recimo single play igra ili mmo ... ). Ima milion pitanja.U zavisnosti od mnogo faktora se verovatno odlučuje kako ćese odvijati programerski deo posla. Da skratim. Većina timova odmah na početku odluči da će koristiti alat koji su sami napravili ( ili će ga napraviti ) da bi implementirali endžin koji su sami napravili. Verovatno će taj alat napraviti da bude na neki način modularan, tj moći će da koristi drugačije module za endžin, i sve druge delove pri kreiranju igre. Ili će postojati odvojeni delovi alata za kreirajne mapa, skriptova i svega i svačega.

Pošto si programer ti bi u takvom timu razmišljao samo o , recimo, fizici. Koristio bi Visual Studio i direktno kucao kod. Ili bi koristio taj kreirani alat, ali bi sve jedno kucao C++ kod.

Hoću da kažem, da je gotovo nemoguće ne koristiti alate pri izradi bilo kakvog ozbiljijeg softvera. Alate koje ćemo mi napraviti za konkretan projekat ( ili za više njih...) ili alat koji je neko drugi napravio, a može da uradi to što nama treba. ( Primer: Visual studio 2005 se koristio da bi napravio Visual Studio 2008 itd. Ovo sam lupio. Ili šta je korišćeno da bi se napravio CS5 paket ... Blizard koristi svoje interne alate za mape, objekte, a verovatno i za programerske delove Wow-a, npr, kreiranje i updejt baze o karakterima i ko zna čega sve .)


To što si bio hard core svih ovih šest godina znači da si ispekao zanat, i slobodno koristi kakav god alat želiš. ( tj onaj alat koji ispunjava tvoje kriterijume dobrog alata. ) Sigurno i sam koristiš nešto što ima kompajler i dibager :). I game alat je alat kao i svi drugi samo radi nešto malo komplikovanije. Ali ako ti nije udobno budi hard core. Jedno je sigurno. Bićeš mnogo dobro plaćen za posao koji radiš, jer sam već prošle godine video mnogo oglasa za C++ game developere ;)

Raditi sa gomilom ljudi na projektu ( nisu svi programeri ) znači biti spreman na kompromis, raditi nešto što ti i nije baš OK onako kako ti možda i ne bi radio...Zato budi srećan što imaš izbor i vremena da radiš onako kako ti želiš. Zato upravo radi onako kako želiš.

Krajnji korisnici ne znaju koliko si ti dobar programer, oni samo kritikuju igru, a to znači da ne kritikuju tebe nego 300 ljudi. A od tih 300 ne rade svi baš dobro svoj posao kao ti.

BobaL
11.2.2011, 16:17
Misli globalno deluj lokalno.

Do sada je bilo nebrojeno mnogo timova koji su pokretali rad na uber-hiper superiornoj igri u svojim super-hiper nabudzenim pokretacima(engine), a realnost je da mozemo izbrojati svega par timova koji su nesto realno napravili.

Dalji tekst se odnosi samo na male razvojne timove i pojedince.

Organizacija rada je kljuc uspeha. Praviti nesto sto vec postoji je u samom startu prikaz lose organizacije i vrlo verovatno glavni razlog zasto ce sam projekat propasti.

Realizam. Da li to zaista mogu da zavrsim u nekoj blizoj buducnosti (ne dalje od 6 meseci)?

Da li imam sredstava da pokrijem troskove razvoja?

I mnoga druga pitanja koja trebas postaviti sam sebi i iskreno odgovoriti na njih.

Ukratko veliki timovi mogu priustiti sebi luksuz da razvijaju svoje alate, mali timovi se koncentrisu na sto brzi zavrsetak projekta kroz postojece alate.

siv0nja
14.2.2011, 15:11
Sry nisam imao vremena da procitam odgovore ...evo procitao sma samo prvi post i par sledecih tako ako nesto kazem sto je neko vec rekao , duboko se izvinjavam za ponavljanje :) Nema sta da bude fer , zamisli samo koliko je radnih mesta "ubio" kompjuter kad se pojavio, isto tako doneo je neka nova radna mesta ...npr Programer ...takve su industrijske revolucije na zalost...evo sa dizajnerske strane da ti najlakse odgovorim na tvoje pitanje ..posto je moj fah dizajn a ne programiranje ali lako ces se prepoznati u ovome....kompjuter polako ubija klasicnu umetnost u svakom pogledu , pre su se odredjeni ljudi skolovali u akademijama od strucnih profesora , ucili anatomiju perspektivu , kompoziciju itd i onda su posle toga dobili zvanje akademskih slikara i ziveli su od toga , danas skines PS ili Painter kupis cheap tablu , malo gledas forume , skidas brusheve ...i sa malo "prljavih" trikova radis kao i oni ali digitalno , da fora bude jos veca vise zaradis od njih ...oni na zalost ako misle da opstanu moraju da se adaptiraju i da krenu digitalnim stopama u protivnom ne mogu da zarade za zivot, (nemojte me pogresno shvatiti ima ljudi koji lepo zive i od klasicne umetnosti ...ali su to stvarno retki slucajevi pogotovo u zemlji gde se vise cene Klovnovi sa Estrade i Romi koji bolje sviraj 'armoniku nego Stefan Milenkovic violinu ) sta je tu sad fer ?...nema fer ne fer, od stare slave se ne zivi ,ako mislis da opstanes moras da se boris i da koristis sva raspoloziva sredstva ,Eh kad se samo setim koliko sam se samo borio da ZX spectrum kod nas ne bude zaboravljen ,kasnije sam shvatio da ne mozes protiv Titana i sta sam drugo mogao nego kupio A1200 :P, ZX ostade prva ljubav za sva vremena i stvarno bi bilo glupo da sad recimo crtamo i programiramo u ZX-u :P , tako i ti ,nemoj da mislis da si bilo sta izgubio ako si nesto naucio , vcremena se menjaju i neke stvari postaju lakse i dostupnije svima ,seti se ko je pravio igre pre 20 godina ,danas svaki klinac programira nesto i pravi igre , na zalost to je surova realnost i moj savet ti je da sto pre krenes da radis u Unity i zaboravis na ovaj kosmar sto pre :)

Geomaster
14.2.2011, 21:42
@siv0nja: (da ne citiram celu poruku)
Jasno mi je u potpunosti šta pokušavaš da kažeš. Problem je u tome što ja nisam potpuno ovladao ni ovim (kao što sam već rekao 6-7 godina iskustva nije nešto mnogo u velikoj oblasti kao software engineering), a već prelazim na neki drugi način rada nekih stvari. I sada, ako bih ja prešao na recimo Unity, morao bih da odbacim to što znam u vezi sa programiranjem u C++-u i da krenem od nule, kao potpuni početnik. To se meni ne sviđa.
Još jedna druga stvar - sad sam pogledao Unityjev sajt i overio License Comparison (http://unity3d.com/unity/licenses), na toj stranici piše da besplatna verzija Unityja ne podržava RTT, full-screen post processing, senke, static batching i još mnogo stvari, pa pitanje - kako se developeri koji rade u Unityju snalaze bez ovih po meni jako bitnih odlika (recimo, efekte refleksije nema šanse izvesti bez RTT-a)?
moj savet ti je da sto pre krenes da radis u Unity i zaboravis na ovaj kosmar sto pre :)
Stvar je u tome što je za mene veći košmar da krenem da radim u Unity-ju, pošto je rad na ovom frameworku nešto što volim da radim i na šta sam navikao, ali dobro.
Što se tiče drugih odgovora, gde sam ja spomenuo da pišem svoj uber-hiper-mega-giga game engine, i gde sam spomenuo da će moja igra biti AAA hit? Koristim već gotove enginee za mnoge stvari, u suštini jedino što moj framework radi je njihovo povezivanje i integrisanje skriptinga u sve to, nikakva napredna filozofija. Što se tiče igre, biće to jedan skroman projekat kojim bih prikazao moje mogućnosti kao game i software developera.

boshkodj
14.2.2011, 21:50
@siv0nja

Kad bi se svi programeri igara prebacili na Unity, ko bi dalje razvijao tehnologiju? Tako kada je napravljen game maker, mogli su da kazu "Super je ovo, mnogo se brze izradjuju igre, programeri batalite to sto radite!". I sta, onda bi svi bili zadovoljni sa tim 2D igrama?

NISAM NESTO SMART
15.2.2011, 0:25
@sivonja: Pa ja mislim da je to veoma loš savet...Bukvalno kao da nekom kazes poslednjih 6 godina rada su ti bila uzaludna....Sad ja kapiram da ti hoces da kazes da sve ide svojim tokom, i da vremenom stvari se menjaju i da se treba prilagoditi....ali u ovom slucaju to jednostavno nije tako, tesko mi je poverovati da ce za 10 godina sve igrice biti radjene u nekom game studiju....
Ja mislim da je trenutno stvar poprilicno jednostavna ako si programer imas i da programiras igre, ako nisi trazices vec gotova resenja....
Evo mene iskreno zanima ako vec postoje game studios gde se relativno lako moze napraviti igra(bar sa programerske strane), zasto ljudi programiraju svoje igre neki cak pisu i svoje engine?

siv0nja
15.2.2011, 3:54
Stvar je u tome što je za mene veći košmar da krenem da radim u Unity-ju, pošto je rad na ovom frameworku nešto što volim da radim i na šta sam navikao, ali dobro.
Što se tiče drugih odgovora, gde sam ja spomenuo da pišem svoj uber-hiper-mega-giga game engine, i gde sam spomenuo da će moja igra biti AAA hit? Koristim već gotove enginee za mnoge stvari, u suštini jedino što moj framework radi je njihovo povezivanje i integrisanje skriptinga u sve to, nikakva napredna filozofija. Što se tiče igre, biće to jedan skroman projekat kojim bih prikazao moje mogućnosti kao game i software developera.

U cemu je onda problem , prijatelju , radi ono sto volis i nemoj da posustajes , ja sam shvatio iz tvoje price da si ti popizdio zbog Unity na neki nacin , ja ti kazem nema sta da bude fer ...te 2 stvari ne mogu da se porede kao ni babe i zabe ....to sto ti radis i ono sto radi nekou Unity nema veze sa vezom ..i sam dobro znas da se to ne moze porediti ...pa zasto onda poredis takve stvari i ne sekiraj se previse za one sto prave igricu za 7 dana :P

@boshkodj nisam ni mislio da se svi prebace na Unity samo sam rekao kako mnogi prelaze na Unity i kako je to neki nekontrolisani proces koji ne mozes nikako zaustaviti , isto je bilo i sa Flashom , a i posle Unity ima Unity , to je bila poenta

@NISAM NESTO SMART , zasto mislis da je los savet npr. ako nekom kazes da uzme lopatu da kopa rupu umesto to da kopa golim rukama ? - jeste detaljnije ce rukama iskopati ali lopatom ce postici isti efekat za mnogo manje vremena - treba li takve stvari odbaciti ?, pazi nisam rekao nista lose o njegovom radu , naprotiv cenim svaciji rad i ne pada mi na pamet da omalovazavam neciji dugogodisnji trud ...moj savet je bio ako mislis da je bolje tako zasto da ne ...i sam sam rekao da sam tu pricu par puta dozivio i svi ste na neki nacin osetili na svojoj kozi blagodeti modernog doba ....najbanalniji primer je revolucija u fotografiji ....kad je dosao digitalni fotoaparat svi su mislili zbogom FOTO studijima , hehe , naprotiv ne umesto da nastave da rade sa klasicnim metodama FOTO studija se modernizuju i prate korak sa vremenom ..prelaze na digitalne aparate , ja verujem da svi imate digitalni fotoaparat kod kuce ...e sad pitanje za sve "koliko su vam kvalitetne fotografije i umete li da fotografisete" ...isto to sam objasnio i na ovom primeru , on tih 6-7 gdina nije bacio uzalud ,krivo mu je sto se desavaju takve stvari ...jbg i meni je ali nema nista od toga , kazem samo takve stvari se desavaju i ne treba sta da ti bude krivo ...uzmi alat najbolji koji mislis da je za tebe i radi ono sto volis
Unity nece toliko promeniti nacin izrade igara ,niti ce to moci neki game studio u skorije vreme , ne znam zasto uopste takvo pitanje ....koliko god jedan pojedinac bude mogao kvalitetno da odradi igricu to ce tim od 20 ljudi jos kvalitetnije da urad iisti posao :) jer ne moze brate da bude toliki wunderkind pa da zna sve :)
Na kraju jos jednom kazem ne mislim nista lose o njegovom radu, jeste tuga kad vozis Yuga i znas bukvalno svaki delic motora ..kad stane znas sta mu se pokvarilo itd ....i onda jednog dana pored tebe projuri klinac u nadrkanom A8 ...mislis da on zna da li dizel motor ima svecice ili ne ? ...zabole ga ...kad nesto rikne ode u servis , opa dijagnostika , opa novcanik i idemo dalje a ti i dalje pored puta popravljas svog Yuga . :confused: jel to Fer ? ,salu na stranu to se samo zove matorenje i sve vas to ceka :dedica:
hehehe.

Apprentice
16.2.2011, 13:13
Ako znaš C++ znaćeš sve, ako znaš Unity znaćeš samo Unity.

Andross
16.2.2011, 16:25
Ne i ne :kreza: