This post is a portion of Part 5 in my on going series about 2D Game Development using the Allegro 5 library. These posts are in course order. You can see all of the posts in this course by clicking the “2D Game Development” button at the top of this site.
- 5.0 – Our First Game
- 5.1 – Our First Game: The Player
- 5.2 – Our First Game: Timing and Movement
- 5.3 – Our First Game: The Projectiles
- 5.4 – Our First Game: The Enemies
- 5.5 – Our First Game: Collision Detection
- 5.6 – Our First Game: Game Logic
- 5.7 – Our First Game: Conclusion
Just a brief conversation about where we have been, and where we can go with this.
Coming up next, Part 6!
You make really good tutorials and you have the skill to transfer information easy to other people.
Thank you for doing this mike.
Thank you for the kind words.
This shit is awesome.
I am inclined to agree with you 🙂
Your videos are very informative. I have learned a lot from watching these. Thank you!
Do you plan on doing any kind of multiplayer (internet) functionality tutorials? From what you said before, it isn’t possible for networking in allegro but perhaps on a different library other than allegro?
P.S. You must like the word “superfluous”, don’t you? You use it way too much!!
Yes! I do like superfluous. It just rolls of the tongue. Anyway, request for multiplayer are very common. When I finish this series, I may create a shooter demo or something that involves networking
It is really nice to have this kind of tutorials , i have been goggling since 5 months before. Finally i get you
Hope you will add some more advanced tutorials like slot machines in the future .
You are awesome and i will continue learning from your videos
thaks a lot!
Glad you like it
Do we have a test now? 🙂
What do you mean?
Thanks for the awesome tutorials,
any chance you could briefly describe how to implement collision detection for a maze-type game (i.e. stop player from passing through walls) ???
There are many ways to do what you want to do. You can use a tile array, or use a mask bitmap. Depending on the size of the maze, I prefer the mask bitmap for its ease of use. What you do is create your maze image in a graphical tool. Then, create a completely black and white version of it (no gray, just black and white). Then, you render your pretty image to the screen, but check the black and white image for color. You can use something like al_get_pixel(x, y) to get the color of the pixel at that spot. Using that, you can determine if you have hit a wall (black) or not (white). Play around with that a bit. I will be covering that more in detail later when I cover backgrounds in my tutorials.
yeah, it works…
I love your tutorial mike, since i’ve been looking for projects of allegro, but end up finding only those of older version project. So lucky to find yours, thanks… From China…
A simple thank you for the series. You do good work and I appreciate you taking time to help others like myself.
Glad you like it.
Thank you Mike! Your tutorials are great. I’ve learned so much things from they. And I’m keep learning, its just a half of them! I’ve search all the internet for tutorials about allegro from scratch to up, and find nothing. And then i took an arrow in the kne.. no wait! And then i find that amazing tutorials. Thank to you for inspiring us! (Sorry about my english.)
I’ve spent a lot of time looking for tutorials that could actually help me be on my in learning 2D Game Development, and I would say I’m very happy I found this. Thanks Mike!
*be on my way
I tried using mouse inputs like you suggested instead of keyboard inputs and it works like a charm! Thanks Mike!
I really enjoyed these videos. Coming from Java, I found C++ a million times better. Very interested in more!
Love your videos!, you helped me a lot in understanding the basics of making game, which was crucial for me, thanks again, and keep up the awesome good!
Just want to thank you so much for doing these great tutorials. I have been searching the web for months and finally found you. Being a complete noob programmer your videos have been the perfect way to get in to game development, and now I am completely hooked. Cant wait to watch the rest of the series, and then jump in to your vidoes on the object oriented approach. Thank you very much Mike!
Hey Mike, great tutorials! I have one question though.I’ve recently done a pong game as a school project and it runs fine inside VSC++,but I get a debug error as I try to open the executable without the VS.Any ideas?
Hello, this is a fantastic tutorial.
I was wondering whether you could use the collision detection system and mouse input to create some kind of button for a start menu.
Thank again for a great tutorial
Sure you can. There may be better ways just by detecting mouse position. It all depends on what you are going for.
I just want to say, you’re awesome at coding and making it easy to understand. All of the teachers I’ve had, do not speak or even think in english, instead they do it in code, and you’re sitting there trying to learn how to learn to code, and decipher what they’re saying at the same time. It’s rare to find someone that can code, that can talk to people in a way that’s understood by everyone. Thanks.
You’re much better than my informatics teacher ;).
I have bought some large books on programming with C & C++ over the years, especially back in the mid 90’s. It stopped being fun when I got a job as a PABX software programmer, i lost the passion for it and stopped. Now 15 years on the thirst to make games has returned and your allegro 5 tutorial is driving me. You make it so easy to understand, this is the best game programming tutorial I ever seen, fullstop the end… Thanks Mike..
awesome. Glad you like them
I, like everyone else wanted to thank you for these awesome tutorials. I initially started these because I was too lazy to read allegro manual and just wanted someone to walk me through the crucial parts. But your tutorials are so well told and well arranged that I simply enjoy watching or reading them. You also say so many stuff about general game design philosophy (such as the timer event, which I would probably never thought about) that I now feel that I definitely have to go through all the tutorials including OOP ones. So really, thanks a million.
You, sir, are amazing. You inspired me to do amazing stuff with these videos. I’m glad tutors (and people) like you exist.
Greetings from Greece.
Thank you so much. This series has helped me a lot. You have an uncanny way with words that I can’t quite fathom. The concepts just flow into my brain and stick there. Oh and by the way, that was my awkward way of complimenting you.
Awesome. I’m really glad you like it.
Thank you Mike! Your videos are great! They’re very well explained! I guess everyone like it. There’s nothing bad to say about it! Thankyou you again Mike!
Will you help me with a problem in a little game I was making?
Amazing tutorials so far. Hats off to you!
Thanks Mike, this was awesome, everything works great!
How can I build a release version and run it on another windows machine that doesn’t have Allegro, or VS2010, installed? I get “fatal error LNK1120: 24 unresolved externals” when I try to release build it 🙁
How would I add a Main menu and a Restart button?
for the main menu iam not too sure how to proceed, it would be jsut a screen with [S] – Start Game and [Esc] to quit and under that, the movements. though How would i start on that screen?
I added R in my keyevents and when i press it isGameOver is set to false but how would i make it restart? a while loop, though that would be a messy way to do it.
You have made so many lives easier by this superb tutorial. You really are a perfect mentor for all those people stuck out there amidst nowhere. Thank you Mike!