Java I. ~ Alapok ~ While Ciklus és Elágazások...

2012-03-29 20:29:00 - saki04

...meg sör.... ( ~ Csakis a legalapabb... minden informatikus létfenntartásához szükséges dolgok... ~ )

Ciklusok


A Javában 3 szabványos ciklusszerkezet létezik:

~ while

~ do-while

~ for

While Ciklus:

Ez az utasításforma rendkívül egyszerű. Annyi történik, hogy amíg (while) valamilyen feltétel igaz, addig a ciklus törzsében található utasítások újra és újra lefutnak. A ciklustörzset kapcsos zárójelek határolják itt is, az utasítások a köztük lévő blokkban állnak.


A Ciklusok kulcsa a feltételvizsgálat. A Javában a feltétel vizsgálat egy olyan kifejezés, ami logikai értéket ad vissza, vagyis Igazt (True) vagy Hamist (False). Egyszerű logikai vizsgálatokat a következő műveletekkel alkalmazhatsz:

~ < (kisebb mint)

~ > (nagyobb mint)

~ == (egyenlő)


Igen, 2 egyenlőség jelet kell használni, ugyanis 2 különböző műveletet kell megkülönböztetnünk a magas szintű programnyelvekben. Ezek rendszerint az értékvizsgáló és az értékadó műveletek. Adott konstans, vagy változó értéket 2 egyenlőség jellel hasonlítjuk össze egy másik értékkel (==), míg 1 egyenlőségjellel értéket adunk, rendelünk egy változóhoz (=).


Feltételes Elágazás

A Javában egy if vizsgálat gyakorlatilag ugyanaz mint a while ciklus logikai vizsgálata. Az egyetlen különbség hogy nem azt mondjuk hogy amíg van sörünk addig igyuk.. hanem hogy ha van sörünk igyuk...

Természetesen így az if vizsgálat törzsében lévő utasítások is csak egyszer futnak le. A feltételvizsgálat itt is mindenképp lefut annak az értékétől függetlenül és a törzs már csak akkor ha a vizsgálat igaz, azonban megvan a lehetőségünk egy else ág csatolására is. Az else ággal azt mondjuk meg hogy mit csináljon a program ha nem teljesült az azt megelőző feltétel.


Ha van sörünk akkor igyunk, máskülönben rugdossuk le Elemért a kocsmába.


Itt az else ágnak a máskülönben felel meg. Tehát ha a feltételünk nem teljesül (nincs sörünk), akkor az else ággal ráveszzük Elemért hogy hozzon még a kocsmából. (Az informatikus lusta fajta... nem azért dolgoztatja a gépet egész nap programokkal hogy utána saját maga szaladgáljon sörért... úgyhogy ha nincs a közeledben egy Elemér akkor szerezz be gyorsan).


Ha már ennyire komoly témák felé terelődött egyébként ez a cikk akkor gyorsan zárjuk le egy kis programmal. Fogyasszátok egészséggel és próbáljátok ki otthon.


Ez a gyakorlat egy klasszikus amerikai gyerekdalt fog leírni, de a sörös téma miatt kiválóan illik ide.

Remélem hasznos volt. Fordítani a javac BeerSong.java paranccsal tudjátok, futtatni pedig a java BeerSong paranccsal.

Kommentek száma: 0Címkék: java, while, if, sör, beer, beersong, ciklusok, elágazások

Java I. ~ Alapok ~... »

Java I. ~ Alapok ~ Osztályok

2012-03-29 15:42:00 - saki04

Átnézzük egy Java forrás felépítését és megírjuk a Hello World-öt...

Mi is kerül egy Java forrásba?

A .java forrásállományok egy-egy Osztályt (Class) írnak le. A programod ezekből az Osztályokból épül majd fel. Mint mindent az osztályokat is kapcsos zárójelek fogják majd határolni a Javában. Az Osztályokat tovább tagolhatjuk, úgynevezett tagfüggvényekre. Ezek alapvetően határozzák meg az Osztályunk viselkedését, ugyanis minden utasítást tagfüggvényekben kell elhelyeznünk.

Amikor a JVM elindul automatikusan megkeresi a

public static void main (String[] args) {


}

tagfügvényünket. Ez egy különleges tagfüggvény és minden Java alkalmazásnak tartalmaznia kell valamelyik osztályában. Így elmondható hogy egy Java alkalmazás legalább egy Oszályból és egy main tagfüggvényből áll.

A public jelzi hogy ez egy nyilvános tagfüggvény, tehát bárki, az alkalmazásunk bármely része hozzáférhet. A static-ot majd később kitárgyaljuk. A void pedig a visszadott érték típusát jelezné, esetünkben azt hogy a tagfüggvény nem ad vissza értéket, itt csak annyi dolgunk lesz hogy a beleírt utasításokat lefuttassuk. A String[] args létrehoz egy karakterláncokból álló tömböt az alkalmazás argumentumainak tárolására, de erről is majd később.

Szóval a programunk akkor kezdi el a futását, ha van benne egy main tagfüggvény és egészen addig halad amíg annak a végét el nem éri. A main tagfüggvényen belül többféle utasítást is kiadhatunk a JVM-nek, amelyek akár más programozási nyelvekből is ismerősek lehetnek:

~ kiadhatunk egyszerű utasításokat: Deklarációk // Értékadások // Tagfüggvényhívások

~ utasíthatjuk a JVM-et hogy valamit újra és újra lefuttasson: Ciklusok

~ és utasíthatjuk a JVM-et hogy csak akkor hajtson végre valamit, ha teljesül egy bizonyos feltétel: Elágazások

Ezeket később mind részletesen kitárgyaljuk majd. Egyelőre haladjunk tovább és próbáljunk meg lefordítani egy alap programot Javában. Nem lesz semmi komoly, csak egy Hello World. A programozók általában ezt írják meg elsőként ha egy idegen nyelvet tanulnak és az hogy mennyire egyszerű a Hello World megírása, fordítása és futtatása az jelzi hogy mennyire felhasználóbarát egyben az adott nyelv. Míg itt Javában ez pár sor lesz csupán ugyanez a feladat egy hardverközeli nyelven, mint pl.: Assembly már sokkal komolyabb kihívás lenne és egy bő oldalas kódot igényelne.

Szóval itt a Hello World-ünk:

Ezekután úgy futtathatjuk a forráskódot, hogy megnyitjuk a parancssort és kiadjuk a javac HelloVilag.java parancsot. Ez létrehozza majd a HelloVilag.class nevű fájlt, ami bitkódban tartalmazza majd ugyanazt amit fent leírtunk... Az egyetlen különbség mostmár csak annyi lesz hogy a rengeteg számból most mi nem értjük majd hogy mi van odaírva, de a számítógép igen. Szóval a sikeres fordítás után add ki a java HelloVilag parancsot és ha mindent jól csináltál a programod kiírja neked hogy Hello Vilag! a parancssorodba és kész is vagyunk.

Kommentek száma: 0Címkék: java, hello, world, osztalyok

Java I. ~ Alapok ~... »

Maya Alapfogalmak I. ~ Polygonok

2012-03-26 21:43:00 - saki04

Csak egy kis fejtágítás, semmi komoly, de jobb ha ilyesmikkel tisztában van az ember, mielőtt tovább lépünk...

Amikor modellezésről beszélünk ez Mayában konkrétan a karaktereink, tárgyaink 3D-s felületeinek létrehozását értjük. Ezen felületek segítségével fogunk majd végül meggyőző 3D-s képélményt biztosítani.

Alapvetően 3 fajta felületet különböztetünk meg a felépítésük alapján:

~ Polygonokat

~ NURBS objektumokat

~ Subdivision Surfaces ( Felosztott Felületeket )

A Polygonok 3 vagy több oldalú sima felületek hálózata, amiket face-eknek hívunk. Ezek aztán összekapcsolódnak hogy Poly Mesh-t alkossanak ~ egy polygonokból felépített objektumot. A Poly Mesh-ek vertexekből (csúcspontok), facekből (felületek) és edgekből (élek) állnak.

Amikor egy Polygon Mesh-t renderelünk az éleket beállíthatjuk hogy egyenesen jelenjenek meg, vagy akár görbén. Így nem csak sima felületek ábrázolására alkalmas, amivel mindjárt nagyobb szabadságot kapunk.

A Polygon Mesh-ek rengeteg alkalmazásban használatosak a kis erőforrásigényük, gyors renderelhetőségük miatt, így ha játékra, vagy webes felületre szánod a modelljeid, akkor mindenképp ehhez a felülethez kell ragaszkodnod. Ennek az oka hogy a Polygonok írhatók le a legkisebb adatmennyiséggel, így komoly teljesítménynövekedést érhetünk el ha helyesen alkalmazzuk.

Kommentek száma: 0Címkék: maya, tutorial, alapok, alapfogalmak, modellezés, polygon, polygonok

Maya Alapfogalmak I. ~ Polygonok... »

Maya 2011 Alapok - Templom tutorial III. rész

2012-03-25 18:25:00 - saki04

Befejezzük végre a templomot. Bár nem lesz túl művészi, de nem is ez volt a cél...

Ha túl összetetté válik a scene-ed akkor elég idegesítővé válhat a munka. Ennek elkerülésére van egy módszer, amivel a kijelölt objektumainkat template módba rakhatjuk. Ez azt jelenti hogy egyszerűen nem tudjuk majd őket kiválasztani a normál select parancsainkkal, így biztos nem módosítjuk őket egy szerencsétlen kijelölés után.


Ehhez annyit kell most tenned hogy átváltasz oldalnézetbe, hoggy egyszerűbb legyen a kijelölés és hierarchy módban minden eddigi objektumot a képernyőn kijelölsz.

Ezután a fő menüsorból:
Display > Object Display > Template

Ha jól csináltad akkor átváltanak a kijelölt objektumok egy érdekes halvány rózsaszínes árnyalatba, de ilyen apróságokon ne akadjunk fent (én se kedvelem a rózsaszínt), amint elkattintasz már csak egy szürke váz jelzi hogy hol állnak az alapok és nekikezdhetünk a tető felhúzásának.


Elősször is a homlokzatot kell lefektetnünk. Erre a célra egy NURBS karikát fogunk használni.
Create > NURBS Primitives > Torus

A következő beállításokkal:
Radius: 8 // Minor Radius: 0.5 // Number of Sections: 24

Translate Y: 9.7

 


A Radius ugyebár az átmérőnk - ez remélem átjött az előző részekből. A Minor Radius pedig a karikánk vastagságát fogja befolyásolni, ugyanis ez a karika falainak belső átmérője. A Number of Sections pedig természetesen azt jelenti hogy mennyire legyen kidolgozott, hány szeletből álljon a karikánk. Értelemszerűen ez minél nagyobb annál kerekebb az objektumunk, annál közelebb áll majd egy körhöz a körvonala, viszont annyival tovább is tart majd renderelni az adott objektumot, úgyhogy mindig mérlegelni kell, majd hogy mennyire fontos nekünk a geometria.


Ha például egy játékhoz tervezel valamilyen tárgyat, akkor mivel ezt valós időben kell majd kezelni minél kevesebb polygonszámból érdemes megoldani, de ha például egy animációhoz készül akkor viszont érdemesebb magasabbra állítani, mert ott viszont már nincs mentség ha egy kocka figyel vissza ránk a kocsi kerekei helyett. Persze az utóbbi esetben is óvatosnak kell lenni, mert hacsak nincs egy erőműved könnyen egyhetes munkát adhatsz a vasadnak egy pár perces animációra ha túllősz a célon.

Összetevők

Itt jön most az érdekes rész. Ugyanis a Mayában minden objektum különböző transform és shape node-okból épül fel. Ezek módosításával befolyásolni tudjuk a primitív objektumunk kinézetét, geometriáját. A homlokzatunk kicsit módosítanunk kell hogy tökéletes legyen, úgyhogy nézzük is hogyan nyúlhatunk hozzá.

Az első lépésként közelits a homlokzatra oldalsó nézetből, majd a kijelölési módot állítsd át Component Mode-ra.

Ezek után tarsd lenyomva a jobb egérgombot, majd válaszd ki a Control Vertex opciót. Ez megjeleníti majd a karikánk módosító pontjait.

 

 

Jelöld ki a felső sort és a Move tool-al húzd ki hogy tojásalakú legyen az átmérőnk.
Ha kész vagy akkor jobb klikk és Object Mode hogy eltüntesd a Control Vertext.

 

Nekiláthatunk a tetőnek.

Create > NURBS Primitives > Sphere
Edit > Reset Settings

és a következő beállítások kellenek:
Start Sweep Angle: 0 // End Sweep Angle: 180 // Radius: 8.25 // Number of Sections: 8 // Number of Spans: 4

Ezek után még el kell forgatni a kupolánk -90 fokkal az  X tengelyen és a homlokzat tetejére kell állítani, illetve ez még nem teljesen tökéletes. Scale Tool-al még le kell lapítanunk kicsit és így leszünk kész.

 

Mostmár a template objektumainkat is visszaállíthatjuk. Ehhez válasszuk ki a Hierchikus kijelölést és azon belül az utolsó Select by Hierarchy: Template opciót. Jelöld ki a templateinket és:

Display > Object Display > Untemplate

Ne felejtsd majd visszaállítani a kijelölési módod utána Select by Hierarchy: Root-ra.

Anyagbeállítások

A szín, a tükröződés és más tulajdonságokat is meghatároz ahhoz kapcsolódóan, hogy az anyag hogyan reagál fényre a Mayában.

Elősször is jelöld ki az összes objektumod.

Majd a Státusz vonalon állítsd át a menüsorod Renderingre a listából.

 

Lighting/Shading > Assign New Material

A megjelenő ablakból válaszd ki a Blinn nevü anyagot.

 

Az Attribute Editorban még kísérletezgethetsz a színekkel. Én egy ilyen fura kéket választottam, de ha neked majd más tetszik akkor nyugodtan végigpróbálhatod a palettát.

Kommentek száma: 0Címkék: maya, tutorial, alapok, modell, templom, tető, anyag, template

Maya 2011 Alapok - Templom... »

Maya 2011 Alapok - Templom tutorial II. rész

2012-03-07 17:54:00 - saki04

Itt a folytatás... Létrehozzuk az oszlopokat is... Csoportositunk, duplikálunk, ilyesmik.. :3 Semmi komoly, de már kezd formája lenni a kis szentélynek.

Folytassuk a templomunk készítését az oszlopokkal. Ez is nagyon egyszerü szerkezet lesz, csupán 2 kocka közé zárunk egy nagyobb hengert.

Elősször is hozzuk létre az oszlop alapját:

Create > Polygon Primitves > Cube

A paramétereink a következőek:
Width: 1.75 // Height: 0.6 // Depth: 1.75

A kis kockánkat ezután a Maya szintén a Scene közepén hozza létre, de A Channelbox-ban a Translate Y 2.3-as értékkel már a megfelelő helyén díszeleghet. A következő lépés az oszlopunk törzsét adó henger:

Create > Polygon Primitives > Cylinder
Itt persze az előző beállításaink fogadnak minket. Ahhoz hogy visszaállítsuk az alapbeállításokat a következőt kell tennünk:

Edit > Reset Settings

Majd állítsd be a következőket:
Radius: 0.5 // Height: 6 // Axis divisions: 12

A Translate Y érték 5.6-oson jó lesz.

Hogy az oszlop tetejét létrehozzuk duplikálnunk kell az oszlop alapjául szolgáló kockánk.

Edit > Duplicate Special

Itt is célszerű visszaállítani a beállításokat, majd a következő értékeket kell megadni újra:
Translate: 0 6.6 0 // Scale: 0.8 1.0 0.8

Az oszlopunk így már majdnem kész, egy apróság hiányzik még a talphoz. Ezt egy NURBS sphere segítségével fogjuk előállítani.

Create > NURBS Primitives > Sphere

Ezeket az értékeket kell beállítanod:
Start Sweep Angle: 0 // End Sweep Angle: 180 // Radius: 0.75 // Number of Sections: 8 // Number of Spans: 4

A Translate Y 2.6 és a Rotate X-en is módositanunk kell -90-re. Így már a helyén áll és a megfelelő szögben is. Ezen kívül még kicsit lapithatunk rajta hogy természetesebbnek tűnjön. Ezt Scale eszközzel tehetjük meg, vagy a Scale Z változót is módosíthatjuk a Channelbox-ban ( 0.7-es megfelelő lesz ).

A könnyebb kezelhetőség érdekében a legjobb ha csoportositjuk az oszlopunk elemeit. Ehhez ki kell jelölnünk mindet vagy a jelölőnégyzet megrajzolásával, vagy Shift+Klikk-el egyenként is kijelölgethetjük a részeket, majd

Edit > Group és a jól megszokott négyzet.

Itt egyetlen beállításra kell most figyelnünk

Group Under: Parent

A Maya ezekután hierarchikusan csoportosítani fogja az elemeinket. A lényeg, hogy így egy objektumként kezelhetjük őket. Ehhez elősször azonban meg kell változtatnunk a kijelölési módot, amire a Fő Menüsoron van lehetőségünk.

Most az oszlopunkat az alap szélére kell helyeznünk. Ezt manuálisan is megteheted a Move eszközzel, de a legjobb ha itt is a Channelbox-ra hagyatkozol, így biztos pozícióban lesz.

Translate X -2.5 // Translate Z 7.25

Majd duplikáljuk a következő értékekkel:
Translate: 5.0 0 0

A többit hagyd alapbeállításokon, mivel most azt akarjuk hogy a másolat méreteiben is megegyezzen az eredetivel. A 2 oszlopunkat ezután érdemes csoportosítani az előbb már tanult módon. Érdekes megjegyezni hogy ilyenkor a pivot point átkerül a 0 // 0 // 0 koordinátákra. Ezt fogjuk kihasználni a következőkben, ugyanis minden transzformáció ( méretezés, forgatás, mozgatás ) ehhez a ponthoz képest történik.

Szükségünk van tehát még 6 darab oszlopra a templomunk többi oldalára amit duplikációval fogunk elérni. Jelöljük ki mindkét oszlopot, majd

Edit > Duplicate Special és a következő beállításokat érdemes alkalmaznunk:
Rotate: 0 90 0 // Number of Copies: 3

Ezzel 90 fokkal elforgatjuk az oszlopainkat és 3-szor fog másolatot készíteni a már meglévő oszlopainkról a Maya, valamint minden másolatot elforgat egyenként 90 fokkal.

Ezzel minden oszlopunk a helyére kerül és megvagyunk a következő lépéssel a templomunk felépítésében.

Folyt. köv.

Kommentek száma: 0Címkék: maya, tutorial, alapok, modell, templom, oszlopok

Maya 2011 Alapok - Templom... »

Maya 2011 Alapok - Templom tutorial I. rész

2012-03-07 17:38:00 - saki04

Egy egyszerű templom alakzat alapjait rakjuk le... Megtudhatod hogyan hozz létre Primitív objektumokat, hogyan méretezd, forgasd, mozgasd, duplikáld (másold) őket...

A 3D-s programokban megtalálható egy készletnyi alapvető forma, amiket egyszerűen néhány kattintással létrehozhatunk. Ezeket primitív objektumoknak hívjuk, mivel nagyrészt ezeken fognak alapulni modelljeink.

A Maya ezek létrehozására is többféle módot kínál. Az interaktív módban szimplán kattinthatunk a munkaterületünkön és szemmértékre adhatjuk meg valósidőben a létrehozandó tárgyunk paramétereit. Bár ez elég egyszerű, de nem közel sem pontos módszer úgyhogy első körben ezt ki is kapcsoljuk.

Ehhez keresd fel a következő menüpontot:

Create > Polygon Primitives > Interactive Creation

Tedd üresbe a mellette álló négyzetet, majd NURBS Primitives alatt is végezd el a müveletet.

Create > NURBS Primitives > Interactive Creation

Ezek után ideje elkészítenünk az első modellünk, ami egy egyszerü kis oszlopos templom lesz.
Ehhez elősször is nyissunk meg egy új Scene-t.

File > New Scene

A templomunk alapja egy Cylinder(henger) primitív lesz.

Create > Polygon Primitves > Cylinder majd kattints a mellette lévő kockára az opciók előhívásához.

Itt beállíthatod a létrehozandó objektum különböző tulajdonságait, melyek természetesen primitívenként eltérnek. Számunkra a következő paraméterek lesznek fontosak:
Radius: 10 // Height: 1 // Axis divisions: 8 // Height divisions: 1 // Cap divisions: 1 // Axis: Y

A beállitások után a Create gombbal létrehozhatjuk az objektumot a Scene-ünk közepén, ami így néz ki:

(A munkaterületen állíthatod a megjelentést a Shading menüponttal)

Kész az objektumunk, de sajnos nem pont úgy helyezkedik el ahogy szeretnénk. Egyrészt ha nézetet váltasz Four-view nézetre akkor láthatod hogy nem a talajt jelző rácson fekszik, hanem valamivel alatta. Four-viewba átválthatunk a munkaterületünk oldalsó menüjéből is, vagy szimplán a Space billentyünkkel. Innen ha ki szeretnénk nagytani valamelyik nézetet, vagy belelépni akkor egyszerűen felévisszük a kurzort és újra Space-t ütünk.

A lapos hengerünk problémáját orvosolhatjuk úgy is, hogy átváltunk oldalsó nézetbe és a Move eszközzel magunk illesztjük a helyére, de ez megint csak nem a legpontosabb eljárás. Ezért jobb oldalt találhatsz egy kis ablakot, amit Channelbox-nak neveznek. Itt megtalálhatjuk az éppen kijelölt objektumunk adatait. Ha nem találnád benne, akkor lehet hogy nincs rendesen kijelölve az objektumod, úgyhogy húzz az egérrel egy jelelőnégyzetet köré és utána elő kell hogy jöjjenek a beállitások.

A Translate Y értékét változtasd 0.5-re. [Ez azért szükséges, mert a Scene közepe körül hoztuk létre az objektumot, tehát 1-es magasággal létrehozott hengerünk fele lóg a talaj alá, így 0.5-el kell megemelnünk.]

Hengerünket ezen kívül még el is kell forgatnunk ami szintén történhet manuálisan a Rotate eszközzel, vagy a Channelbox-ból a Rotate Y értékének állításával. 22.5 fok-ot adjunk meg a Channelbox-ban.

A következő lépésben szükségünk lesz egy ugyanilyen alakzatra, csupán kicsivel kisebb méretben, hogy egy lépcsőnk legyen. Ehhez duplikálnunk kell a mostani alapot az

Edit > Duplicate Special menüponttal. Persze itt is a kis négyzetre kattintunk az opciók miatt. Állitsuk be a következőket:
Translate: 0 1.0 0 // Rotate: 0 0 0 // Scale: 0.9 1.0 0.9 // Geometry Type: Copy // Group under: Parent

A többi beállításhoz nem kell nyúlni. Ha kész vagy, akkor Duplicate Speciallal létrehozhatod a másolatot amit a Maya a Translate értékünk miatt az eredeti tetejére fog helyezni egyből és így kész is vagyunk a templomunk alapjával.

Kommentek száma: 0Címkék: maya, tutorial, alapok, modell, templom

Maya 2011 Alapok - Templom... »

Android I. ~ Bevezető

2012-02-26 21:31:00 - saki04

Mi is az Android? Hogyan épül fel? Most megtudhatjátok...

Elhatároztam hogy újabb területre ásom be majd magam, bár már tudom hogy egyetem mellett az eddigiek is soknak mondhatóak. Mindenesetre biztos vagyok benne hogy senki figyelmét sem kerülte el az okostelefonok és velük együtt egy új rendszer térhódítása. Bizony az Androidról van szó.

Viszont miből is áll a kis zöld manó?

Nos, az Android nem más mint egy szoftvercsomag, ami tartalmaz egy operációs rendszert és számtalan egyéb alkalmazást, többek közt email klienst, SMS küldő szolgáltatást, kalendáriumot, névjegyzéket, böngészőt, térképet és egyebeket mint alapfelszerelést a mobiljaink számára. Ezeken kívül persze számtalan alkalmazást mi magunk is tölthetünk a netről kiegészítve és személyre szabva a rendszerünk. Ezek persze egy dologban megegyeznek: JAVA nyelven íródtak.

Persze nem csak a JAVA található meg az Androidban, hanem rengeteg egyéb finomság is hogy kényelmesen élvezhessük a mai médiák nyújtotta lehetőségeket:

C rendszerkönyvtár - BSD-ből származtatott C könyvtár Linux alapú eszközökre hangolva

Média könyvtárakPacketVideo's OpenCORE alapon tartalmaz audió-videó codec-eket, illetve képformátumokat - MPEG4, H.264, MP3, AAC, AMR, JPG, és PNG támogatás

Surface Manager - A megjelenítő alrendszerhez való hozzáféréseket irányítja

LibWebCore - Böngészőmotor - az alap beépített webböngésző ezt használja, illetve az alkalmazásokba ágyazott webes felületek is

SGL - egy szerényen a hattérben lapító 2D-s grafikusmotor

3D könyvtárak - OpenGL alapokon - ahol elérhető igyekszik hardveres gyorsítást alkalmazni, de attól se riad vissza ha szoftveresen kell megoldani

FreeType - bitmap és vektor alapú betűkészletek megjelenítésére szolgál

SQLite - adatbázis-motor az alkalmazások számára

Az Android operációs rendszere Linux 2.6-ra támaszkodik olyan alapvető műveletek elvégzésére mint a memóriakezelés, processek kezelése, hálózati csomagok kezelése, driver modellek, adatbiztonság. A kernel ezeken kívűl absztrakciós rétegként szolgál a hardver és az alkalmazások közt.

Minden Android alkalmazás a saját processében fut, saját VM-el. Ezek viszont nem teljesen a JAVA-ból már megszokott Virtuális Gépek (Virtual Machine), hanem úgynevezett Dalvik VM-ek. Ez csupán annyiban különbözik, hogy minimális memóriahasználatra lettek optimalizálva, hogy a  mobilok is kényelmesen elfutassanak akár több VM-et is egyszerre.

Mára legyen elég ennyi, legközelebb megnézzük hogy kezdjünk neki a fejlesztéseinknek PC-n, mit kell letölteni és egyebek...

Végül itt egy apró áttekintő ábra a fejlesztőktől a könnyebb érthetőség kedvéért:

Az Android rendszer felépítése

Az Android rendszer felépítése

Kommentek száma: 0Címkék: bevezető, android, felépítés, szerkezet, mobil

Android I. ~ Bevezető... »

Péntek esti játék ajánló 4. - Family Guy Online

2012-02-10 21:20:00 - saki04

A Griffin család hétköznapjai semmiképp sem mondhatóak hétköznapinak... De immár karnyújtásnyira tapasztalhatjátok meg hogy is lehet felforgatni egy csendes amerikai kisváros életét.

Aki még nem lenne köszönőviszonyban a történettel azok számára dióhéjban. Adott a csendes amerikai kisvárosunk Quahog és a minden amerikai standardnek megfelelő családunk: egy debil családfő, egy folyton aggódó anyuka, egy súlyproblémákkal küzdő tinisrác, egy tinilány, egy az anyja halálát kivánó apróság és egy beszélő kutya...  Persze kisvárosunkban egyéb arcok is képviseltetik magukat, mint a helyi giggolo, vagy rokkant de még ereje teljében lévő rendőr aki szolgál és véd de a Griffin család körül a baj bajjal jár és Peter apu sokszor megtalálja a módját hogy még erre is rátegyen egy jó nagy lapáttal.

A játék egy böngészős MMO, vagyis egy webböngészőn kívül ( Chrome // FireFox // Opera.. stb. ) csupán egy nagy adag memóriára lesz szükségetek. Ma délután lezajlott a stressz teszt is, amin már a játékosok is részt vehettek úgyhogy bár sok időm nem volt rá az egyetem miatt, de tettem vele egy próbát.

Az irányítás egyszerü, WASD-vel mozogsz, az egérrel csinálhatsz minden mást ( kamera mozgatás, interakciok ). Rengeteg szöveg van a játékban, minden karakter a saját hangján szól hozzánk ha felveszünk egy küldetést, vagy épp csak random. Ez picit élőbbé teszi a várost. Csak pár küldetést volt alkalmam kipróbálni, ezek elég egyszerú, beszélj vele, gyűjtsd össze ezt és azt típusúak voltak. Egy apróság viszont hihetetlenül tetszett: néhány küldetés elején megnézhetsz egy jelenetet a sorozat azon részéből, amihez a küldi épp kapcsolódik.

A grafika cel-shaded és igyekszik illeszkedni a sorozat stílusához. Ez szerintem elég jól sikerült is. Böngészős játékok közt ez a megvalósítás kifejezetten szép, bár Unity engine fut alatta, így várható volt hogy igényes tálalásban kapjuk a programot. A sorozat rajongói számára mindenképp kötelező darab, vagy bárki másnak aki szeretne egy kicsit szórakozni és lazítani a komolyabb alkotásoktól.

Katt a játékhoz...

Kommentek száma: 0Címkék: játék, ajánló, péntek, esti, MMO, family, guy, fox, peter, griffin, quahog

Péntek esti játék ajánló 4.... »

Java I. ~ Alapok ~ Bevezető

2012-02-06 16:51:00 - saki04

Kicsi fekete manó, barna köpenyben a sivatag homokját járja és különösen vonzódik bármilyen objektumhoz amit megpillant... A Star Wars Javái és a Java programozási nyelvben van valami közös :3

A laptopom egy ideje sajnos kijelző problémákkal küzd és az asztali gépemen nem tudok Mayát futtatni a szerény videókártyám miatt, ezért muszáj voltam mással elfoglalni magam. Így jött képbe a Java. Előző szemeszterben kaptam egy kis fejtágítást belőle az egyetemen, de mivel később elég meredek utakra tévedtünk az Atan és a ráépülő robotfociszimulációs alkalmazásokkal úgy érzem hogy saját magam is képeznem kellene, mert az alapok még nincsenek egészen rendben. Arról lehetne vitatkozni hogy ez mégis kinek a hibája, de inkább nézzük mit is tartogat nekünk a Java.

A Java egy objektum orientált programozási nyelv, amelyet James Gosling talált fel Oak néven. Később kiderült, hogy egy ilyen nevű nyelv már létezik és így lett Java-ként ismert. Kezdetben bár a Java felhasználóbarát nyelvnek bizonyult erőteljes sebesség gondokkal küszködött és számtalan egyéb hibával, amiket az idők során orvosoltak. Ma már egyáltalán nincs lényegi sebességkülönbség a vetélytársaival szemben, ráadásul számos előnyt biztosít a programozó számára. Ilyen például a memóriakezelése, amivel szinte teljesen leveszi ezt a terhet a fejlesztők válláról, míg C programokban hatalmas gondot kell erre is fordítani.

A Java előnyei a többi programozási nyelvvel szemben azon kívűl hogy lényegesen több Java programozót keresnek a vállalatok:

- Objektum Orientált Programozás ( emberközelibb, könnyebben áttekinthető és rendszerezhető mint egy Eljárás Orientált nyelv )

- Garbage Collection ( Szemétszedés - a program futása során felszabadítja automatikusan azokat a memóriahelyeket amikre később a végrehajtáshoz már nem lesz szükség, de a program korábban lefoglalta )

- Multiplatform ( Bármilyen rendszeren használható, a kódod gyakorlatilag elég egyszer megírni, a különböző JVM-ek fogják később biztosítani hogy a programod ugyanolyan jól működjön Linuxon is, ahogy Windows alatt )

Egy Java program születésének első lépése hogy a programozó megírja a forráskódot. Ez történhet akár egy mezei notepad-ben vagy bármilyen szövegszerkesztő szoftverben. A következő lépésben le kell fordítanunk a forrást egy compiler-rel ( fordító ). A compiler létrehoz egy bájtkódot, amit már bármilyen JVM-en ( Java Virtual Machine - Java Virtuális Gép ) lefuttathatunk. A JVM teszi lehetővé hogy bármilyen rendszeren működjön a programunk, ugyanis valójában a Java programunk ezen a virtuális gépen fog lefutni, így a futáshoz szükséges környezet mindig biztosítva lesz a program számára.

Kövezzetek meg egyébként, de mivel Windowst használok a Java használatát is Windows-on keresztül fogom bemutatni. Tudom hogy vannak gyorsabb rendszerek, csillogóbbak is és akár a NASA-t is feltörhetjük, de egyelőre ennél maradok, számomra ez a legkényelmesebb. Szóval elősször is hogy parancssorból használhassátok a Java Compilert és a Java-t Windows alatt a következőket kell tennetek:

Töltsd le az éppen aktuális JDK-t ( Java Development Kit - Java Fejlesztői Környezet ) innen...

Telepítsd, majd...

Start Menü > SajátGép > Tulajdonságok > Speciális > Környezeti változók

Itt a rendszerváltozók közt keresd meg a Path-t és szerkesztéssel add hozzá a JDK bin nevű mappájának elérési útját.

Nálam például ez így néz ki: C:\Program Files\Javajdk1.7.0_02\bin

Ezután hozz létre egy új rendszerváltozót. Értelemszerűen az új gombra kattintva.

A változó neve: JAVA_HOME

A változó értéke: C:\Program FilesJava\jdk1.7.0_02 ( A JDK-d telepítési könyvtára )

Ehhez később majd mellékelek kommentált videót, amint visszakapoim a laptopom a száműzetéséből azok számára akiknek ez így leírva nem lenne teljesen világos. Mindenesetre ha jól csináltatok mindent akkor azt úgy ellenőrizhetitek hogy a parancssorban kiadjátok a java -version és a javac -version parancsokat.

Én még előszeretettel használom a NotePad++ programot a forrásaim megírására, mert számtalan programozási nyelv szintaktikájára be lehet állítani, így áttekinthetőbb a kódod.

Amikor elkészültél egy forráskóddal, akkor azt parancssorból mostmár javac fájlnév parancs kiadásával fordíthatod és a lefordított fájlt később java fájlnév paranccsal futtathatod.

Kommentek száma: 0Címkék: java, alapok, bevezető, hello, world

Java I. ~ Alapok ~... »

Péntek esti játék ajánló 3. - Black Prophecy

2012-02-03 23:03:00 - saki04

"-Én vagyok az apád unokaöccsének az unokabátyjának a régi szobatársa... -A-a-akkor milyen rokonságban vagyunk? -AZ ÉGADTA VILÁGON SEMMIFÉLÉBEN!!!" ~Űrgolyhók~

 

A Black Prophecy bár első hallásra az ember hamarabb kapcsolna hozzá egy fantasy alkotást, azonban valójában egy sci-fi MMO-t takar, mégpedig egy vérbeli űrhajószimulátort. Ez már csak azért is örvenedetes, mert nem vagyunk elkényeztetve ilyen témájú játékokkal, főleg nem ingyenesekkel, szóval nézzük csak mit is ajánl nekünk a Black Prophecy.

A történet bár nem túl szövevényes és kissé klisés sci-fi sztori, de a játék oldalán található töménytelen háttérinfó és a bevezető küldetések hihetetlen hangulata miatt teljesen élvezhető. A játék kezdetén a helyzet a következő:

A Föld erőforrásai kimerültek ezért megindult a kolonizálási verseny távoli bolgyókért, naprendszerekért. Ennek a melléktermékeként az emberi fajból két másik frakció vált le. Ők a Genide és Tyi. Az első genetikai úton, míg a másik kibernetikus implantok által felerősített emberek csoportjait takarja, akik felsőbbrendűnek ítélve magukat saját fajt hoztak létre és persze szüntelenül háborúkat vívnak az újabb és újabb kolóniákért. Hosszas tárgyalások során sikerül rábírni a 3 faj vezetőit, hogy találkozzanak és béketárgyalásokat folytassanak, azonban semmi sem olyan egyszerű, hiszen a képből nem hiányozhatnak a kedvenc űrkalózaink sem, akiket jelen esetben egy terrorista szervezet képvisel, gyönyörű, radikális és militarista nézetekkel, amiket az intróban szépen meg is osztanak velünk.

A játék legszembeötlőbb tulajdonsága egyébként a grafika, ami hihetetlenül szép egy free-2-play játékhoz képest. Sajnos ennek megfelelően a gépigénye is magasabb, mint a jelenleg elérhető MMO-ké, úgyhogy érdemes átböngészni a rendszerigény lapot mielőtt bárki belevetné magát. A vizuális megjelenítés számomra az X sorozat tagjait idézte, amiket imádtam bár játékmenetre korántsem kapunk annyira kiforrott, összetett tartalmat, mint a régi etalonban, vagy az űr MMO-k zászlóshajójában, az EVE-ben, de ez nem feltétlenül baj.

Amellett hogy mellőzhetjük a gyakran hosszú negyedórákig tartó bolyongásokat valamint a mély politikai és kereskedelmi vonalat. Egy olyan rendszert kapunk helyettük ami harcban teljesen az akcióra koncentrál, míg a másik oldalon egy könyörtelen és nagyon megszorított fejlődési és craftolási rendszer áll, így muszáj vagy már a játék legelején előre tervezni, ha boldogulni szeretnél a magasabb szinteken. A hajód különböző paraméterekkel rendelkezik, amik mind meghatározzák a hajódra aggatható fegyvereket, páncélzatot, hajtóművet és minden egyebet ami csak felkerülhet egy űrjáróra. Azonban az ehhez szükséges pontokat igen szűkmarkúan méri a program, tehát a kompromisszumok elkerülhetetlenek, specializálódnod kell különben eltaposnak.

Személy szerint szeretem az ilyenfajta taktikázást, az a fajta ember vagyok aki szeret utána nézni a karaktereinek és tervezgetni hogy épp milyen módon tisztítom majd meg a csatatereket felebarátaimtól. Persze ez minden óvatlan pilóta rémálma is egyben...

Zárásként ajánlanám ezt a játékot mindenkinek aki komolyan veszi a PVP-t és nem áll tőle távol a sci-fi környezet. Minden terület teljesen nyílt a játékosok számára is, úgyhogy ha szabadon járkálsz jó eséllyel botlasz majd játékos ellenekbe is. Ezenkívül a játék tartalmaz Háborús Zónákat és a legutóbbi updattel a PVE kedvelőinek is megnyitottak pár Raid-et ( természetesen über ritka cucokkal jutalomként )

Katt a játékhoz...

Kommentek száma: 0Címkék: játék, ajánló, péntek, esti, MMO, sci-fi, űr, űrhajó, Black, Prophecy

Péntek esti játék ajánló 3.... »