Difference between revisions of "Intermediate C++ Game Programming Series"
From Chilipedia
(→List of Tutorials) |
(→List of Tutorials) |
||
Line 95: | Line 95: | ||
|- 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 11}} | | style="border:1px solid grey;padding:8px;" colspan="4" | {{#lsth:Intermediate C++ Game Programming Tutorial 11}} | ||
+ | |- style="border:1px solid grey;background-color:#667;color:#c1c1c1;text-align:center;" | ||
+ | | style="border:1px solid grey;"|12 | ||
+ | | style="border:1px solid grey;text-align:left;"|[[Intermediate C++ Game Programming Tutorial 12|Intermediate C++ Game Programming [Animated Sprite Character]]] | ||
+ | | style="border:1px solid grey;"|September 8, 2017 | ||
+ | | style="border:1px solid grey;"|25:40 | ||
+ | |- style="background-color:#333;color:#c1c1c1;" | ||
+ | | style="border:1px solid grey;padding:8px;" colspan="4" | {{#lsth:Intermediate C++ Game Programming Tutorial 12}} | ||
|} | |} |
Revision as of 00:46, 8 September 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 int s and float s and bool s 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. | |||
12 | Intermediate C++ Game Programming [Animated Sprite Character] | September 8, 2017 | 25:40 |
In this tutorial Chili shows us an example of how to create a class for an animated sprite, and how to use a collection of these animated sprites to create a walking character class. |