Introduction to 3D Game Programming with Directx12 Chapter7

(一)、习题解答

1、EXERCISE1

  CreateGeosphere()方法是先构造一个20面体,然后再在20面体的基础上进行CPU曲面细分,通过细分来达到逐步精细化模型的目的。这种曲面细分方法占用CPU资源,在细分精度增加时对CPU是比较大的压力,后面我们将看到,从Directx11开始,微软提供了利用GPU来加速的方法。

这里写图片描述

Subdivision 0

这里写图片描述

Subdivision 1

这里写图片描述

Subdivision 2

这里写图片描述

Subdivision 3

2、EXERCISE2

  本例中,我们将直接使用SetGraphicsRoot32BitConstants设置根常量,一个四阶矩阵需要使用16个根常量空间。在这里我们需要修改根描述符,使用InitAsConstants(16, 0)申明一个16位根常量,同时我们还需要修改HLSL,使之能接受到16个根常量值,并利用这16个根常量值重新构建矩阵。

这里写图片描述

3、EXERCISE3

  本例中,根据skull.txt的数据格式(已放到Models文件夹内),我们先读入Vertex和Index数据,这里我们没有用到顶点法线和纹理坐标,随便赋一个值即可。结果如下图所示。

这里写图片描述

(二)、源码下载

Chapter7源码下载 习题答案源码

猜你喜欢

转载自blog.csdn.net/yolon3000/article/details/79856657