Skip to main content
GameDev.net gamedev.net
🔒 Locked

getting back into game dev

Started by d33ts Nov 20, 2010 at 4:56 PM 11 replies 2k views
Original Post
d33ts
d33ts
I haven't done much game programming in a while, and I'm looking to get back into some basic game development for fun. I'll just start out by giving you my background I guess. I know C++ and Java. A long time ago I learned a bit of SDL and used that to make some fairly simply graphical stuff with C++ - tic tac toe, and an extremely basic myst type thing. I just helped teach a course in Java to some middle schoolers over the summer, so I'm fairly fresh on my Java. During that course I made a version of the Game of Life, again fairly simple (I can upload this if anyone's interested).

So my question is, if I were to want to get into some game development on the side, what should I do?

I definitely want to make a top-down or isometric stealth game that I've had in mind for a while, so this could be either 2D or 3D depending which I go with.

Also really want to make a survival horror game at some point, but I would want it to be 3D, so for something of this scale I would probably shoot for modding an existing game since I definitely do not have the expertise to do any coding in 3D.

For the first game, I was thinking of finding a good set of libraries or game engine to use in 2D, since I really don't feel like spending most of my time reinventing the wheel coding basic graphics/sound/input/whatever when I could just find code online and write the actual game logic. Any recommendations? I would prefer to use java but C++ is fine also.

Also, I've always been curious about the half life 2 sdk - how is it? Is it easy to work with at all?
d33ts
d33ts
Some engines I've found and looked at a bit so far ar:

JGame
Slick
GTGE
JMonkeyEngine


Have you guys worked with any of these?

xytor
xytor
Try Unity. I looked at their website and it seems like a powerful rapid-prototyping tool.
fireside7
fireside7
You might want to check out javagaming.org for more info on java game programming. They have sections on engines, etc. I've only used jpct as a 3d engine, which is quite small and used for more specific project like applets. I think Slick is a pretty good 2d engine but haven't used it. Jmonkey also looks very useful but I haven't gotten around to it, especially the newest version. I would recommend java rather than a scripted engine like Unity because you can extend classes.
zorocke
zorocke
Quote:
Original post by xytor
Try Unity. I looked at their website and it seems like a powerful rapid-prototyping tool.


I would not recommend Unity. Sure it is good for prototyping, but that's it. To me it seemed like a WYSIWYG 3D game creator, although I understand it has powerful scripting capabilities. My latest attempt at using it was a major failure. Coming from a pure coding background, unity can be confusing at first. I'de say it would be best to stick with the other game libraries you suggested if you are looking to stay in 2D. Unity is 3D.

If you are looking to break into 3D... If you use the current engines, 3D is not extremely difficult. I recommend Ogre3D, as the documentation is wonderful for both the engine and it explains many of the 3D terminology. At least take a look at a few of it's tutorials before you make your decision. http://www.ogre3d.org/tikiwiki/Tutorials

Best of luck to you.
toony
toony
if you go for 3d and decide to learn opengl then that will hold you back for some months, depending on how often you sit and study the opengl commands of course.

with 2d you could start relatively fast but if it's the first time for you, it will hold you back again for a while.

i suggest the allegro or SDL 2d game library, allegro being slightly easier to grasp i in a way. they both support 3d on top of them.

2nd choice is to go for a game engine like dark gdk or something similar (i never used any engine for more than a week but since you dont like starting from scratch, go for it).

for 3d i only tried opengl and the guides are not perfect when it comes to describing some vital gl commands, but it's what it is!
Zakwayda
Zakwayda
Quote:
Original post by fireside7
I would recommend java rather than a scripted engine like Unity because you can extend classes.
What do you mean exactly? You can extend classes in Unity.
Quote:
Original post by zorocke
I would not recommend Unity. Sure it is good for prototyping, but that's it.
If it's only good for prototyping, how do you explain all the commercial games made with it?
Quote:
To me it seemed like a WYSIWYG 3D game creator, although I understand it has powerful scripting capabilities.
For any nontrivial Unity-based project, most of your time will be spent coding, not working in the editor.
Quote:
My latest attempt at using it was a major failure. Coming from a pure coding background, unity can be confusing at first.
It sounds like your problem with Unity had more to do with it being a poor fit for you than with any limitations of the engine itself.

I'm not advocating for Unity specifically, but I do question your assessment of it.
zorocke
zorocke
Quote:
Original post by jyk
It sounds like your problem with Unity had more to do with it being a poor fit for you than with any limitations of the engine itself.

I agree this is most likely the case.
fireside7
fireside7
Quote:
What do you mean exactly? You can extend classes in Unity.


I haven't used it that much, but it appears to be more of binding a script to an object from what I looked at. I picked this up from a forum on Unity:

Quote:

Example of extending a class:
class MyForm extends WWWForm {
}

Example of extending an already extended class:
class AnotherForm extends MyForm {
}

Unity 2.x allows creation of MyForm, but does not allow creation of AnotherForm.
Unity 3.0 no longer allows creation of both since all UnityEngine classes have been declared final.



It's based more on a component philosophy, I guess. Like I say, I haven't used it much. I've used the Blender game engine which seemed to work similar and I found it more confining and much harder to keep organized than extending classes.
Zakwayda
Zakwayda
Quote:
I picked this up from a forum on Unity:
Hm, I think you may be misinterpreting that or perhaps just missing the context. There are some classes exposed as part of the Unity API that aren't meant to be extended or derived from, but in general, you can absolutely extend or derive from classes if it suits you.
Quote:
It's based more on a component philosophy, I guess. Like I say, I haven't used it much. I've used the Blender game engine which seemed to work similar and I found it more confining and much harder to keep organized than extending classes.
Well, again, you can in fact extend classes. As for component-based systems, I've never felt confined by them (quite the opposite, actually) or found that they make it difficult to keep things organized, but YMMV of course.
d33ts
d33ts
Quote:
Original post by dantheman3633
So you aren't going to consider to try making a game without an existing engine? It can be rewarding but if you are trying to focus on more of the game-making process instead of being caught in the details, then I can understand why.


Really just don't have the time at the moment to invest into a project and have to worry about the technical details of it, and it'll be much easier/quicker to see results just coding in my spare time using an engine.

I've been looking at some slick tutorials and playing around with it a little, seems pretty good so far.
d33ts
d33ts
Slick definitely seems like exactly what I'm looking for. I downloaded some really barebones code that loads a tile map and a player sprite and allows you to move around, and spent a couple hours modifying it so that the motion was like a platformer and adding a jump, which is much more the kind of coding I'd like to be doing than basic graphics stuff.

One quick question about overall programming practice with small games like the kind I'll be working on - how important is stuff like in these 2 tutorials I found?

http://slick.cokeandcode.com/wiki/doku.php?id=entity_tutorial
http://slick.cokeandcode.com/wiki/doku.php?id=resource_manager_tutorial


as far as organization, if I were to write something on my own, there's no way I would have ended up wriing something like either one of those, but that seems like it would be the way real games would work.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.