Direct3D学习笔记:渲染管线

这篇博客详细介绍了Direct3D的渲染管线,从图元和顶点的概念出发,讲解了D3DFVF灵活顶点格式,重点讨论了三角形、索引、虚拟相机、渲染管线中的变换(自身坐标系、世界坐标系、视图坐标系、投影和视口变换)以及背面拣选和光栅化等关键步骤。通过对3D场景的转换,最终将其呈现为2D图像。
摘要由CSDN通过智能技术生成

渲染管线

1图元

图元就是组成图像的基本单元,比如三维模型中的点、线、面等等,注意图元(entity)与片元(primitive)的区别,片元就是以后的像素点,它比像素多一些位置啊、法向量等属性。逐个片元操作有像素所有权操作(确定目标像素可见还是被一个重叠的窗口盖住了),剪切测试、Alpha测试、模板测试、混合等。而片段(fragments)是指具有相同属性的一小部分像素区域。

一个场景是多个物体或模型的集合,由三角形网格建立一个物体,称之为建模,3d世界最基本的图元就是三角形。Direct3d也支持点图元和线图元。

2 顶点

D3DFVFFlexible Vertex Format)灵活顶点格式

D3DFVF_DIFFUSE

Vertex format includes a diffuse color component.

DWORD in ARGB order. See D3DCOLOR_ARGB.

D3DFVF_NORMAL

Vertex format includes a vertex normal vector. This flag cannot be used with the D3DFVF_XYZRHW flag.

float, float, float

D3DFVF_XYZ

Vertex format includes the position of an untransformed vertex. This flag cannot be used with the D3DFVF_XYZRHW flag.

float, float, float.

D3DFVF_XYZRHW

Vertex format includes the position of a transformed vertex. This flag cannot be used with the D3DFVF_XYZ or D3DFVF_NORMAL flags.

float, float, float, float.

D3DFVF_TEX0 - D3DFVF_TEX8

Number of texture coordinate sets for this vertex. The actual values for these flags are not sequential.

       

#define Vertex_FVF (D3DFVF_XYZ|D3DFVF_DIFFUSE)//标志顺序要和顶点结构的顺序一样

struct

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值