原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 全书总结

本系列文章中可能有很多翻译有问题或者错误的地方;并且有些章节描述的也不太清晰。

所以请务必结合原书学习!!! ^ @ ^


优化总结

总结书中提到的所有需要优化的细节


第一章:向量代数

1、向量的基本运算;

2、DX数学库中向量的接口。


第二章:矩阵代数

1、矩阵的定义,基本计算和特性;

2、矩阵的行列式,伴随矩阵和逆矩阵;

3、DX数学库中矩阵的接口。


第三章:变换

1、线性变换的定义和其矩阵表达;

2、仿射变换的定义和其矩阵表达;

3、坐标系变换;

4、DX数学库中的变换函数。


第四章:Direct 3D初始化

1、COM和贴图格式介绍;

2、DX初始化流程:交换链、深度缓冲、资源和描述符、多重纹理映射、特征级别、DirectX 图像基础设施(DXGI);

3、特征等级的检查;

4、Residency;

5、CPU/GPU的交互:交互、同步、资源状态转变;

6、初始化示例代码;

7、高精度Timer实现代码。


第五章:渲染流水线

1、3D视觉,模型;

2、颜色格式,计算;

3、渲染流水线各个阶段介绍。


第六章:在Direct3D中绘制

1、顶点的输入、布局和顶点缓冲;

2、索引和索引缓冲;

3、顶点着色器;

4、像素着色器;

5、常量缓冲;

6、根签名;

7、着色器代码的编译;

8、PSO的创建和使用;

9、创建基本几何体网格。


第七章:在Direct3D中绘制(二)

1、帧资源;

2、RENDER-ITEMS;

3、PASS CONSTANTS;

4、形状几何:创建椭球体,球体,圆柱体,圆锥体;

5、更多类型根参数:描述表、根描述、根常量;


第八章:光照

1、几种光照类型的计算;

2、材质的实现;

3、几种光源实现。


第九章:贴图

1、纹理的介绍、创建和使用;

2、几种滤波器;

3、地址模式;

4、采样器。


第十章:混合

1、混合的介绍、运算和设置;

2、雾的特效实现;


第十一章:模板测试

1、模板测试的介绍、设置和实现;

2、镜面效果的实现;

3、平面阴影的实现;


第十二章:几何着色器

1、几何种色器的介绍;

2、公告牌Demo的实现;

3、纹理数组的介绍和实现;


第十三章:计算着色器

1、GPU的线程和线程组;

2、计算着色器介绍和实现;

3、模糊Demo的实现;


第十四章:曲面细分阶段

1、曲面细分阶段介绍和实现;

2、细分一个平面快Demo实现;

3、立方贝塞尔方块Dem的实现;


第十五章:第一人称摄像机和动态索引

1、第一人称摄像机实现;

2、动态索引介绍和实现;


第十六章:实例化和截头锥体裁切

1、硬件实例化介绍和实现;

2、包围体和截头锥体的实现;

3、DX数学碰撞检测;


第十七章:拾取

1、屏幕透视窗口的变换;

2、各个相交检测的介绍和实现;


第十八章:立方体贴图

1、环境贴图的介绍和实现;

2、模拟反射的实现;

3、动态立方体贴图的实现;

4、使用几何着色器实现动态立方体贴图;


第十九章:法线贴图


第二十章:阴影贴图

1、阴影贴图的介绍和实现;

2、偏移和反走样的介绍和实现;


第二十一章:环境光遮蔽

1、基于光线追踪的环境光遮蔽介绍;

2、屏幕空间环境光遮蔽的介绍和实现;

3、模糊计算;


第二十二章:四元数

1、复数介绍;

2、四元数的介绍;

3、单位四元数和旋转表示;

4、四元数的插值;

5、DX数学库中的四元数接口;


第二十三章:角色动画

1、骨骼动画的数学公式以及实现;

2、骨骼动画文件介绍以及加载;

Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 全书总结的更多相关文章

  1. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- Direct12优化

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- Direct12优化 第一章:向量代数 1.向量计算的时候,使用XMV ...

  2. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十三章:角色动画

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十三章:角色动画 学习目标 熟悉蒙皮动画的术语: 学习网格层级变换 ...

  3. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十二章:四元数(QUATERNIONS)

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十二章:四元数(QUATERNIONS) 学习目标 回顾复数,以及 ...

  4. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十一章:环境光遮蔽(AMBIENT OCCLUSION)

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十一章:环境光遮蔽(AMBIENT OCCLUSION) 学习目标 ...

  5. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十章:阴影贴图

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十章:阴影贴图 本章介绍一种在游戏和应用中,模拟动态阴影的基本阴影 ...

  6. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十九章:法线贴图

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十九章:法线贴图 学习目标 理解为什么需要法线贴图: 学习法线贴图如 ...

  7. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十八章:立方体贴图

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十八章:立方体贴图 代码工程地址: https://github.c ...

  8. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十七章:拾取

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十七章:拾取 代码工程地址: https://github.com/ ...

  9. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十六章:实例化和截头锥体裁切

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十六章:实例化和截头锥体裁切 代码工程地址: https://git ...

随机推荐

  1. 线性基(模板) LUOGU 3812

    题面 解题思路 线性基,是构造出一组数:ax,ax-1-.a1,ax的二进制最高位为x.这些数字能异或和可以表示原来所有数的异或和.其实相当于一个高斯消元的过程.所以我们按位枚举,如果这一位曾经没数, ...

  2. 深入浅出 Java Concurrency (3): 原子操作 part 2[转]

    在这一部分开始讨论数组原子操作和一些其他的原子操作. AtomicIntegerArray/AtomicLongArray/AtomicReferenceArray的API类似,选择有代表性的Atom ...

  3. Java内功修炼系列一工厂模式

    工厂模式是一种创建型模式,它提供了一种新的创建对象的方式,一般情况下我们都习惯用new关键字直接创建对象.有时候会遇到这种情况,我们需要根据具体的场景选择创建什么类型的对象,可能有多种类型都能选择,但 ...

  4. hive启动一些错误记录

    java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMeta ...

  5. react-native start停止在Loading dependency graph, done.

    在试验的过程中. 发现运行 react-native start会卡住,停留在Loading dependency graph, done. 原因大概是之前运行过 react-native run-a ...

  6. Django项目:CRM(客户关系管理系统)--39--31PerfectCRM实现King_admin编辑多对多限制

    readonly_fields = ('qq', 'consultant','tags',) # 不可修改 # forms.py # ————————19PerfectCRM实现King_admin数 ...

  7. zoj2562 反素数

    /* 这题1 <= n <= 1016,暴力肯定是TLM,所以看了大牛求解小于N的反素数的算法,思路大致是这样的: 性质1:一个反素数的质因子一定是从2开始的若干个连续质数. 因此可以枚举 ...

  8. JavaScript类型转换规则

    注:JavaScript相对于其他强类型(如c,c++,java,定义变量的同时申明变量类型)语言来说,是弱类型和松散型(在定义的时候不需要申明变量类型,在使用的时候才赋值给她什么类型就是什么类型.所 ...

  9. Thrift---more efficient transport protocol.

    Thrift  是什么?  Thrift源于大名鼎鼎的facebook之手,在2007年facebook提交Apache基金会将Thrift作为一个开源项目,对于当时的facebook来说创造thri ...

  10. shell linux基本命令实例、笔记

    1. 在当前文件夹下.查找20分钟内,被訪问过的文件, 并将文件的详情显示出来: find ./ -name '*.log' -mmin -20 -exec ls -l {} \;   当然,须要指出 ...