Thread: 2D Game (hobby)
-
24-02-2012, 12:56 #1Member
- Registered
- 26/06/11
- Location
- Zeebrugge
- Posts
- 1,097
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 0/26
2D Game (hobby)
Beste
Om mijn programmeer 'skills' wat bij te houden en bij te leren, zou ik graag beginnen met het programmeren van 2D games ( 'simpele' games zoals, mega man, contra, mario, zelda,... sidescrolling/run'n'gun/beat'em'up)
Ik doe momenteel TI en heb dus wel al wat kennis van enkele programmeertalen waaronder c++ / c# / java.
Nu is mijn vraag naar jullie toe:
1. Zelf een engine programmeren (2D) of een bestaand gebruiken.
2. Indien zelf een engine programmeren heeft iemand enkele goede resources?
3. Welke programmeertaal is het meest opportuun te gebruiken (voor/nadelen)
4. In welke omgeving programmeer je zoiets best ?
5. Bestaan er best practices of design patterns voor 2D gaming?
Alle info/resources/tips zijn welkom
Deep in the heart where the mysteries emerge.no votes
-
-
24-02-2012, 15:06 #2
Je moet goed weten waaraan je begint. Een engine kan zo simpel zijn als een punt die in een vlak naar voor en naar achter kan bewegen (User I/O), en dat op enkel rechte lijnen. Daarbij kan je dan nog een camera steken (zodat je tegen het einde van het scherm kan lopen ipv altijd dead center), hoogte, hitdetection..
Vanaf dan kan je voor twee opties gaan imo:
- iets visueel maken m.b.v. wiskundige formules en automatisch gegenereerde levels, meest eenvoudige vorm lijkt dan op Windows Media Player alla: Prozac and Windows Media Player - YouTube
of
- je maakt een speelbaar spel met een pak artwork (zoals sprites, textures, etc).
Met het eerste leer je het meeste, maar weinigen vinden het eindresultaat tof. Bij de tweede optie ga je bijzonder veel tijd verliezen in de art work en raad ik af om alleen te doen.
2: eerste x zelf maken
3: C++ omdat je best alles zelf doet, geen nood aan Java of C#/XNA. Of wanneer je direct voor een speelbaar spel wil gaan: XNA. Als je echt balls to the wall wil gaan: OpenGL API en dergelijke.
4: maakt niet uit
5: al doende leert men het moet vooral super snel zijn. het zal je vele projecten kosten tegen je het van het gevonden hebt.no votes
-
24-02-2012, 20:17 #3Approved 9liver
- Registered
- 18/01/04
- Location
- Melle
- Posts
- 10,535
- iTrader
- 56 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 27/102
En om eerlijk te zijn, iets leren door een project uit te werken is meestal 90% van de tijd dingen doen die je reeds kent en 10% nieuwe dingen uitproberen en zodanig in je bestaande code duwen dat het échte idee erachter vaak verloren gaat. Nieuwe zaken moet je vooral leren kennen door kleine stukjes testsoftware te schrijven. Daar zal je veel meer uit leren. Ga bv. eens alle design patterns af, implementeer wat verschillende soorten algoritmen, ... Dat is allemaal véél leerrijker.
“In terms of how we evaluate schooling, everything is about working by yourself. If you work with someone else, it’s called cheating. Once you get out in the real world, everything you do involves working with other people.”
PSN: Cycloon - Final Fantasy XIV: A realm reborn characterno votes
-
25-02-2012, 02:41 #4Member
- Registered
- 26/06/11
- Location
- Zeebrugge
- Posts
- 1,097
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 0/26
Thanks allebei voor de input

@cycloon Eigenlijk heb je wel een punt en wss ga ik ook doen wat je voorstelt, maar stiekem zou ik wel graag eens zien hoever ik geraak met het maken van een game. (is ook iets waar enorm veel tijd in kruipt aangezien ik ook de art zelf wil maken (vandaar ook hobby, ik leer tekenen etc en wil het uiteraard ook op digitaal vlak spelen ermee)
Voor school moesten we alle patterns kennen van head first, ik denk dat ik die allemaal nog eens ga overlopen en kijken wat ik er verder nog kan uithalen
Deep in the heart where the mysteries emerge.no votes
-
25-02-2012, 15:26 #5Member
- Registered
- 17/07/02
- Location
- Wilrijk
- Posts
- 1,994
- iTrader
- 2 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 9/16
Kijk eens vooral hier naar best practices van iemand die effectief er iets van weet
How to program independent games
Presentatie van Jonathan Blow de maker van Braid, over hoe ge games moet developen
En zeker dus zo'n dingen eens lezen
Game Object Structure: Inheritance vs. Aggregation
Der zijn al een aantal artikels over hoe ge GEEN inheritance moet gebruiken voor game-objects
Voor talen, maakt niet uit eigenlijk C#/XNA hebt ge ook niet direkt een speelbaar spel, C++ is moeite voor niks, misschiens het beste in javascript/canvas iets maken
Hopelijk leren ze u ook echt wanneer ze te gebruiken, hier een belangrijke regel voor desing patterns,Voor school moesten we alle patterns kennen van head first
Het is VEEEEEEEEEEL ERGER een design pattern te gebruiken wanneer het niet nodig is
Dan ergens geen design pattern wanneer het wel zou mogen.no votes
-
25-02-2012, 17:26 #6Member
- Registered
- 26/06/11
- Location
- Zeebrugge
- Posts
- 1,097
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 0/26
Hey thanks voor de links en info

Dat van design patterns weet ik, het probleem is, in theorie is het allemaal mooi. Maar hoe het er in realiteit aan toe gaat, dat leer je pas denk ik als je echt gaat werken. Toch bedankt voor de heads up !
Heeft er iemand toevallig kennis van een tile-based game programming?Deep in the heart where the mysteries emerge.no votes
-
09-03-2012, 16:40 #7Approved 9liver
- Registered
- 17/01/05
- Location
- Dilbeek
- Posts
- 1,954
- iTrader
- 48 (93%)
- Mentioned
- 2 Post(s)
Jup, eenvoudigste omtrent een tilebased engine is het volgende:
Array van bepaalde grootte, waarbij je elk vakje gaat opvullen met een afbeelding, om het heel eenvoudig te stellen. Altijd leuk en handig om een dynamische mapeditor te schrijven dan, hoef je niet alles hardcoded te doen
Daarover kan je toch genoeg tuts vinden?PSN: slynxehno votes
-
09-03-2012, 19:39 #8Member
- Registered
- 17/07/02
- Location
- Wilrijk
- Posts
- 1,994
- iTrader
- 2 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 9/16
no votes
-
10-03-2012, 12:25 #9no votes
-
19-03-2012, 22:26 #10Member
- Registered
- 26/06/11
- Location
- Zeebrugge
- Posts
- 1,097
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 0/26
JS en Html5/CSS3 engine maken is niet simpel tbh

In xna is het me gelukt op gwne tile engine te maken, ik ga er nu proberen een isometric tile engine van te maken
En mss keer proberen om zoiets in java te maken.
Heb niet genoeg verstand van JS tbh... JS OO dat bestaat niet, laat staan dat ge heel uw backend op js laat draaien
Deep in the heart where the mysteries emerge.no votes
-
19-03-2012, 23:07 #11Approved 9liver
- Registered
- 18/01/04
- Location
- Melle
- Posts
- 10,535
- iTrader
- 56 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 27/102
“In terms of how we evaluate schooling, everything is about working by yourself. If you work with someone else, it’s called cheating. Once you get out in the real world, everything you do involves working with other people.”
PSN: Cycloon - Final Fantasy XIV: A realm reborn characterno votes
-
20-03-2012, 00:17 #12Member
- Registered
- 17/07/02
- Location
- Wilrijk
- Posts
- 1,994
- iTrader
- 2 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 9/16
OO : Overrated & Overdesigned -> JS PrototypingHeb niet genoeg verstand van JS tbh... JS OO dat bestaat niet, laat staan dat ge heel uw backend op js laat draaien
heel uw backend op js: Node.js + socket.iono votes
-
20-03-2012, 02:37 #13no votes
-
20-03-2012, 09:42 #14Member
- Registered
- 17/07/02
- Location
- Wilrijk
- Posts
- 1,994
- iTrader
- 2 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 9/16
Als iedereen precies denkt dat OO de enigste "juiste" manier van programmeren is (en dan nog liefst met veel inheritance en design patterns) en als ze nog niet gehoord hebben van dingen zoals memoization, currying of monads, dan is OO idd overratedoo overrated noemen is een straffe uitspraakno votes
-
20-03-2012, 10:16 #15Member
- Registered
- 26/06/11
- Location
- Zeebrugge
- Posts
- 1,097
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 0/26
no votes


