How To Program Your Own Breakout Game using Visual C#
4.8 (18 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
3,051 students enrolled
Wishlisted Wishlist

Please confirm that you want to add How To Program Your Own Breakout Game using Visual C# to your Wishlist.

Add to Wishlist

How To Program Your Own Breakout Game using Visual C#

Hone Your C# Skills by Building a Breakout Game Clone Using Winforms and Visual Studio
4.8 (18 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
3,051 students enrolled
Created by Mohammad El-Haj
Last updated 4/2017
English
English
Current price: $10 Original price: $75 Discount: 87% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 2 hours on-demand video
  • 2 Articles
  • 2 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Learn the basics of building a WinForms Application on Windows using C#
  • Build a fully functional Breakout Game Clone as a Windows Application in C#
  • Learn how to build game logic and develop simple games
  • Learn how to draw basic graphics inside Winforms applications
  • Learn how to animate objects on screen
  • Learn how to use timers to mimic game loops
View Curriculum
Requirements
  • Installation of Visual Studio (Recommended: Free Community Edition 2015 or 2017 or any other version)
  • Understanding of Windows environment and applications
  • MUST HAVE Basic knowledge of C# language like writing functions, if conditions and loops
  • MUST HAVE Basic Familiarity with .NET Framework and Winforms
Description

LEARN HOW TO QUICKLY BUILD A BREAKOUT GAME CLONE ON WINDOWS USING VISUAL C# and WinForms

If you want to learn and experience what it takes to build a game on Windows using Visual C# and Winforms then I hope you will find this course as exciting as it is informational.

WHAT YOU ARE GOING TO LEARN:

  • The techniques  you need to build a complete Breakout game clone with Visual C# on Windows
  • Understand how to use WinForms and how to create desktop applications using C#
  • How to draw graphics inside Winforms
  • How to use timers to mimic game loops
  • How to play sounds
  • How to embed images and sounds as resources inside your application
  • How to handle mouse and keyboard events
  • How to load images and display images using WinForms

You have 30-day money back guarantee from Udemy, so there is nothing to lose! I made my best efforts to provide high quality content and to make this both useful and fun to watch.

Let’s get started today! Enroll now!

WHAT'S IN THE COURSE?

  • Complete Breakout Project in C# on Windows
  • Understand how to write efficient C# code 
  • Learn how Windows applications work
  • Full source code of the project we will build
  • All game assets used in the game are included for free

COURSE REQUIREMENTS:

  • Basic knowledge of C# (or any similar language like C/C++, Java....etc) 
  • Basic understanding of loops, functions, variables and if conditions...
  • Windows 7 or newer
  • Visual Studio installation – Visual Studio 2015 Community Edition (Recommended) or Newer

ENROLL TODAY TO START BUILDING YOUR OWN BREAKOUT GAME AND HAVE FUN PLAYING IT

Who is the target audience?
  • This course is an easy step by step instructions to build a simple Windows application in C#
  • Anyone with some basic knowledge on Programming
Students Who Viewed This Course Also Viewed
Curriculum For This Course
23 Lectures
02:09:40
+
Breakout Game using Visual C# and Winforms
23 Lectures 02:09:41

In this lecture, we will go over the project we are going to build as part of this course so that you get an overview and high level picture of the course and steps involved.

Preview 02:32


Download Game Assets (REQUIRED)
00:44

Download The Source Files (OPTIONAL)
00:50

In this video, we will create our game project as a winforms application using Visual Studio

Preview 05:39

In this video, we will add the background image to our game

Preview 03:40

In this video, we will add the game paddle to our game.

Adding the Game Paddle
04:02

In this video, we will add the code to move the game paddle with the mouse

Preview 08:20

In this video, we will add the game ball to our game and also move it with the mouse like we did with the game paddle

Adding the Game Ball
04:54

In this video, we will learn how to use a timer to mimic the game loop and move the ball using the timer

Animating the Game Ball
10:02

In this video, we will learn how to use a simple technique to write collision code between ball and game paddle

Detecting collision with game paddle
05:47

In this video, we will learn a new way to add game blocks to the game using ImageList control. We will also learn how to handle form paint event and how to draw on our form using Graphics object

Adding the Game Blocks
06:54

In this video, we will learn how to randomly create and draw blocks on our game form

Drawing Blocks Using Graphics
09:49

In this video, we will learn how to detect collision using math to calculate area of collision to translate ball location into row, column inside the blocks array, which is much better performance than doing two loops, which is very slow: O(n^2)

Detecting Ball Collision With Blocks - Part One
10:18

In this video, we will complete the collision logic inside the game timer and remove the temporary mouse click code from part one

Detecting Ball Collision With Blocks - Part Two
08:16

In this video, we will add the game menu user interface (UI) to our game and learn how to use the panel control, label and button controls

Adding the Game Menu - Part One
07:43

In this video, we will finish the code to hide/show menu and pause / un-pause our game


Adding the Game Menu - Part Two
05:41

In this video, we will write the code to handle the menu buttons for new game, resume and quit game

Implementing Menu Commands
07:40

In this video, we will add the game score to our game and learn how to increase the ball speed when it hits the stone blocks

Adding Game Score
07:02

In this video, we will learn how to animate a count down timer and how to use sleep and DoEvents in Winforms

Finishing Touches - Part One
04:39

In this video, we will add the code to animate game over and also implement "Level Complete" logic

Finishing Touches - Part Two
05:53

In this video, we will learn how to embed sounds as resources in our project and how to play sounds using .WaV sound files

Adding Sounds to our game!
07:11

Congratulations for making it all the way to the end! I hope you enjoy playing your own game and show it off to friends and family

Congratulations!
00:44

If you try to play more than one game in a row. For example, try playing 3 or 4 games while you let the ball hit the stone blocks, you will notice that the ball accelerates faster and faster even after you start a new game! How can you fix the code such that ball speed doesn't keep on increasing between games?

How to fix ball speed?
1 question
About the Instructor
Mohammad El-Haj
4.5 Average rating
446 Reviews
17,691 Students
4 Courses
Senior Software Design Engineer / Freelancer / Consultant

Hi there!

My name is Mohammad and I have a degree in computer sciences and have been working as a professional software engineer since 1995. I wrote my first program in GW-BASIC when I was 14 years old and since then I knew that I wanna grow up to become a programmer as it is the love and passion of my life!

I also started teaching Visual C/C++ and Visual Basic back in 1997 and that is when I learned how much I enjoy teaching and helping others!

I lived in Seattle for 17 years to work for Microsoft so I can learn from the best in the industry!  I spent 9 years at Microsoft as a senior software engineer and then became curious to try out other companies in USA so I can keep on growing and learning...

Over 20 years of my career, I worked with many companies from startups to medium size companies like Citrix and to big companies like Microsoft. During that time, I learned so many languages and technologies from Visual Basic, C/C++, Win32, ATL, COM, Python, Java, Javascript, C# and .NET and many more. I built Windows applications, mobile applications, built some websites and built games using Unity and many other tools. I like to share my experience and help others become professional developers as well.

I mentored, lead and managed many developers in my career and successfully helped ship many products including V 1.0 products like Microsoft Office Communicator ( aka Lync or Skype for Business). When I found out about Udemy, I was immediately hooked as a student, but I also wanted to pursue my passion as an instructor as I know that I enjoy teaching and helping others and I think I can make the learning experience fun and easy :)

As of 2017, I moved to live in CA and decided to be working full-time on creating courses as well as building some cool apps and games in my free time!

Looking forward to getting to e-meet and know everyone on Udemy!

Yours,

-Mohammad.