views
Programming Basics
Choose your Language. There are a variety of languages from which programs are made. The language you choose doesn't matter too much, but the most important thing is that you start somewhere. There are many programming languages to choose from, but most go with C++ or Java and they are also the most useful in Game Development. Once you learn one language, it's much easier to learn another.
Find a course. The most effective way (in my opinion) to learn programming/computer science is to take a class! Whether this is a class at your school, or outside of school shouldn't matter. No matter who you are, you can find a programming class that suits you. MIT OpenCourseWare (http://ocw.mit.edu/) has a variety of free classes. If you look around on Google, you'll find a number of other sites that also have free lectures and classes available. You could also have a friend teach you a language, sharing is caring.
Practice. You don't want your first game to be you big, important game. You want a chance to screw up and not care too much about your project. Try to make a simple game. If you learned Java, check out the Swing package. Don't worry too much about this project(s), they should only take up a few weeks of your time. Learn from your mistakes.
Planning
Think of a Game Idea. Try to challenge yourself. That way if you don't achieve all you set out to, you'll still (probably) have a pretty good game left over. Think for a while, don't feel pressured to do this in one sitting. Sit on your idea for a while so you know it is good.
Formalize your Idea. Technical communications is important in any kind of engineering, including software engineering. You don't want to tell someone that you're making an apple and they go and make you audio for a pear. Write up a "Game Design Document". These are used in professional game development, but more importantly, they easily communicate your idea(s) to others. There are many free templates available online.
Recruit Help. You don't have to go at this alone. It's also more fun and exciting in a group. You can't make a custom game engine and manage the project without help. Ask your Friends first before going to strangers or advertising for help, you'd be surprised who would love to get into the game industry.
Development
Research. Look into what you're going to do before you do it. Even when you make an engine from scratch, there are still a number of tools that you could make your engine out of. Look into "OpenGL" if you learned C and "JOGL" if you learned Java. Maybe buy a textbook on OpenGL, "Redbook" is the most famous one, but it is online for free.
Draw Something. Render a primitive or 2D object to get started. Make a 2D triangle, or a cube. Look into "Display Lists" so you can draw many primitive objects.
Make Perspective. There aren't many games where you can't change where you're looking. Make the perspective of your game (First person perspective, top-down, etc.)
Move Around. One step at a time! Except not actually because stepping is actually kind of complicated. Either move everything around the camera or move the camera view port, but they are the same to the processor. Be able to move in all angles, not just along the axis.
Add Textures (Images). That default color will get old after a while, and not many games are used with only solid colors. Splice them into your display list(s).
Add Audio. This makes your game much more interesting and realistic. Perhaps footsteps for when you walk.
Add Lighting. This also adds to the realism. Learn the different kinds of lighting. Use a sphere instead of a cube to make sure the lighting is working. You could put a primitive object where the light should be coming from to debug. Just make sure the light can get out of the box/sphere you put it into.
Add Collision Detection. The biggest thing people notice when you show them an incomplete game engine is the lack of proper collision detection. Make it impossible to walk through the cube. Make it possible to move (in other directions) when you are colliding with the cube.
Add Gravity. Most games have falling things somewhere. Make a floor, and jump around on it.
Completion
Finish Your Game. Don't forget to market it. You may want to enlist a marketer (friend) to help you. Assume your game is going to be a hit so that way you can work towards that. Have Fun!
Manage Other Games. Don't be coy, tell other developers that you made a game engine. You don't have to be the only one to develop with your engine. When you let other people use it, you have the right to some of their royalties, but also you get constructive feedback and perhaps improvements to your engine. Game Engines are valuable and impressive. Did you notice how much those other engines are charging indie developers? (You could be that engine!) Use your engine to get wannabe game developers into the industry!
Good Luck! Start your journey into the booming game industry! Now you can laugh at your friends who said "Unity was easier".
Comments
0 comment