-
Notifications
You must be signed in to change notification settings - Fork 8
01 Hello Game World
In dit deel van de tutorial gaan we even kijken hoe we een game kunnen maken die gebruik maakt van oopg
. oopg is de game engine die we gaan gebruiken.
Misschien is het je al opgevallen dat bijna elke eerste les van programmeren begint met de klassieke frase: Hello World. Dat is niet bepaald poëzie, maar wel erg handig om te kijken of de software, programmeertaal of wat dan ook, aan de praat te krijgen valt.
Om te starten gaan we ervan uit dat het gelukt is om de up-and-running stappen te volgen.
De volgende stappen moet je nemen:
- Volg up-and-running om de repo te kopieren en de folder in Eclipse te importeren.
- Maak een nieuwe
package
aan voor je eigen spel (NB: Java package names zijn geheel in kleine letters. - Schrijf een stuk code met een
public static void main
methode die Hello, World! op het scherm zet. - Schrijf de rest van je game. 🎉 (zie de volgende tutorial)
Een package
is een manier om dingen te ordenen in een java-project. Feitelijk is het een folder die code bij elkaar verzamelt. Zo bevat de package nl.han.ica.oopg
alle code voor de game engine. Als je deze gaat bekijken in je file systeem (of hier op github) dan zie je dat er allemaal folders zijn aangemaakt met een pad dat er als volgt uit ziet: main/java/nl/han/ica/oopg
.
Nu gaan we bijvoorbeeld dus een nieuwe game aanmaken voor de student Dewi. Dewi heeft haar eigen bedrijf: zachtewaren.biz. De naam van haar game is: Sonic Monkeys. Volgens de java conventies ziet de package er dan zo uit: biz.zachtewaren.sonicmonkeys.
In eclipse werkt dat als volgt. Rechtermuisklik in de package explorer op src/main/java
opent een menu. Doorloop het menu zo: New->Package
.
En vul dan het volgende menu in en klik op Finish.
In deze tutorial gaan we even niet heel erg in op hoe de game engine werkt. Het belangrijkste is het checken van de werking van de engine. Werkt de setup die je hebt met de code die je hebt gedownload.
We gaan een class maken die overerft van de GameEngine
. Deze is dan verplicht een aantal methoden te implementeren.
Hieronder het Hello World voorbeeld. In de volgende tutorial komt daar wat meer uitleg over. Als het niet werkt, is het nu misschien een mooi moment om te kijken of je alle stappen hebt doorlopen. Vraag anders even hulp.
package tutorial; // de naam van de package
// deze 3 classes moet je geimporteerd hebben om het te laten werken.
import nl.han.ica.oopg.engine.GameEngine;
import nl.han.ica.oopg.objects.TextObject;
import nl.han.ica.oopg.view.View;
public class HelloWorld extends GameEngine {
public static void main(String[] args) {
HelloWorld hw = new HelloWorld();
// deze methode start de game.
hw.runSketch();
}
@Override
public void setupGame() {
int worldWidth = 500;
int worldHeight = 500;
TextObject to = new TextObject("Hello, World!", 40);
to.setForeColor(255, 255, 255, 255);
addGameObject(to, 100, 100);
View view = new View(worldWidth, worldHeight);
setView(view);
size(worldWidth, worldHeight);
}
@Override
public void update() {
// Dit doet nog niets
}
}
Gelukt? Ga dan door naar het volgende deel van deze tutorial.
Zoek je code? Die staat in de OOPG engine op GitHub.