Gluon/da
Intro
Dette afsnit giver dig dokumentation til de forskellige dele af Gluon:
Grundlæggende om Gluon
- Spil som laves ved brug af GluonEngine er alle lavet på samme måde. Dette kapitel beskriver kort, hvordan det virker. Hvis du ikke allerede forstår, hvordan systemer baseret på GameObject/Component-paradigmet virker, så er det stedet at starte.
Introduktion til Creator
- Når du forstår det grundlæggende design af et spil bygget med GluonEngine, er du klar til at se på Gluon Creator, det værktøj, som du bruger til at lave spil. Dette kapitel beskriver brugergrænsefladen og arbejdsgange med værktøjet.
At lave et spil
- Når du har læst de to første kapitler og føler sig klar til at begynde at lave et spil med Gluon, så gå bare i gang. Skulle du går i stå på et tidspunkt og have brug for yderligere hjælp med noget, så kan du finde det i dette afsnit.
Grundlæggende om Gluon
- Spil bygget ved hjælp af GluonEngine kaldes GameProjects. De består af en række forskellige typer af objekter, der arbejder sammen om at skabe et spil. Det følgende er en kort introduktion til, hvordan strukturen i et GameProject virker. Du kan begynde at arbejde med gluon Creator uden denne viden, men det vil gøre dit liv nemmere, hvis du forstår disse grundlæggende begreber, som de benyttes i resten af dokumentationen.
GameObject-hierarkiet
- Øverst i GameObject-hierarkiet er GameProject, som dybest set er hele dit spil. Et GameProject indeholder en eller flere Scenes, som kan være alt fra et niveaukort til en menu skærm. En Scene består af et eller flere GameObject'er. Et GameObject er en træstruktur af GameObject'er eller hvilket som helst antal Components. Et GameObject repræsenterer en funktionel enhed i en scene, som fx en bil, der kan bestå af mindre dele, som selv er GameObject'er (fx en raketrygsæk eller et våben). Component'er rummer den logik, som virker på det GameObject, som de er knyttede til. Component'er kan knyttes til vilkårligt antal Assets. Et Asset repræsenterer simpelt hen et stykke data, som er gemt på harddisken, fx en lydfil eller et billede.
GameObject-hierarkiet består af instanser af GluonEngine::GameObject i en træstruktur med et forældre-barn-system; hvert GameObject kan have et vilkårligt antal instanser af GluonEngine::Component. Component'erne indeholder det meste af logikken i spillet, og da mange af dem kan anvendes mange forskellige steder, så vil Gluon blive leveret med et antal Component'er klar til brug (så som et kamera, inputhåndtering, en MeshRenderer, en TextureRenderer og så videre).
Logikken bag oprettelsen af dette system er at sætte spilprogrammøren i stand til at gennemføre indkapsling og skabe genbrugelige komponenter, som derefter kan anvendes af mange GameObject'er. Det giver også mulighed for fornuftige adskillelse af de forskellige typer af logik, der kræves til de enkelte dele af et GameObject, og dermed potentielt få klarere, mere læselig kode. Samtidig giver strukturen beskrevet her mulighed for at etablere et grafisk værktøj til at styre alle komponenternes indstillinger. Komponenter er implementeret som plugin, som gør koden endnu mere fleksible og separeret.
Mere om komponenter
Component'er er en slags egenskaber, som du kan knytte til GameObject'er, som fx en "render"-Component der gør GameObjekt'et synligt eller en "SoundListener"-Component, som giver objektet evnen til at høre lyde. Component'er kan også være scripter, som kontrollerer opførslen af de GameObject'er, som er knyttet til dem. Alle GameObject'er i Gluon har en indbygget Transform-egenskab, som giver objektet sin position, drejning og størrelse (der er ikke meget mening i at have et objekt, som ikke i det mindste har en position). Component'er har ikke Transform-egenskaber, men det har det GameObject som en Component er knyttet til.
Introduktion til Creator
På billedet til højre kan du se Gluon Creator i sin standard layout med eksemplet Invaders indlæst. I en rækkefølge nogenlunde med uret er vinduets elementer:
Project
- Dette viser alle Assets'ene i dit projekt, såsom lyde, teksturer, scripts og Scener.
Components
- Dette er en liste over de foruddefinerede funktioner, som du har til rådighed i Gluon Creator. Component'er er ting som lyd-kilder og lyttere, kamerakontroler, input-handlere og lignende.
View
- Dette er visningen af din nuværende Scene set fra kameraet.
Scene
- Indholdet af den aktuelle Scene - i bund og grund grafen for din scene.
Properties
- Det sted, hvor du kan se og indstille hver valgmulighed på de forskellige Component'er, der er knyttet til et GameObject i dit spil.
Messages
- Det er her fejlretningsbeskeder, fejl fra scripts og andre oplysninger fra de forskellige komponenter bliver vist.
Arbejdsgangen i Gluon Creator
Arbejdsgangen ved brug af Gluon Creator til at lave spil er baseret på den ide, at du skal kunne bruge musen til så meget af arbejdet som muligt. For eksempel føjer du et Asset til dit projekt ved at trække en fil ind i panelet Projects fra din filbrowser (eller ved at klikke på knappen "Add Asset..." i værktøjslinjen). Den vil så blive kopieret ind i projektmappen og være klar til brug i dit spil.
To describe a scene in a game, you select the appropriate Scene in the Project view, which causes it to be loaded and shown in the Scene pane, and in the View the camera view will show what the camera sees in the newly loaded scene. You can now edit this scene, by adding and removing GameObject to the Scene, and by adding Components to those GameObjects.
To add a GameObject to the scene, click on the "Add GameObject" button on the toolbar. This will add a new, empty GameObject to the Scene, and if you have an existing GameObject selected, the new one will be added as a child to the selected one. This allows you, as described in Gluon Basics, to build items for the game based on multiple GameObjects in a hierarchy, which all move along with each other.
So that you can change the values for the various Components, selecting a GameObject in the Scene view will make the properties for that object and all the Components on it show up in the Properties view, which is a scrollable, categorized list of all the various properties.
One of the functions which will be performed with some regularity from the Properties view is that of setting references to various Assets, for example setting the texture of a SpriteRenderer, or the sound of a SoundEmitter. This is done by clicking on the "..." button in the Properties view and selecting the appropriate item from the list.