In this article, you will see a few ideas on what you can build quickly to get some action on the screen. Simply put, you should use these ideas for the on-screen work after your idea for the entire story is ready.
For games that require heavy processing, be it from Graphics or something else, you need a low-level language. In C++, you have more control over memory usage and other facets of the execution. It means that you also have more work to do to keep the final software stable. You do not need to think about these things in higher-level languages, memory allocation, and number precision. However, the result is that all data has to be seen as needing a lot of resources. You end up slow execution that way.
In many applications, development time is more important than the final performance, so the best choice is higher-level programs.
Styles of games
You have many choices in the style of game to build. Since you have chosen to use C++, you probably want a lot of performance. Don’t rush into that decision though, a game that requires more brains than brawn can be equally exhilarating. Here are a few styles to consider.
- Platform running – The traditional jumping running, probably shooting at something. It can be in 2D as well, but we are not seeking that now.
- FPS – First Person Shooter
- Collecting – Dragons&Dungeons
- Precision moves – balancing a surface
- Learning-based games – mathematics
- Steel ball rolling on a tilting surface
Many games can be simulations of real games. One fun game is a labyrinth style where you guide a ball by tilting the surface is on. This game can be varied in many ways. You can have many tracks at different levels. You can also transform the game into something less realistic.
An excellent library to learn to help you make this game is Torque3D.
Ice block jumping
Create a young person who needs to save his dog/friend/sister from drowning. To achieve this, he needs to jump across the lake to the other side to pick up a life preserver ring. He then needs to come back over the ice blocks to reach the needy person.
Precision base jumping
It is just thrilling seeking, start the game on top of a tall cliff and create a point system for the flight down. You must give many extra points for opening the parachute late.
An excellent choice for this job is the Unity Game Engine; the project is closed source but free.
Quantum mechanics Challenge
Make the game act both like the real world and the Quantum world. The more the player progresses, the more quantum effects you throw into the game. It will require a lot of mathematics, so get learning.You can use the Oxygen Framework for this game.
One consideration is if you want to use a lot of graphics or a more straightforward look. A good game needs to have challenges for the player to want to continue. The gameplay must continue to inspire throughout the game. Tetris is a great game, to a point. If you can come up with a game that engages like that simply because it captivates, then you do not need much graphics. If you use graphics, create compelling characters. Like writing a book, you need to have characters that can drive a story forward just by being themselves, so to speak. Here are a few ideas from another web site.
From Canada, old but still useful resources.
This site has many extended snippets to help you out. The last one has code you can read and use to learn. You can also start there to see where you can go with your code.
If you feel more comfortable having someone to share your struggles with, find a few communities. The Unity3D group is active, in case you opt for that engine. You can also discuss external tools there, like Blender, Inkscape, and others.
The indie gamer Forum has many forums. You can discuss all aspects of game design, development, and even business. You can also put ads for paid work or answer to ads.
To come up with gaming ideas that will keep both you and the gamer engaged is a task worth a lot of effort. Use many sources, including communities, collect old ideas then stop. Sit down and reshape the concept from your head, put a specific time, and amount of time away for forming the idea. When the time is up, you start deciding on the basics of your idea. Get started coding; you may need to start from scratch a few times. That is OK. As long as you learn from each start attempt, you are moving forward.