Where can I learn about computer game development from scratch (c/c++/java)? any books or free online cources?

I would really like to build my own simple 2d graphical game from scartch. Literally no libraries,extentions or IDEs.

Whenever I use game making for serouis games I use Unity3D/Gamemaker cause it takes less time to build a game (I have experince using them).

But I would like to learn the theory behind these engines as well as applying it to a simple game.

So what books/websites do you recommend that accomplish this?

2 Answers

  • Anonymous
    6 years ago
    Favorite Answer

    "Literally no libraries,extentions or IDEs."

    "any books or free online sources"


    because if you don't use any libraries or extensions

    (alegro, sfml, glwf, pygame, leadwerks, CryEngine, sdl2, unreal engine)

    then you're going to have to learn OpenGL and DirectX and LOTS of math and lots of algorithms (A* and pathing)

    and there isn't one place where you can learn all that for free

    the cheapest place where you'll lean all that is here


    go to that page and scroll down

    you'll get all that for $49

    C++ Programming, 3D Graphics and Game Engine Programming, Mathematics, Artificial Intelligence

    you get everything on the other tabs too

    game art and animation, unity, and so on

    the guy who wrote the material and answers forum questions is


    so you can see he knows his stuff

    yeah, you could search the internet for free OpenGL tutorials and A* tutorials --

    I know there are plenty out there, but I think it's just easier to get everything in one place

    but the reason so many people use libraries really is because doing all that stuff from scratch is hard

    they have entire university courses dedicated to doing it from scratch

    and these courses have prerequisites in programming and math

    so if you really have a LOT of time and are really determined and REALLY want to learn the basics then I suggest going with gameinstitute

    otherwise I suggest learning to use various libraries

    one library that will allow you to also do some stuff from scratch is pygame

    yeah, I know you said c/c++/java

    but you can learn a lot of the deep basics from python an pygame and then apply that knowledge to more difficult languages (c/c++/java )

    Python is a very powerful language

    it is used by MIT in their first few programming courses

    and Python is used by many companies (even EVE Online)

    see what they have to say about Python here


    here's a FREE online book for game programming with Python and Pygame

    Program Arcade Games With Python And Pygame


    The book was written and is used by a professor for his Introduction to Programming class.

    Since it is an introduction, it assumes no experience. So it starts off at the very beginning.

    here's a video of a game one of his student's made



    Youtube thumbnail

    nothing too fancy, but pretty impressive for their first game

    and there's more examples on a playlist on that youtube channel

    the Python book is full of videos and code and tells you how to install and get started with Python

    there is also 3 hour tutorial video on the pygame home page




    Youtube thumbnail

    (but starting with the book is easier)

    and when you're ready to move onto more advanced programming topics ...

    Here's another FREE online book that uses Python.

    Problem Solving with Algorithms and Data Structures


    But this book is advanced, it's the kind of stuff computer science majors learn in their 2nd semester or 2nd year of school.

    So it will teach you all about the algorithms you need to know to make your game work efficiently

    you should also do this series of Python courses from Rice University and coursera


    they ARE game related, but they do use libraries

    the courses are free, but you can pay to get a "verified certificate" if you want

    but that means doing the quizzes with a web cam to "verify" you are the one taking them

    for the free version just click on the course name and select "Join for Free"

    (the courses are offered every couple of months though, so if you don't do it now it will be offered again soon)

  • Anonymous
    6 years ago

    the website Gamedev has some tutorrials , check it out

Still have questions? Get your answers by asking now.