Difference between revisions of "Hardware 3D Series (C++ DirectX Graphics)"
From Chilipedia
Line 120: | Line 120: | ||
|- style="background-color:#333;color:#c1c1c1;" | |- style="background-color:#333;color:#c1c1c1;" | ||
| style="border:1px solid grey;padding:8px;" colspan="4" | {{#lsth:Hardware 3D (C++ DirectX Graphics) Tutorial 15}} | | style="border:1px solid grey;padding:8px;" colspan="4" | {{#lsth:Hardware 3D (C++ DirectX Graphics) Tutorial 15}} | ||
+ | |- style="border:1px solid grey;background-color:#667;color:#c1c1c1;text-align:center;" | ||
+ | | style="border:1px solid grey;"|15 | ||
+ | | style="border:1px solid grey;text-align:left;"|[[Hardware 3D (C++ DirectX Graphics) Tutorial 16|Hardware 3D [First Triangle]]] | ||
+ | | style="border:1px solid grey;"|March 9, 2019 | ||
+ | | style="border:1px solid grey;"|31:43+ | ||
+ | |- style="background-color:#333;color:#c1c1c1;" | ||
+ | | style="border:1px solid grey;padding:8px;" colspan="4" | {{#lsth:Hardware 3D (C++ DirectX Graphics) Tutorial 16}} | ||
|} | |} |
Revision as of 23:56, 9 March 2019
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 7, 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.
| |||
15 | Hardware 3D [First Triangle] | March 9, 2019 | 31:43+ |
Who knew it took so much goddamn code to draw a single freaking triangle? |