I have never made a game before, but have been interested for a while, but i have no idea where to start.
could someone recommend some software on where to start, and how to actually program a game.
Thanks
~Matt

Dani AI

Generated

A compact, practical starting plan that ties the advice from , , and into something you can follow step‑by‑step.

Start small and ship something playable

  • Pick one simple mechanic and limit scope to one screen or one rule. Write a one‑page goal: what the player does, how they win, and what makes it fun.
  • Prototype quickly with placeholder art (boxes and text). Focus on the game loop: read input, update game state, draw frame, give immediate feedback for player actions.
  • Iterate in short cycles: make a vertical slice (one complete, tiny experience) before adding features.

A short 8‑week workflow (example)

  • Week 1: plan and learn basic programming concepts relevant to games.
  • Week 2–3: wire input, state update, and simple on‑screen drawing.
  • Week 4: add collision/interaction and scoring.
  • Week 5: add simple audio and UI.
  • Week 6: polish controls and tweak feel.
  • Week 7: optimise obvious slow spots and fix bugs.
  • Week 8: package a build and get feedback.

Common rookie pitfalls and quick fixes

  • Scope creep: cut features until core mechanic is fun.
  • No visible output: draw a single static shape to confirm rendering works, then add movement.
  • Unresponsive controls: ensure input handling runs every frame and isn’t blocked by long operations.
  • Physics jitter: decouple update rate from rendering; use a stable timestep.
  • Never finishing: force a deadline (try a short event or personal “mini‑jam”).

Next practical steps

  • Use source control from the start, keep iterations small, and collect playtest notes. Join a short game jam or port a tiny idea to completion to learn the full pipeline (assets, builds, QA). Keep learning maths and graphics incrementally while building, not as a blocker—practical experience will make the theory stick.

Recommended Answers

All 4 Replies

I also have a keen interest in game designing. I would suggest you to learn graphics under c if you know C language. Its very easy if you know C language, I myself learned it with help of a book "Graphics under C by Yashwant Karnetkar" . I have tried some simple games like snake xenia , bricks, packman and learned a lot. Try learning this language I'm sure you will find it interesting.

You should learn a programming language first. I suggest C or C++. You should buy some books on those programming languages and check out http://www.gamedev.net
They have a lot of good stuff for beginners to read.

I suggest that you start reading a bit about computer graphics, start off with OpenGL graphics pipeline to get the different aspects of what happens in you PC and then pick a specific programming language (I use C/C++), there are many different game studios you may use (like XNA...) but if you want you can start off with OpenGL, it is nice and very useful and then when you're really acquainted with graphics, start by creating some animations to lead you to a final game design.

I've been studying games at uni for the past 2 years, and if you want to do any graphics programming (especially 3D graphics), I would highly recommend learning some of the maths first. I'd focus on geometry, vectors, matrices, and their application to 3D graphics/physics. This will make learning the graphics APIs and programming a lot more straight forward.

If you want to jump in the deep end and want a really good reference book, I highly recommend "Introduction to 3D Game Programming with DirectX 9.0c - A Shader Approach" by Frank D Luna. It was our prescribed text for learning shader programming, but it has a little bit on maths and programming that will at least point you in the right direction if it's not enough. Obviously it's DirectX, so Windows only.

Having said all this, everyone (including me so far =P) seems to be assuming you want to program fairly "serious" 3D games, which generally means C/C++ with OpenGL or DirectX. If you're learning yourself, you might find it more rewarding and easier to get started with a higher level programming language like C#, Java or Python and program some basic 2D games like tetris or space invaders. As pointed out above, a framework like XNA could be a good place to start. Once you're more comfortable with programming, and basic games concepts, then you can move onto C/C++ and graphics APIs if you feel like it. Learning 3D maths, graphics, and C/C++ all at once could be quite daunting, so starting out small is probably a good idea.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.