pondělí 4. března 2013

Vyrábíme Tomb Raidera

V tomto textu naleznete přímý postup výroby hry ve stylu Tomb Raider v editoru Unity, tedy jen toho nutného základu, abych byl přesný.

Download editoru Unity je zde, ke stažení v této chvíli ve verzi 4, ač já osobně používám 3.5.7, a to proto, abych mohl hru následně převést na Android verzi (mám licenci jen na verzi 3.5, nikoliv v 4).

První krok je otevření nového projektu. Doporučuji v úvodní nabídce nic nezaškrtávat, jen by to zbytečně dlouho zdržovalo a cokoli se stejně dá kdykoli importovat z nabídky menu. Druhý krok je důležitý z důvodu, abysme ve scéně viděli - rozsvícení světla zahájíte takto: položka v menu GameObject/Create Other a Directional Light. Se světlem již nadále není třeba nijak manipulovat. Tento druh světla osvětluje scénu nehledě na to, kde je umístěno. Pokud se vám přesto nebude z nějakého důvodu zdát, je možnost ovlivnit jeho směr, barvu a intenzitu. Po označení Directional Light se napravo zobrazí nabídka nazvaná Inspector. Úhel světelných paprsků lze změnit v položce Transform/Rotation. Barvu a intenzitu pak lze najít v sekci Light na téže nabídce.

A. Nemáte-li postavičku, můžete si lehce vytvořit objekt, který panáčka zastoupí do doby, než se vám povede vymodelovat 3D postavičku. V menu GameObject/Create Other a Capsule vytvoří na herní ploše (v okně Scene) objekt, se kterým budeme již za drobný moment moci hýbat.

B. Máte-li postavičku, v menu Assets zadejte Import New Asset a najděte onen soubor na disku. Unity ho buďto importuje s materiály, v častějším případě je na vás, abyste stejným postupem importovali její textury.

Podlahu lze vytvořit obdobně jako při rožnutí světla. v GameObject/Create Other klikněte na Plane. V Inspectoru napravo v položce Transform změňte Scale na X = 5, Y = 1, Z = 5, to aby podlaha byla větší. Aby naše podlaha vypadala lépe, vytvořte si materiál, který pak podlaze dodá atraktivnější vzhled. V tabulce Project klikněte na Create a poté na Material. Tento nově vytvořený materiál pak přesuňte myší na naši podlahu v tabulce Hierarchy. Klikněte na materiál a v Inspectoru pak můžeme ovlivnit dvě věci: můžeme měnit barvu podle toho, jakou máme momentální náladu a také můžeme přidat podlaze obrázek, a to je jeden ze způsobů, jak do hry vložit grafiku. Nejprve je ale nutné obrázek do projektu importovat, a to uděláte podobně jako u postavičky.

Zatím máme: světlo ve scéně, postavičku čekající na oživení, podlahu, po které bude postavička kráčet.

Pro pohyb postavičky si vytvořte kód v javascriptu - v položce Project/Create vyberte Javascript. Klikněte na něho myší, otevře se vám Mono. To je skriptovací prostředí, ve kterém programujete hru. Všechno smažte a napište v něm následující řádky:


var panacek : GameObject;
var controller1:CharacterController;
var smer:Vector3;
var rychlost: float;
var rotace: float = 0.0;
var rotacerychlost : float = 200.0;
var panak : Transform;
function Start()
{
controller1 = panacek.GetComponent(CharacterController);
rychlost = 15f;
}
function Update () {
controller1.Move(smer * Time.deltaTime);
smer = Vector3(0,0,Input.GetAxis("Vertical"));
smer = target.transform.TransformDirection(smer);
smer = smer * rychlost;
if(Input.GetKey(KeyCode.D)){
rotace += Input.GetAxis("Horizontal") * Time.deltaTime * rotacerychlost;
}
if(Input.GetKey(KeyCode.A)){
rotace += Input.GetAxis("Horizontal") * Time.deltaTime * rotacerychlost;
}
panak.rigidbody.MoveRotation(Quaternion.Euler(0,rotace%360,0));
}



Kód uložte, vraťte se do Unity a přetáhněte ho myší na naši postavičku. Ještě musíte Unity povědět, co je co ve vašem kódu. Označte postavičku myší a napravo v Inspectoru se vám pod položkou Transform zobrazí nová tabulka Script. V této tabulce do None políčka vedle Panacek je nutno myší přetáhnout naši postavičku z Hierarchy, pak do Panak totéž. Rychlost je třeba vyplnit jakýmkoli číslem, čím bude vyšší, tím vaše postavička půjde rychleji. Do kolonky Rotace Rychlost zadejte zhruba 200, aby se postavička otáčela slušnou rychlostí.

Ještě je potřeba dodat fyziku. Klikněte na postavičku. Z menu Component/Physics přidejte Rigidbody  a Character Controller.

Voilá, základ pro Tomb Raidera je hotový.

Nuda? Říkal někdo, že tvorba her je zábava? Tak vidíte.


zeal

0 komentářů:

Okomentovat