Difference between revisions of "Intermediate C++ Game Programming Series"

From Chilipedia
Jump to: navigation, search
(List of Tutorials)
(List of Tutorials)
Line 88: Line 88:
 
|- style="background-color:#333;color:#c1c1c1;"
 
|- style="background-color:#333;color:#c1c1c1;"
 
| style="border:1px solid grey;padding:8px;" colspan="4" | {{#lsth:Intermediate C++ Game Programming Tutorial 10}}
 
| style="border:1px solid grey;padding:8px;" colspan="4" | {{#lsth:Intermediate C++ Game Programming Tutorial 10}}
 +
|- style="border:1px solid grey;background-color:#667;color:#c1c1c1;text-align:center;"
 +
| style="border:1px solid grey;"|11
 +
| style="border:1px solid grey;text-align:left;"|[[Intermediate C++ Game Programming Tutorial 11|Intermediate C++ Game Programming [Sprite Clipping / Transparency / Subregions]]]
 +
| style="border:1px solid grey;"|August 26, 2017
 +
| style="border:1px solid grey;"|19:48
 +
|- style="background-color:#333;color:#c1c1c1;"
 +
| style="border:1px solid grey;padding:8px;" colspan="4" | {{#lsth:Intermediate C++ Game Programming Tutorial 11}}
 
|}
 
|}

Revision as of 22:04, 26 August 2017

The intermediate series picks up where the Beginner C++ Game Programming Series left off. If you understand the main concepts of procedural programming and the basics of OOP, you can probably skip that series and start here. In this series, we start by covering some low-level topics like pointers, c-strings, basic I/O, and memory management. Then we ascend to a higher plane of existence, and explore the modern C++ way of handling these problems, learning about standard containers, streams, and algorithms. We will also be covering some more advanced OOP concepts like inheritance and polymorphism. Games will be made.

Topics Covered

Coming soon!

List of Tutorials

Tutorial Number Title Release Date Runtime
0 Intermediate C++ Game Programming [Introduction] April 29, 2017 8:25
This video talks about the course syllabus for the Intermediate C++ tutorial series (the shit we gonna learn) and the prerequisites for following this series (what you need to know, and what you need to have). Use it to get an idea of what this series is about, and whether you have what it takes to follow along. If you don't know this shit, check out the links below for my Beginner C++ series. Check out the list of topics learned in Beginner for more details on what you need to know to follow Intermediate.
1 Intermediate C++ Game Programming [Memory/Binary/Variables] May 5, 2017 43:35
We've been using ints and floats and bools this whole time, but have you ever wondered about a day in the life of a variable? In this video, we find that shit out, and so much more. We also learn about the cousins of int and float, adding to our arsenal of basic data types we can use in our programs. What's the endgame you ask? This stuff is gonna help us understand pointers and strings, and it's just interesting shit.
2 Intermediate C++ Game Programming [Pointers] May 13, 2017 29:56+
In this two-part tutorial we learn all about pointers and pointer-related bullshits. Part one focuses on the basics--the most common pointer operations and the basic underlying mechanisms. In part two, we take a look at some less commonly-used but still important pointer operations (pointer arithmetic), as well as some other concepts related to pointers. This tutorial introduces a lot of new concepts and features, but is light on practical examples. In the following tutorials we will get more hands-on practice with pointers, but also make sure to experiment with them on your own after finishing Tutorial 2.
3 Intermediate C++ Game Programming [C-strings] May 27, 2017 39:54
In this tutorial we start from the barest bone starting point. Using only two simple functions: _putch() to output a character onto the console and _getch() to read a key from the keyboard, we build up a concept and theory of string storage, basic text input and output, and parsing operations. It might seem like reinventing the wheel, but you know what they say. The squeaky wheel gets() the cheese. Seriously though, this shit is gonna give us a solid foundation of low-level understanding on which we can later build up a fortress of high-level C++ awesomeness.
4 Intermediate C++ Game Programming [File IO] June 6, 2017 32:41
In this tutorial we tackle the topic of file IO using basic input output functions. We also learn about the basic concept of a stream, learn the difference between binary mode and text mode, and Chili even sneaks in a dank Cypress Hill reference.
5 Intermediate C++ Game Programming [Dynamic (Heap) new delete] June 24, 2017 30:31
In this video we learn about dynamic memory allocation / heap allocation / free store allocation / whatever the fuck you wanna call it. What is this shit you ask? Watch the goddamn video! I gotta pack.
6 Intermediate C++ Game Programming [Destructors + SUPER IMPORTANT SHIT] July 15, 2017 49:50
This tutorial is epoch-making; DO NOT SKIP IT. The ostensive main topic for this video is destructors, but that is not where its soul lies. After learning about dtors, we are ready to discuss a matter that is at the heart of C++: RAII. This will form the bridge between low-level memory management, and high level smart objects. We also discuss the important concept of deep copying and the Rule of 3, and related to this, we review the 4 original special member functions. AND there are discussion of a bunch of other random bullshit, like converting construction for example. It's a big video is what I'm tryin' to say here.
7 Intermediate C++ Game Programming [Streams/std::string] July 28, 2017 42:39
We finally ditch our janky makeshift chili:: routines and use some real shit here. Standard streams (std::cin / std::cout / std::fstream) are covered, and then we talk about string manipulation with std::string. We'll also cover some other less well-known dank C++ code memes, so check it out. Note that this video is more of an overview / whirlwind tour; it introduces various techniques and gives examples, but don't expect a detailed or exhaustive treatment here.
8 Intermediate C++ Game Programming [std::vector<>] August 6, 2017 29:20
std::vector<>: the sexiest of the standard containers. What does it have to do with mathematical vectors? Nothing at all. So why didn't they just name it std::dynamic_array<>? Good question, good question. Next question. Seriously though, std::vector<> is the shit and we are going to be using it all the GD time from now on. Get hype.
9 Intermediate C++ Game Programming [Werd Game] August 17, 2017 25:26
We create an addictive little console game that will test both your vocabulary and your deductive powers while we flex our newfound std::muscles.
10 Intermediate C++ Game Programming [Sprite Drawing / Bitmap Loading] August 19, 2017 28:49
The promised day has come. We're finally going to be loading images from bitmap files into memory and drawing them as sprites on the screen. This is where all that stuff we've been learning--data types, pointers, memory management, file access, etc.--is going to pay off bigtime. Also, get fukt massive PutPixel sprite functions; die in a garbage fire.
11 Intermediate C++ Game Programming [Sprite Clipping / Transparency / Subregions] August 26, 2017 19:48
In this tutorial we learn how to draw parts (subregions) of images, we learn how to clip our shit so that it don't go off the screen (or off of any arbitrary rectangle we define in fact), and we learn to draw sprites with transparent pixels.