Voltar ao ranking

PardCode/CPP-3D-Game-Tutorial-Series

C++youtube.com/playlist

C++ 3D Game Tutorial Series (DirectX) - Learn to code a DirectX 3D Game in C++ from scratch

cppcpp11gamegame-enginegamedevgame-developmentgraphicsgraphics-enginegraphics-programming3d-game3d-graphics3d
Crescimento de estrelas
Estrelas
1.1k
Forks
152
Crescimento semanal
Issues
0
5001k
dez. de 2018jun. de 2021jan. de 2024jul. de 2026
README

C++ 3D Game Tutorial Series

CPP20 Discord channel Patreon YouTube Code

C++ 3D Game Tutorial Series

C++ 3D Game Tutorial Series is a tutorial series designed to help developers of all levels—from novice to expert—take their first steps into game development from scratch using C++. This series will teach you how to create a 3D game sample, starting with creating a window using the Win32 API and progressing to building a game engine that enables the development of a functional 3D game. Specifically, the series covers the development of:

  • DX3D Game Engine (composed by the following sub-systems)
    • DirectX 11 3D Graphics Engine
    • Win32 Windowing System
    • Input System
    • Entity-Component System
  • Game Sample

The aim of this series is to provide developers with the foundational knowledge needed to have full control over game development, starting from low-level systems (such as the Graphics Engine, Input Manager, Entity System etc.) all the way to high-level concepts (e.g. Entities).

This repository contains:

  • The master branch, which contains the source code of the entire project developed in the tutorial series.
  • The DX3D folder, which contains both the public API and the source code of the DX3D engine, that will be implemented and used to create the game sample.
  • The Game folder, which contains the source code of the game sample itself.

It is possible to access the source code of each tutorial by checking the Tags list.

Additionally, the repository includes branches such as AssetsAndLibs, which are related to the previous version of the C++ 3D Game Tutorial Series.

The license of this repository is available here.

Quick Guide to build the 3D Game Sample

Prerequisites:

  • Visual Studio 2022.
  • Windows 10 or later.

Open DirectXGame.sln project, available under the project root folder.
In Visual Studio, press the Local Windows Debugger button available in the toolbar.

Public discussion forum

The Discord Server is the go-to place for news about the tutorial series, discussions on the latest developments, and any questions you may have about the C++ 3D Game Tutorial Series.

Discord channel

Support

This project is offered under the free and permissive MIT license, but it requires financial support to continue its development.
If the C++ 3D Game Tutorial Series has been helpful to you, consider supporting it through Patreon.

Every contribution makes the difference, no matter the amount.
A big thank you to all the patrons who have supported me so far!

Patreon

License

The license for this project is based on the modified MIT License.

This means you are free to use, modify, and distribute the code from this repository. However, there are two conditions you must follow:

  • Include the license text in your product (e.g., in the "About" window of a GUI application or the "About/Credits" section of a 2D/3D video game).
  • Include the license text in all source code files (copy and paste the license text at the top of each source code file you obtain from this repository, even if you have made partial modifications).

If you wish to modify and redistribute the source code files, you may optionally add your own copyright notice alongside the license text, as follows:

...
C++ 3D Game Tutorial Series (https://github.com/PardCode/CPP-3D-Game-Tutorial-Series)
<project name>, <website link or nothing>
  
Copyright (c) 2019-2026, PardCode
Copyright (c) <your years>, <your name>  
...

The license text is available in the LICENSE file.

Repositórios relacionados
practical-tutorials/project-based-learning

Curated list of project-based tutorials

PythonPyPIMIT Licensetutorialproject
274.6k35.4k
CyC2018/CS-Notes

:books: 技术面试必备基础知识、Leetcode、计算机操作系统、计算机网络、系统设计

algorithmleetcode
cyc2018.xyz
184.8k50.8k
fffaraz/awesome-cpp

A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.

MIT Licensecppcppcon
fffaraz.github.io/awesome-cpp/
72.4k8.3k
youngyangyang04/leetcode-master

《代码随想录》LeetCode 刷题攻略:200道经典题目刷题顺序,共60w字的详细图解,视频难点剖析,50余张思维导图,支持C++,Java,Python,Go,JavaScript等多语言版本,从此算法学习不再迷茫!🔥🔥 来看看,你会发现相见恨晚!🚀

Shellleetcodeprogrammer
62k12.3k
azl397985856/leetcode

LeetCode Solutions: A Record of My Problem Solving Journey.( leetcode题解,记录自己的leetcode解题之路。)

JavaScriptnpmOtheralgorithmleetcode
leetcode-solution-leetcode-pp.gitbook.io/leetcode-solution/
55.8k9.4k
WerWolv/ImHex

🔍 A Hex Editor for Reverse Engineers, Programmers and people who value their retinas when working at 3 AM.

C++GNU General Public License v2.0hex-editorreverse-engineering
imhex.werwolv.net
54.2k2.4k
ClickHouse/ClickHouse

ClickHouse® is a real-time analytics database management system

C++Apache License 2.0dbmsolap
clickhouse.com
48.8k8.7k
Light-City/CPlusPlusThings

C++那些事

C++cpluspluscpp
light-city.github.io/stories_things/
43.3k8.8k
LizardByte/Sunshine

Self-hosted game stream host for Moonlight.

C++GNU General Public License v3.0game-streaming-servergame-stream
app.lizardbyte.dev/Sunshine/
39.5k2.1k
aseprite/aseprite

Animated sprite editor & pixel art tool (Windows, macOS, Linux)

C++animationpixel-art
aseprite.org
38.2k8.4k
huihut/interview

📚 C/C++ 技术面试基础知识总结,包括语言、程序库、数据结构、算法、系统、网络、链接装载库等知识及面试经验、招聘、内推等信息。This repository is a summary of the basic knowledge of recruiting job seekers and beginners in the direction of C/C++ technology, including language, program library, data structure, algorithm, system, network, link loading library, interview experience, recruitment, recommendation, etc.

C++Otherinterviewinterview-questions
interview.huihut.com
38.1k8.1k
doocs/leetcode

🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解

JavaMavenCreative Commons Attribution Share Alike 4.0 Internationalalgorithmscpp
leetcode.doocs.org
36.3k9.4k