Direct 3D绘制流水线(渲染管线)

本文介绍了3D模型在显示器上显示的绘制流水线,包括世界变换、观察变换和投影变换三个阶段。在世界变换中,3D模型依据世界坐标系统定位;观察变换从观察者的视角转换场景;投影变换将3D模型转化为2D屏幕图像,涉及透视和正交投影。此外,还提到了Direct 3D中不同顶点结构对于变换处理的影响。
摘要由CSDN通过智能技术生成

一个3D模型要在显示器屏幕显示,必须顺序经过【世界变换】、【观察变换】和【投影变换】,顺序完成三个变换并在显示器显示的过程被称作绘制流水线。


1、世界变换

搭建3D场景时,首先要使用一个坐标系统来定位所有的3D模型的摆放位置,称为世界坐标系统。

每次在世界空间(3D场景)中放入一个3D模型,都必须根据该模型在世界空间的位置为其指定世界变换矩阵。

可以用以下函数得到世界变换矩阵,将这些变换矩阵相乘可以得到复杂的变换关系,使3D模型完成复杂的运动:

public static Matrix RotationYawPitchRoll(float yaw, float pitch, float roll);

public static Matrix Translation(float x, float y, float z);

public static Matrix RotationY(float yaw);
public static Matrix RotationX(float pitch);
public static Matrix RotationZ(float roll);

public static Matrix Scaling(float x, float y, float z);
public static Matrix Scaling(Vector3 vertex);

2、观察变换

一个观察者在世界空间中进行观察,所看到的部分场景就是要投影到显示器屏幕上的场景。

观察者在世界空间的不同位置所看到的是世界空间不同部分的场景。

摄像坐标系统:

首先,观察者必须在这个坐标系同原点;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值