2048 3D. Csapatnév: kurkomisi. Név: Kurkó Mihály-Zsolt. Elérhetőség: e-mail: kurkomisi@yahoo.com telefon: 0756538916. Iskola: Márton Áron Gimnázium



Hasonló dokumentumok
Lehet vagy nem? Konstrukciók és lehetetlenségi bizonyítások Dr. Katz Sándor, Bonyhád

A CFM-650 hajtogatógép kezelési utasítása

MAGYAR POSTA BEFEKTETÉSI ZRT. e-befektetés. Felhasználói kézikönyv

IRATKEZELÉSI SZABÁLYZAT

ALPEN-ADRIA-ALLIANZ SAVEZ ALPE-JADRAN ALPOK-ADRIA SZÖVETSÉG ZVEZA ALPE-JADRAN

A PC vagyis a személyi számítógép. XV. rész. 1. ábra. A billentyűzet és funkcionális csoportjai

APOR VILMOS KATOLIKUS FŐISKOLA

Tanulmányi adminisztrátor feladatok Segédanyag

libgdx alapok, első alkalmazás

VALÓSZÍNŰSÉG, STATISZTIKA

Debreceni Egyetem Agrárgazdasági és Vidékfejlesztési kar. Gyümölcsösök szükséges tápanyag-utánpótlását meghatározó program

KETTŐS KÖNYVELÉS PROGRAM CIVIL SZERVEZETEK RÉSZÉRE

KIT-ASTER1 és KIT-ASTER2

Tartalomjegyzék 3 TARTALOMJEGYZÉK

A word első megnyitása

XVI. sz. melléklet KOMPLEX INTÉZMÉNYI ÉS IKT HELYZETELEMZÉS ELKÉSZÍTÉSÉNEK EGYSÉGES SZEMPONTRENDSZERE

Ismétlődő műveletek elvégzésének automatizálása

GÉNIUSZ DÍJ EcoDryer. Eljárás és berendezés szemestermények tárolásközbeni áramló levegős szárítására és minőségmegóvó szellőztetésére

Tett-Hely Ifjúsági Szolgáltató Hálózat Hálózati Működési Szabályzat

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs

FAPEDIT, megbízható teljesítménykiírás könnyedén T:



ACCHITTOCCA Virginio Gigli, Flaminia Brasini, Stefano Luperto, Antonio Tinto A KIRÁLYOK VÖLGYÉBEN. 2-4 játékos számára 12 éves kortól Kb.

Destour Outdoor 2.0 felhasználói kézikönyv

Romanisztika alapszak (BA) olasz szakirány

Közbeszerzési Értesítő száma: 2015/85. Tájékoztató az eljárás eredményéről (1-es minta)/ké/ KÉ. Hirdetmény típusa:

BME Villamos Energetika Tanszék Nagyfeszültségű Technika és Berendezések Csoport Nagyfeszültségű Laboratórium. Mérési útmutató

WCM21VF. Kültéri valós Day&Night IR kamera. Felhasználói kézikönyv. Használat előtt olvassa el a kézikönyvet és őrizze meg a későbbiekre.

TÁRGYI ESZKÖZ PROGRAM

WESTPOINT MOBIL KLÍMA

Gyarmati Andrea: A tevékenységadminisztráció informatizálásának lehetőségei a gyermekvédelemben

Ászári Közös Önkormányzati Hivatal KÖZBESZERZÉSI SZABÁLYZAT

Interaktivitás a matematika órán

ERDÉSZETI LAPOK AZ ORSZÁGOS ERDÉSZETI EGYESÜLET KÖZLÖNYE ERDŐ- ÉS FÖLDBIRTOKOSOK, ERDÉSZETI ÜGYEKKEL FOGLALKOZÓK ÉS ERDŐTISZTEK SZÁMÁRA.

I. Fejezet Bevezet rendelkezések

Robottechnika projektfeladat

1. Bevezető A készülék bemutatása Első lépések... 5

mini-háromszöges kicsiknek (játssz velük: ügyesedjenek, okosodjanak)

Az alapvető jogok biztosának Jelentése az AJB 1940/2014. számú ügyben

Energiahatékony iskolák fejlesztése

Kari Adminisztrátor. Funkcionális leírás

Korlátozott jogkörű felhasználói fiókok létrehozása és kezelése

A DITAL honlap kezelése (

CentrArt Mővészettörténészek Új Mőhelye Közhasznú Egyesület

Mi az a Scribus? SCRIBUS. Mi az a Scribus? Milyen platformon érhet el? Hasonló feladatra használható programok. Mire használhatjuk a Scribust?

Matematika tanmenet (A) az HHT-Arany János Tehetségfejleszt Program el készít -gazdagító évfolyama számára

SZERVEZETI ÉS MŰKÖDÉSI SZABÁLYZATA

ábra 1 LabelPOINT 250 elektromos feliratozógép Címkekimeneti nyílás Vágóél LCD kijelző Bekapcsológomb

HIDASNÉMETI KÖZSÉG ÖNKORMÁNYZATA POLGÁRMESTERI HIVATALÁNAK SZERVEZETFEJLESZTÉSE. Informatikai tanulmány

3. gyakorlat. 1/7. oldal file: T:\Gyak-ArchiCAD19\EpInf3_gyak_19_doc\Gyak3_Ar.doc Utolsó módosítás: :57:26

Access 2010 Űrlapok és adatelérés

Használati útmutató a Moodle távoktatási keretrendszerhez Kodolányi János Főiskola

CAD-CAM-CAE Példatár

8200 Veszprém, Megyeház tér 1. Tel.: (88) , Fax: (88)

A rádió* I. Elektromos rezgések és hullámok.

MAGYAR HIDROLÓGIAI TÁRSASÁG

Državni izpitni center MAGYAR NYELV ÍRÁSBELI FELMÉRŐLAP május 6., péntek / 60 perc. 3. szakasz végi ORSZÁGOS TUDÁSFELMÉRÉS

VI. A STRATÉGIA MEGVALÓSÍTHATÓSÁGA

EGÉSZSÉGRE GYAKOROLT HATÁSOK

FELHASZ ÁLÓI KÉZIKÖ YV. Számlázó programhoz

0 0 1 Dekódolás. Az órajel hatására a beolvasott utasítás kód tárolódik az IC regiszterben, valamint a PC értéke növekszik.

AKKREDITÁCIÓS FELHÍVÁS Tanácsadó szervezetek részére

Újdonságok. Release 2

A Pázmány Péter Katolikus Egyetem Felvételi Szabályzata

HU - Használati útmutató insportline Lilly IN 2164

Panel Plusz Hitelprogram

AZ EURÓPAI KÖZÖSSÉGEK BIZOTTSÁGA A BIZOTTSÁG KÖZLEMÉNYE KONZULTÁCIÓS DOKUMENTUM AZ INNOVÁCIÓS CÉLÚ ÁLLAMI TÁMOGATÁSRÓL

A program els indítása Mikor el ször futtatjuk a nyilvántartó programot, az alábbi párbeszédablakkal találkozunk.

FÜTI OMEGA Ingatlaniskola ELİADÁS: Netkovszky Kálmán

ipod nano Felhasználói útmutató

MATEMATIKA ÉRETTSÉGI október 25. EMELT SZINT I.

Tanulmányi adminisztrátor, ügyintéző. Felhasználói dokumentáció verzió 2.0.

Segítők VIII. I. Konferenciája Rítusok és mítoszok a segítésben

Matematika évfolyam. tantárgy 2013.

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Kombinatorika

VÉGREHAJTÁSI MEGÁLLAPODÁS ÁLTALÁNOS SZERZŐDÉSI FELTÉTELEK. Svájci Magyar Együttműködési Program. Hatályos: 2010.

FELHASZNÁLÓI KÉZIKÖNVY

FELHÍVÁS. tehetséges fiatalok felkutatása, támogatása és a tehetséggondozás rendszerszintű továbbfejlesztésének megvalósítására.

A MAGYAR FELSŐOKTATÁS SZABÁLYOZÁSÁNAK STRATÉGIAI MEGALAPOZÁSA

BALÁZS LÁSZLÓ MIGRÁCIÓ EGY BEFOGADÓ ÁLLAMBAN. 1. Bevezetés

Tudásmegosztás. TAKSONY Nagyközség Önkormányzata 2014.

A 2011/2012. tanévi FIZIKA Országos Középiskolai Tanulmányi Verseny első fordulójának feladatai és megoldásai fizikából. I.

OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK. 2.1 A feladat

7/3 Szigetelések hibái

AKCIÓTERV a kamara hatékony működésére, a vagyonvédelemben dolgozók foglalkoztatási helyzetének javítására

5.2. Benzinbefecskendező és integrált motorirányító rendszerek (Második rész L-Jetronic rendszer I.)

Az alapvető jogok biztosának Jelentése az AJB-1378/2014. számú ügyben

TÖRZSVÁSÁRLÓK REGISZTRÁLÁSA ÉS ÁTVEZETÉSE (HASZNÁLATI ÚTMUTATÓ ÜZLETEKNEK)

Pontszerű test, pontrendszer és merev test egyensúlya és mozgása (Vázlat)

KÖZHASZNÚSÁGI JELENTÉS 2005

napi.hu Törékeny fellendülésban bíznak az exportáló cégek : [ ]

Digitális tananyag, e-learning, különbségek, definíciók

Alapszabály fejlesztési irányelvek a férfi otthoni erıszak elkövetıkkel dolgozó programok részére

1) Válasszuk ki az Beállítások/Rendszer beállítások menüpontot:

Abony Város Polgármesteri Hivatalának Szervezeti és Működési Szabályzata (egységes szerkezetben)

FELHASZNÁLÓI LEÍRÁS a DIMSQL Integrált Számviteli Rendszer Készlet moduljának használatához

Településfejlesztési füzetek 25. Települési tervezés, útmutató a településfejlesztési program készítéséhez

Mi az mlmdiszkont? Mit kell tenned, ha megtetszett az ötlet és szeretnél vásárolni?

J e g y z ő k ö n y v

Átírás:

2048 3D Csapatnév: kurkomisi Név: Kurkó Mihály-Zsolt Elérhetőség: e-mail: kurkomisi@yahoo.com telefon: 0756538916 Iskola: Márton Áron Gimnázium Felkészítő: Demeter István-Hunor Az én projektem egy játék, amelyet egy nem rég megjelent, felkapott internetes játék, a 2048 ihletett. A 2048 egy 4x4-es négyzetrácson játszódik, és lényege, hogy a rácson megjelenő számok tologatásával a 2 hatványaiból kirakjunk 2048-at. Az egész rácsot mozgatjuk négy irányban, a mozgatás során az azonos értékek összecsúsznak, és összeadódnak. Az én verzióm hasonló tulajdonságokkal rendelkezik, csupán bevezettem egy harmadik dimenziót és a négyzeteket kockákkal helyettesítettem, a kockákat pedig nem csak fel, le és oldalra lehet mozgatni, hanem hátra és előre is. A Z dimenzió megjelenésével megnő az üres helyek száma, ezért elég, ha a kocka-rács mérete 3x3x3. A kockák felgyűlésével a hátul elhelyezkedő kockák nem látszanak jól, ezért lehetővé tettem a nézőpont változtatását. A játék a Unity 4.3 nevű fejlesztői környezetben készült, a C# nyelv felhasználásával. Az interneten való megosztás még nincsen kész, de terveim szerint a Notepad++ kódszerkesztőben fogok rajta dolgozni PHP, HTML és Javascript nyelvek segítségével.

A 2048 3D bemutatása programozóknak A 2048 3D alapja egy main camera, amely a Unity felhasználóbarát részében van létrehozva. Maga a játék egy ehhez a kamerához csatlakozó C# alapú fájlban van kódolva. A játék indulásakor a program érzékeli a kamerához csatolt forráskódot, és futtatja a kód Start() függvényét, a továbbiakban ez a forráskód határozza meg a játékot. A Start() függvény memóriát foglal a globálisan létrehozott kockákat (cube[,,]), és a kockák értékeit tároló tömböknek (value[,,]), értéket ad nekik, beállítja a kamera állását, még végrehajt néhány fontos értékadást, és két kockát felkészít a játékra. Új kocka felkészítésére a NewCube() függvény hívódik meg, itt megvizsgálódik, hogy lehetséges-e új kocka berakása: akkor lehetséges, ha a legutóbbi mozdítás óta történt változás a kockák pozícióját illetően, illetve ha nincs betelve az összes üres hely, vagy ha be van telve és lehet mozdítani valamelyik kockát. A kockák csak egyszer inicializálódnak, helyük állandó, egy kocka elmozdításakor a kiindulási pontban levő kocka eltűnik, mig a célpontban levő kocka megjelenik. Az értékek mozgásáról a value tömb felel, abban cserélnek helyet az értékek.

A mozdíthatóságot a Movable() függvény vizsgálja, minden kockára megnézi, hogy a 6 irányban van-e a kockával azonos értékű kocka. A 6 irány a dx, dy és dz tömbökben tárolódik: dx: {0,0,0,0,1,-1} dy: {1,-1,0,0,0,0} dz: {0,0,1,-1,0,0} egy-egy irányt ezen tömbök azonos pozícióján találunk meg, a viszonyítási alap, azaz a vizsgálandó kocka x koordinátájához a dx egyik indexén található értéket, az y-hoz a dy, a z-hez pedig dz ugyanazon indexein található értékeket hozzáadva megkapjuk egy bizonyos irányban elhelyezkedő kocka koordinátáit a cube és a value tömbben. Pl. az (1,1,1) pozíción elhelyezkedő kockától jobbra elhelyezkedő kocka koordinátái (1+dx[5], 1+dy[5],1+dz[5]), azaz (2,1,1), így általánosan tudjuk kezelni az irányokat. A kódrész: bool Movable(){ for (int i=1; i<=n; ++i) return false; for(int j=1;j<=n;++j) for(int k=1;k<=n;++k) for(int l=0;l<6;++l) if(value[i,j,k]==value[i+dx[l],j+dy[l],k+dz[l]]) return true; } A külső három ciklus a kockákon megy végig egyenként, a belső pedig a hat irányon, vagyis az előbb említett 3 tömbön, majd minden kockára megvizsgálódik, hogy a szomszédja egyenlő-e vele. A példából kitűnik, hogy a szélső kockáknak nem kell minden irányt vizsgálni (az (1,1,1) kockának csak felfele, befele és jobbra lehet szomszédja). Hogy ne kelljen letárgyalni a szélső eseteket, és ne történjen kihivatkozás, a value tömb körbe van véve -1 értékekkel, így a függvény a szélső kockákat is belsőknek tekinti. A kockák véletlenszerű pozíción jelennek meg a játékban, a véletlenszerűségről a Rand() függvény gondoskodik, amely a játékidő függvényében számol. Továbbá a Rand() függvény segítségével dől el, hogy az új kocka értéke 2, vagy 4 legyen. Egy 4-es érték felbukkanásának valószinűsége 20:1, ez úgy oldható meg, hogy a függvény 1 és 20 között generál, és ha a generált érték egy meghatározott érték (esetünkben 4, de lehetne ez akármelyik másik is 1 és 20 között), akkor a kocka értéke 4 lesz, különben 2.

A bemenetet az Update() függvény kezeli. 7 lehetséges bemenetet vesz figyelembe: A fel, le, jobbra, balra, hátra és előre mozgatás a felfele, a lefele, a jobbra, a balra nyilak, az a és a d gombok lenyovásával lehetséges ebben a sorrendben. Ezeknek megfelelően meghívódnak az Up(), a Down(), a Right(), a Left(), a Back() és a Front() függvények, melyek mindenike megvizsgálja, hogy az illető irányba melyik kockát meddig lehet elmozdítani, és elmozdítja azt. Egy hátra, jobbra és lefele tolás egymás után a következőképpen néz ki: Az s gomb lenyomása lehetővé teszi a kamera pozíciójának mozgatását a középpont körül az Y tengelyen. Miután a felhasználó lenyomta az s gombot, az a gomb és a balra mutató nyíl lenyomása a balra, illetve a d gomb és a jobbra mutató nyíl lenyomása a jobbra forgatást teszi lehetővé. A forgatásra vonatkozó kódrész: transform.rotatearound (center,new Vector3(0.0f,-1.0f*speed,0.0f),1.0f); center a középpont, ami körül forog speed a forgatás sebessége Egy Y tengely körüli forgatás a következő képeken figyelhető meg:

Az OnGUI() függvény felel a menüpontokért, itt formázodik a New Game gomb, a betűstílus, és itt íródik ki az összegyűjtött pont. A 2048 3D bemutatása felhasználóknak A 2048 3D egy egyszerű játék, amely egy 3x3x3-as kockarácson játszódik, és lényege, hogy a rácson megjelenő számok tologatásával 2 hatványaiból kirakjunk 2048-at. Az egész rácsot mozgatjuk hat irányban: fel, le, jobbra, balra, hátra és előre a felfele, a lefele, a balra, és a jobbra néző nyilak, valamint az a és d gombok lenyomásával. A mozgatás során az azonos értékek összecsúsznak, és összeadódnak. Ahhoz, hogy az összes kocka értéke látható legyen, meg lehet változtatni a nézőpontot, az s gomb lenyomása után, az a gomb és a balra mutató nyíl lenyomása a balra, illetve a d gomb és a jobbra mutató nyíl lenyomása a jobbra forgatást teszi lehetővé. Ilyenkor a kockákat nem

lehet mozgatni. Ha az s gombot még egyszer lenyomjuk, a forgathatóség ismét megszünik, és folytathatjuk a játékot. A bal felső sarokban található New Game gomb megnyomásával új játékot kezdhetünk. A játékban összegyűjtött pontok a bal alsó sarokban jelennek meg. Jó Szórakozást! ;)