Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
Game Dev

/

Game Programming

D3D12プログラミング - 基礎編

今や主流のグラフィックAPIの座はD3D11からD3D12へと移行したようです。 D3D12は魅力的な機能をサポートしていますが、学習難易度は高い方です。 しかし、じっくりと学習すれば、個人でもD3D12 APIでゲームを作成できると考えています。そこで、D3D12でゲームを実際に作成してみた経験を基に、D3D12ゲームプログラミングに挑戦できる知識の基盤を伝えたいと考えています。

  • megayuchi
directx
directx12
3d-graphics
DirectX
d3d
directx-12
DirectX12

学習した受講者のレビュー

こんなことが学べます

  • D3D12プログラミング 基礎

  • エンジンプログラミング基礎

Direct3D 12について

3-4年前までしかD3D12はPCゲームの主流APIではありませんでした。まだ多くのゲームがD3D11として開発され発売されており、開発が難しいD3D12は主流APIになりにくく見えました。

そうしたのがRayTracingなど、直接的にグラフィック品質を高める機能に支えられ、D3D12が主流APIとして浮上するようになりました。

人気の商用エンジンのメインAPIもD3D11ではなくD3D12に移されました。一般的ではありませんが、独自開発のエンジンもD3D12として開発されています。

今D3D12は明らかに主流のグラフィックAPIです。商用エンジンを活用するのに集中するだけでは構いませんが、その構造を開いてカスタマイズする必要があるか、直接レンダリングコードを作成して自分だけのエンジンを作りたいならD3D12は避けられないプロセスだと思います。

D3D12学習が以前よりは難しい方ですが、Descriptor Table、Resource Barrier、非同期レンダリングなど多少不慣れな概念に慣れれば、以降はD3D11と同様の感じで開発が可能です。

この講義は基本的なグラフィックス知識を備えており、D3D12以前の伝統的なグラフィックスAPI(D3D11、OpenGLなど)を扱った方がD3D12 APIに適応できるように道をお知らせすることに焦点を当てています。

こんな内容を扱っています

  • VertexBufferとIndexBufferを使って図形を描く方法

  • Textureの使い方

  • Descriptor / Descriptor Heap / Descriptor Tableなどのリソースバインディングのための新しい概念の理解

  • DirectX12エンジンの開発に必要なデータ構造を実装する方法

    D3D12で性能問題を回避するための必須技術

受講前の注意事項

練習環境

  • オペレーティングシステムとバージョン(OS):Windows 10/11

  • 使用ツール: Visual Studio 2022


学習資料

  • pdf提供

  • githubと添付ファイルを介したソースコードの提供

練習環境

  • オペレーティングシステムとバージョン(OS):Windows 10/11

  • 使用ツール: Visual Studio 2022, pix

  • 必須ハードウェア:DirectX RaytracingがサポートされるGPU - nvidia GTX1060以上、AMD RX6400以降

選手の知識と注意事項

  • C/C++

  • Windowsプログラミング


後につながる講義

こんな方に
おすすめです

学習対象は
誰でしょう?

  • D3D9/D3D11またはOpenGLの経験者

  • グラフィックス基礎知識を備えたC/C++プログラマー

前提知識、
必要でしょうか?

  • C/C++

  • グラフィックス基礎

  • D3D9/10/11 or OpenGL

こんにちは
です。

2,713

受講生

57

受講レビュー

12

回答

5.0

講座評価

9

講座

프로그래머

C++,x86/x64 ASM, DirectX9/11/12, Metal, OpenGL, CUDA, win32, winsock/bsd socket

 

인프런 강의

D3D12프로그래밍 기초편 - https://inf.run/7gJhS

D3D12프로그래밍 기초플러스 - https://inf.run/itHDW

DirectX Raytracing 프로그래밍 - https://inf.run/cQqx7

Windows System 프로그래밍 - https://inf.run/AwfCv

Windows Debugging Tips - https://inf.run/zL7E4

 

Blog : https://megayuchi.com

Youtube : https://youtube.com/megayuchi

LinkedIn : https://www.linkedin.com/in/megayuchi/

 

 

カリキュラム

全体

11件 ∙ (7時間 9分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

7件

5.0

7件の受講レビュー

  • Optimizer님의 프로필 이미지
    Optimizer

    受講レビュー 1

    平均評価 5.0

    5

    100% 受講後に作成

    어느정도 Vulkan에 익숙해진 상황에서 수강하고 있는데 이 정도로 깔끔하게 최신 GraphicsAPI 기능들을 설명한 강의는 처음 봅니다. 강의자 분의 내공이 돋보이는 강의입니다. 다만 그래픽스 프로그래밍을 처음 접하시는 분들은 따라가기가 조금 힘들 것 같긴합니다. ps. 최신 깃허브 보니 후속 강의가 나올 것 같은데 기대되네요ㅎㅎ

    • 이태우님의 프로필 이미지
      이태우

      受講レビュー 14

      平均評価 4.8

      5

      100% 受講後に作成

      DirectX12 뿐만 아니라 전체 구조, 메모리 정리 등 굉장히 도움 많이 됐습니다. STL 떡칠에 익숙해지신 분들이라면 이 강의와 코드를 보고 실력 향상에 도움이 될 것입니다.

      • hahaha~님의 프로필 이미지
        hahaha~

        受講レビュー 18

        平均評価 5.0

        5

        64% 受講後に作成

        • fordeer0717님의 프로필 이미지
          fordeer0717

          受講レビュー 2

          平均評価 5.0

          5

          64% 受講後に作成

          예전에 학교나 독학으로 DX11, OpenGl 배웠을 때보다 강사님의 설명을 들으면서 DX 12 를 배우는게 오히려 더 이해가 쉽습니다. 더 하드웨어나 시스템에 직관적이고 재밌습니다. 기초편으로 끝나지 않았으면 좋겠습니다

          • SeungJun Yoo님의 프로필 이미지
            SeungJun Yoo

            受講レビュー 1

            平均評価 5.0

            5

            100% 受講後に作成

            D3D11같은 기존 API에서 D3D12로 넘어올 때의 가장 큰, 주의해야할 변경점을 자세히 알려주는 강좌입니다. 조금 더 다양한(오류가 발생하는 경우를 포함) Resource Barrier 활용 케이스와 마지막 강의에 등장하는것과 같이 단일 오브젝트에 대한 다양한 Root Signature 설정 케이스, Descriptor Table 유지 케이스 등이 소개되면 더욱 좋을것 같습니다. 또는 샘플코드 레포지토리에 수강생들이 풀리퀘스트로 다양한 케이스를 올려보는것도 좋을것 같습니다.

            ¥23,368

            megayuchiの他の講座

            知識共有者の他の講座を見てみましょう!