Question about early development

Started by
3 comments, last by TheChubu 10 years, 7 months ago
My friends and I recently decided to join the game developing business. We are a 3 man team with college-student-level of knowledge in coding (java).
Our first order of business was to choose a working medium, the canvas of our creation... and that's where we hit a crossroad.
We have some level of experience with Game Maker, the game-developing software by YoYo Games. At the time it was a limited program and yet we managed to get quite well made results. The current version of Game Maker seems to be far more advanced than the old one we were working with, offering bigger possibilities and options. We figured working with a program that we are semi-familiar with, as well as being aimed especially for game development will make our job easier and will be a good place to start.
On the other side of the coin, there is the Lightweight Java Game Library, or LWJGL. Obviously it is possible for us to study how to use this library, which is also aimed for game development. It will allow us a greater control, and in turn a new range of possibilities. But it is, simply put, harder and takes longer to learn.
We figured the best advice will come from the people who already experienced this thought process. What would you recommend? Is it better to start with Game Maker or LWJGL? Are there other more suited options for us?
Thanks smile.png
Advertisement

There is nothing wrong with going with GameMaker if you are comfortable with it and haven't run into any barriers. The only major problem with a system like GameMaker is if you run into something it can't do. For a great many developers, they wont and its a great productivity tool ( I think... Ive never actually used it ). But for those that exceed the limits of such an environment, you are kinda screwed.

As to LWJGL, that is probably a bit too low level. It's more a tool level layer, that other people make game engines over top of. It's a fairly thin layer over OpenGL, OpenAL, etc.

You would probably be better served looking into LibGDX, PlayN or if working in 3D, jMonkeyEngine.

I'd say that for most mobile projects, at least 2d games, GameMaker Studio is great. It is true, that there are some things it can't do, for example supporting some features like vibration on phones. It is also very much meant for 2d games, and though it has some 3d capabilities, it won't be like 3d in Unity for example. But, it does provide many things that are great for 2d games. The new version supports native code compilation, which means that the gml scripted code gets turned into native code for the platform. It also supports multi-platform OpenGLES shaders, which are great for some special effects in 2d, and even work in the 3d as well.

The thing to remember is that whatever tool works best for you is king. And in the case of GameMaker you are going to be well off not only because of how well it works as a tool for the job, but also that you know the tool already. I wouldn't use anything for this, unless I really need better 3d capability or something that GM simply can't/won't support, which really isn't much in the 2d world anymore.



I like and use LWJGL a lot, but if your goal is to actually make a game (as opposed to tinker with low level stuff) then I can't really recommend it for you to start with. It's possible but it will take more time and effort than necessary.

Look at Unity, look at UDK, look at Ogre3d, look at jMonkeyEngine or Ardor3D or Slick2D, look at GameMaker or RPG Maker. LWJGL has no facilities to help you speed up your game development, it's basically a low level graphics/input/sound API wrapper (but a very good one).

LWJGL is as "game oriented" as the APIs it wraps. That means, it isn't game oriented at all. You'll get OpenGL calls, OpenAL calls and OpenCL calls, pretty much a 1 to 1 map to their C counterparts except in the places where Java types get in the way (ie, no unsigned types). All of them aren't really "made for games", they're just apis to control the GPU and/or sound card. You are the one who'll need to come up with the higher abstractions like meshes, scenes, materials, lights, level loading, animations, GUI, and so on.

Give jMonkeyEngine a shot like Seraph said.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

This topic is closed to new replies.

Advertisement