HTML

gondolataim elsősorban játékfejlesztésről

Elsősorban játékfejlesztés magyarul: az enginem fejlesztése során felmerülő problémák, ötletek, tévutak stb dokumentálása, amely számomra és talán mások számára is hasznos lehet később Másodsorban gondolatok szavakban...

Kapcsolat:
aalberik 'at' gmail 'dot' com

Haletető

Galéria

Címkék

Összes

Linkblog

Naptár

december 2024
Hét Ked Sze Csü Pén Szo Vas
<<  < Archív
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

Portálok, iOS, MacOS, Adreno - r1581

2013.11.04. 12:30 :: syam

Miután áttértem projekt menedzselésben a CMake használatára szinte azonnal adta magát, hogy kipróbáljam lefordítani az enginem iOS ill. MacOS rendszerekre is. Az utóbbira történő fordítás nem igényelt különösebb előkészítést - mondhatni azonnal működött. Az iOS projekt készítésével már akadtak nehézségek:

Szólj hozzá!

Címkék: portal lua cmake adreno perfhud es

Cmake, Android, qsort - r1529

2013.10.20. 21:45 :: syam

Az utóbbi bejegyzés óta történt talán legnagyobb változás az, hogy áttértem az "automata" projekt menedzselésre nevezetesen a CMake használatára. Nagyon sok platform, nagyon sok IDE és sok toolchain használata elérhetővé válik ezután.

Szólj hozzá!

Címkék: nvidia hdr tegra cmake qsort

AI, AI és még több AI + néhány fegyver - r1470

2013.10.01. 00:46 :: syam

Az elmúlt hetekben főleg az AI-val töltöttem el a fejlesztési időt: kétféle humanoid és kétféle egyéb kategóriába sorolható viselkedés modellezésével. Tekintve, hogy a játék tekintélyes részét az ellenfelekkel való harc teszi ki (ill. az is izgalmas, hogy a gép hogyan játszik önmaga ellen) igyekeztem minél ésszerűbbnek ható és egyértelműen szabályozható intelligenciát kidolgozni a humanoidokra.
A kétféle humanoid viselkedés valójában egyet takar a különbség mindössze annyi, hogy van-e fegyver a felvett tárgyak között vagy sem. Természetesen teljesen problémamentes a kettő közötti átmenet: amennyiben úgy ítéli meg az AI megkeresi a számára kedvenc fegyvert vagy ha olyat nem talál a legközelebbi fegyver megszerzését tűzi ki célul. Ha pedig elfogy a lőszer a fegyverből, akkor egyszerűen eldobja azt.
Most pedig következzenek azon paraméterek amikkel "karakterisztikát" adhatunk az adott szereplőnek:

  • félénkség. támadás esetén mennyire szeret menekülni.
  • reakcióidő: mennyire gyorsan követi az célpontját ill. milyen gyorsan veszi azt célba
  • célzási pontosság: ez azt hiszem önmagáért beszél
  • támadó erő: közelharc esetén a támadott félen okozott sebzés mértéke
  • mozgási sebesség: futás ill. járási sebesség
  • alacsony élet riasztás típusa: alacsony életerő esetén a választott cselekvés - menekülés, segítséghívás, életerő feltöltés stb.

Ezek némelyike értelemszerűen vagy csak az egyik vagy csak a másik viselkedés esetén befolyásoló tényező.

A lista természetesen még nem végleges, de tapasztalatom szerint már élvezhető viselkedésmintákat lehet vele készíteni (pl. egy félénk, de lassan reagáló ill. bátor, de gyors ellenfél harca pláne, ha különböző fegyvereik vannak).

Ehhez tartozik még, hogy a következő demóhoz még összeraktam három, egyre nagyobb tűzerőt képviselő fegyvertípust, amikkel (talán) még változatosabbá tehető majd a játék.

Végezetül pedig megemlíteném, hogy a HDR mellé végre implementáltam egy elfogadható minőségű bloomot:

platform 2013-09-27 22-33-50-92

Szólj hozzá!

Címkék: ai hdr bloom

Intro.lua - r1457

2013.09.16. 12:37 :: syam

Szép lassan a végéhez ér a Grypania v2 kivitelezése nemrégiben készítettem el az intro egyik lehetséges változatát. A helyszín, szereplők, ellenfelek gyakorlatilag elkészültek a scriptek és az in-game átvezető jelenetek (amik szintén scriptek) vannak hátra és az ezekkel járó tesztelés / debugolás.

Alant pedig egy kép az intro hátteréről. A modellek valós(nak tartott) adatok alapján készültek.

platform 2013-09-13 01-38-29-71

Szólj hozzá!

Editor, Maya, gui, egyéb?

2013.08.05. 20:23 :: syam

A Maya plugin több hónapnyi használata megmutatta, hogy sajnos a játék szerkesztésének bizonyos elemei nem vagy csak nagyon nehezen valósíthatók Maya alatt. Úgy tűnik tehát, hogy mindenképp szükséges egy saját, "valamilyen" gui-val elkészített szerkesztő is.
Az egyetlen problémám, hogy a "valamilyen" gui-nak több szempontnak is meg kell felelnie:

  • érett szoftver legyen vagyis ne annak a debugolásával kelljen foglalkozni
  • jól használható / érthető dokumentáció
  • a mérete minél kisebb legyen
  • bináris SDK vagy könnyen fordítható legyen
  • legyen hozzá designer alkalmazás
  • kezelje az általunk használni kívánt gui funkciókat
  • multi-platform
  • "jól nézzen ki"

A WinForms-ot használtam régen, amellyel akadtak problémák - GL renderelő ablak kezelése, fa alapú listában többszörös kijelölés natív támogatása. Aztán megpróbálkoztam ismét a CEGUI-val, de a rengeteg lefordítandó függőség a kedvemet szegte. Elgondolkoztam a Qt használatán ám annak a mérete és gcc-vel való (túl) közeli kapcsolata rémített el.
Jelenleg a FLTK mellett kötöttem ki, amely kissé ódivatú megjelenése ellenére biztató tulajdonságokkal rendelkezik. Sajnos az undo-redo rendszer java részét ezzel a váltással elvesztettem azonban a Maya tapasztalataim alapján könnyen készíthetők különféle exportálók.

Itt pedig egy kép minderről:

fltk_editor

 

4 komment

Címkék: qt cegui fltk

Update - r1348

2013.07.25. 22:39 :: syam

Hogy mik változtak:

  • Maya importerek
  • emitterek turbulenciával (mert azt mindenki szereti)
  • egyszerűsített pályakészítés automata generátorral kiegészítve
  • qhull használata
  • külön svn repo a scriptekhez, mert számuk és bonyolultságuk egyre nő

és ami a legizgalmasabb: Quake3 által ihletett botok - egyre összetettebb döntési rendszerrel.

  • Képesek fegyvert keresni maguknak, amelyek közül a kedvencüket választják.
  • Amennyiben fontosnak tartják elmennek a legközelebbi health terminálhoz, hogy életerőt szerezzenek.
  • Szorult helyzetben segítséget hívnak.
  • Járőrözés.
  • Ha lehetőség van rá, lövik az ellenfelüket, ha nem akkor kergetik.

Szólj hozzá!

Címkék: ai quake3 Maya qhull

Csupa izgalom - r1199

2013.06.03. 18:52 :: syam

Rövid összefoglaló, hogy az elmúlt bő egy hónapban mi növelte meg a revíziószámot:

Engine:

  • Videó lejátszás Theora segítségével
  • Lightprobe-ok generálása navmesh alapján
  • Lightprobe-ok mellé envprobe-ok
  • Star Wars: The Force Unleashed 1/2 modell ill. csontváz importálási lehetőség ill. részleges animálás

Maya plugin:

  • Elérhető a radiosity alapú lightmap készítés
  • Számos saját maya-s típus
  • Material, mesh ill. csontváz importálás
  • Játék mentése scriptként

 

Szólj hozzá!

Címkék: plugin navigation mesh Maya lightmap radiosity Theora

Béta-teszter kerestetik

2013.04.27. 12:08 :: syam

Vállalkozó szellemű embereket keresek, akik értenek az Autodesk Maya használhatához és szívesen tesztelnék az enginemmel készült plugint. A plugin a Maya 2013 64 bites verziójához készült, de némi segítséggel és időráfordítással más Maya változatokhoz is el tudom készíteni.
A feladat a plugin funkcionalitásának ill. stabilitásának tesztelése lenne egy tetszőleges, apró jeleneten.

A pontosabb részleteket, a bináris csomagot ill. a hozzá tartozó readme doksit kérésre szívesen elküldöm.
Jelentkezni az oldalon megtalálható email címek bármelyikén lehetséges.

Köszönettel,
syam aka HZ :)

Szólj hozzá!

Címkék: Maya béta-teszt

Beyond 1000

2013.04.03. 00:28 :: syam

A Maya plugin fejlesztése során átlépte az engine revíziószáma ezt a bűvös határt.
Az a tény, hogy az enginem egy másik szoftver által biztosított környezetben fut igencsak átformálja a tervezést:

  • legfontosabb talán, hogy a hibakezelést a lehető legrészletesebben ki kell terjeszteni a pluginen belül ezzel elkerülve a teljes szoftver összeomlását
  • hirtelen sok és valós felhasználási igénnyel találkozik az ember
  • a funkciókat minél inkább automatizálhatóvá kell tenni, hogy minél kevesebb figyelem ráfordításával és minél gördülékenyebben történhessen a plugin használata
  • emiatt ahol lehetséges egyszerűsítés / egységesítés szükséges pl. több, nagyon hasonlóan működő függvényt összevonni
  • visszajelzést adni az engine belső állapotáról ill. ezt olvasható formában megjeleníteni
  • az események logolása arra az esetre, ha mégis "visszavonhatatlan" esemény történik
  • minél egyszerűbb és egyértelműbb (egy feladatra csak egy funkció létezzen) interfész megteremtése a két szoftver között
  • amennyiben lehetséges közvetlen elérést biztosítani a pluginhez hibakeresés céljából

 

A plugin jelenlegi állapota pedig:

  • saját típusok attribútumokkal
  • a saját típusok saját Maya renderelés
  • közvetlen engine renderelés Maya viewportban
  • statisztika szöveges megjelenítése Angelcode-os bitmap fontokkal
  • és elérhető az összes Maya szerkesztői parancs :)

kép

  Alant pedig a fenti jelenet forrásának rövid részlete:

requires maya "2013";
requires "maya_win64_plugin" "1.0";
currentUnit -l centimeter -a degree -t film;
fileInfo "application" "maya";
fileInfo "product" "Maya 2013";
fileInfo "version" "2013 x64";

Szólj hozzá!

Címkék: plugin font autodesk angelcode Maya

Hogyan készítsünk játékot Maya-ban?

2013.03.10. 22:12 :: syam

Úgy, hogy ír hozzá az ember egy plugint.

Kontra:

  • Meg kell érteni a Maya API-t.
  • Meg kell érteni a Maya belső működését.
  • Össze kell tudni hangolni a saját engine-t a Mayával a fentiek ismeretében.

Pro:

  • Így az ember készhez kap egy profi 3D szerkesztőt.
  • Ezt a szerkesztőt elég sok modellező ismeri és tudja is használni.
  • Ha a programozó magára van utalva, némi tanulással (elég gyorsan) lehet készíteni "programmer art" szintű jelenettel játékot.
  • Ha már sikerült a hangolás az engine és egy külső API között, akkor egy újabb API nem lehetetlen kihívás.
  • Az importálás nem függ külső (esetleges hibás, nem teljeskörű támogatással bíró) exportálóktól - importálót pedig mindenképp kell készíteni.
  • Szélesíti az ember látókörét.

2 komment

Címkék: Maya

süti beállítások módosítása