Hardware 3D Series (C++ DirectX Graphics)

From Chilipedia
Revision as of 00:04, 10 March 2019 by Chili (Talk | contribs)

Jump to: navigation, search

The Hardware 3D series teaches the Direct3D 11 API and HLSL (High Level Shader Language). This includes basic instruction in the Windows API for the purposes of creating a window and processing input messages. The goal of this seriesis to give the student the skills necessary to create a basic 3D engine in Direct3D in C++ from scratch. This series builds upon the concepts introduced in previous series.

List of Tutorials

Tutorial Number Title Release Date Runtime
0 Hardware 3D [Introduction] December 16, 2018 7:48
This video talks about the course syllabus for the Hardware 3D 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, it's okay to just come along for the ride if you interested; you'll learn something at least. But if you decide you wanna dig deep and master the material, check out the links on this page for my C++ series and the 3D Fundamentals series.
1 Hardware 3D [WinMain] December 20, 2018 10:49
To start of our majickal journey of bullshit, we create a fresh, empty Visual Studio solution, configure that fucker to our liking, and write our Windows entry point. Also, some talking about how Windows do.
2 Hardware 3D [Window Creation] December 22, 2018 18:42
Registering a window class and creating our first window. Popping that MSDN cherry too.
3 Hardware 3D [Message Loop / WndProc] December 27, 2018 17:18
Windows message pump, window procedure, and event-driven programming in general. Getting messages, dispatching those bad boys, and processing them.
4 Hardware 3D [Windows Messages] December 30, 2018 13:30
We set out on an expedition into WM_LAND, surveying what messages are sent to our window and trying our hand at handling some keyboard messages.
5 Hardware 3D [WM_CHAR / Mouse] January 5, 2019 10:28
Concluding our exploration of window message bullshits with WM_CHAR and mouse messages.
6 Hardware 3D [Window Framework] January 11, 2019 28:14
In this video I go over the construction of our Window class framework. Of special interest is the mechanism by which a member function is hooked into the Windows message handling system via a static thunking function.
7 Hardware 3D [Error Handling / Custom Icons] January 18, 2019 25:18
You gotta check your goddamn error codes. Also, adding custom icons for your apps is sexy shit.
8 Hardware 3D [Keyboard / WM_SYSKEYDOWN] January 26, 2019 19:05
A nice little component to encapsulate access to the keyboard input.
9 Hardware 3D [Mouse / Mouse Capture] January 31, 2019 18:05
A nice little component to encapsulate access to the mouse input.
10 Hardware 3D [App class / PeekMessage] February 3, 2019 11:47
We create a small App class which will act as the top level of our application object, owning the main window and top level game constructs.
11 Hardware 3D [COM (Component Object Model)] February 8, 2019 37:05
Direct3D 11 is mostly interfaced with as a collection of COM (Component Object Model) objects. In this tutorial we learn about the fundamental concepts and techniques of Microsoft COM.
12 Hardware 3D [D3D Architecture / Swap Chain] February 16, 2019 17:45
Before diving straight into the Direct3D 11 code, we take a video and look at the overall object architecture of D3D, the process of initializing the core objects, and some specific concepts such as the swap chain and feature level vs. API version.
13 Hardware 3D [Device Init / Fill Screen / Present] February 22, 2019 19:06
In this video we create the mother of all D3D11 objects--the device. We also learn how to present the backbuffer (flip/swap) and how to fill the screen with a solid color, and we create a nifty little class Graphics to hold all this bullshit.
14 Hardware 3D [Debug Layer Diagnostics] March 2, 2019 17:42
Error reporting and rich diagnostics. These are what separate a professional engineer's approach to tackling a new API from the finger-up-butting of an amateur.
15 Hardware 3D [ComPtr Smart Pointer] March 6, 2019 10:50
Smart pointers make everything better. There is a smart pointer for COM interfaces called ComPtr. We are going to use the fuck out of this beautiful bastard.
16 Hardware 3D [First Triangle] March 9, 2019 31:43+
Who knew it took so much goddamn code to draw a single freaking triangle?