3D GAME PROGRAMMING WITH DIRECTX11(4)

最近看日语,这两天才看了第三章,数学部分最后一章,主要是讲转换的。

要求 

1 理解为何线性变换和仿射变换可以用矩阵表示。

2 学会用坐标系转换去缩放、旋转、平移几何体。

3 知道几个变换矩阵可以通过相乘结合成一个矩阵。

4 知道怎么从一个坐标系变换到另一个坐标系,而且用矩阵表示这个变换矩阵。

5 熟悉XNA数学库的那些函数。


3.1 一开始还是一些定义,说了线性变换的判断方法,缩放和旋转的矩阵表示。这里用的都还是3*3矩阵。


3.2 先讲到了齐次坐标,本来呢按常理想,我们用3*3矩阵就可以进行3D转换的,但是有些变换并不能,比如平移等,所以我们就扩充到4*4的矩阵,自然向量点也需要是一个1*4的vector,后面讲到了平移的矩阵表示,自然为了统一,所以旋转和缩放也改用4*4矩阵表示。


3.3 这一节就是讲假如我们需要平移,缩放,旋转,可以先将三者先相乘结合成一个变换矩阵,这样在大量数据进行变换的时候会节省很多时间等。


3.4 坐标系的变换,主要分清楚vector和点的不同就好。


3.5 主要是要认识到在3D世界(我们所构造的虚拟世界里),你将物体进行转换和对其坐标系进行转换是可以得到同一样的效果的,比如物体向X轴正方向平移1单位,和坐标系整体向X轴负方向平移1单位得到的效果是一样的,其实基本每个物体都会有自己的世界坐标,这样我们就不需要在一个坐标系内操作所有的物体了,而且在各自的坐标系中进行操作,这样来说,就可以达到我们所追求的的效果啦。


3.6 就是一些函数,看看就好。



课后题答案:

第5题,记得去正交化,所以(x,y,z)=(1/根号3,1/根号3,1/根号3),代入公式就好。

第17题,记得一个是vector一个是point。

第27题,就是要将一条线段长度变成2,和(1,1,1)方向平行,还有起点变成为(3,1,2),其实进行缩放,旋转,平移就好。

第28题,介绍了一种可以原地缩放的方法,要点是将坐标系原点和图形中心相重叠,具体自己画图吧。


数学部分就酱紫咯,还想深入的话,大神们跟我说去看3D数学基础图形与游戏开发》应该很不错的一本书。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《DirectX 11 3D 游戏编程介绍》是一本探索使用DirectX 11进行3D游戏编程的入门指南。作者在书中详细介绍了使用DirectX 11构建高性能、交互性强的3D游戏的基本原理和技术。 这本书首先向读者介绍了DirectX 11的基本知识,包括如何安装和配置DirectX 11开发环境,以及如何使用DirectX 11的各种工具和函数编写3D游戏程序。接着,作者解释了3D计算机图形学的基础知识,如顶点和像素着色器、纹理贴图和辐射衰减等。通过这些基础知识的介绍,读者可以快速掌握构建3D游戏所需的关键技术。 在介绍了基本概念之后,书中详细介绍了使用DirectX 11来创建各种类型的3D游戏元素,如物体、相机、光照等。通过丰富的示例代码和图文并茂的解释,读者可以了解到如何创建和渲染一个真实感十足的3D场景。 除了基本的游戏元素之外,本书还涵盖了一些高级主题,如阴影、环境映射以及粒子系统等。这些高级技术的介绍,使读者能够在游戏中添加更多的特效和细节,提高游戏的表现力和吸引力。 总之,《DirectX 11 3D 游戏编程介绍》是一本全面而深入的指南,适合对DirectX 11编程感兴趣的读者。通过阅读本书,读者可以快速掌握使用DirectX 11构建3D游戏所需的基本知识和技术,为自己的游戏编程之路打下坚实的基础。 ### 回答2: 《DirectX 11 3D游戏编程入门》是一本介绍使用DirectX 11进行3D游戏编程的书籍。这本书深入探讨了如何使用DirectX 11框架来创建高质量的游戏图形和动画效果。 首先,书中介绍了DirectX 11的基本原理和概念,包括DirectX API、3D渲染管线以及基本的数学知识。读者将学习如何使用DirectX 11的各个组件来创建并控制游戏世界的各个方面,包括场景、模型、光照、纹理和动画等。 其次,书中还涵盖了一些高级主题,如几何处理、阴影技术和物理仿真。通过学习这些技术,读者将能够创建更加真实和逼真的游戏效果。 除了理论知识,这本书还提供了大量的实际编程示例和练习,帮助读者巩固所学的内容。读者将通过实践性的编程项目来运用所学知识,提高自己的编程能力和理解。书中的示例代码和项目都是使用C++语言编写的,读者需要基本的C++编程知识。 总而言之,《DirectX 11 3D游戏编程入门》是一本全面介绍使用DirectX 11进行游戏编程的教材。无论是对于初学者还是已有一定游戏开发经验的读者来说,都是一本不可或缺的学习资源。通过学习这本书,读者将能够掌握使用DirectX 11创建引人入胜的3D游戏的技能。 ### 回答3: 《DirectX 11 3D游戏编程入门》是一本介绍使用DirectX 11进行3D游戏编程的入门教材。DirectX 11是微软的一个图形编程接口,它提供了丰富的功能和工具,方便开发者实现高性能、逼真的图形效果。 本书首先介绍了计算机图形学的基础知识,如顶点、三角形、光照、材质等。然后详细介绍了DirectX 11的各个组件和功能,如绘制2D图形、创建3D模型、使用着色器编程、应用纹理和光照效果等。 书中通过一系列具体的示例代码和案例,手把手地教读者如何使用DirectX 11进行游戏编程。读者可以学会如何加载模型、设置相机视角、实现场景渲染等基本功能。同时,本书还介绍了一些高级的特效技术,如阴影和反射效果的实现。 在学习过程中,本书鼓励读者动手实践,通过编写自己的游戏项目来巩固所学知识。此外,本书还提供了一些调试技巧和最佳实践,帮助读者解决常见的问题,并编写出高效、稳定的游戏程序。 总之,《DirectX 11 3D游戏编程入门》是一本系统、全面介绍DirectX 11游戏编程的教材,适合有一定编程基础和对3D游戏开发感兴趣的读者阅读。通过学习本书,读者可以了解DirectX 11的核心概念和基本功能,掌握基于DirectX 11的3D游戏开发技巧,为进一步深入学习和开发打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值