3D游戏基础 Direct3D(四) 固定管线绘制图元

原创 2007年09月17日 21:59:00

什么是图元?Primitive

说白了,就是一堆顶点集合。这些顶点描述了一个3维图形。 由3d max产出的模型,其实,就是一组图元,加上相关的光照、材质 等等属性 构成的。

通常,在D3D和OpenGL中,图元都由两个数组(或者叫buffer)来表示,一个叫顶点数组(vertex buffer ),一个叫索引数组(index buffer)。

Vertex buffer: 用来存放顶点的具体坐标原始数据的;

Index buffer: 用来存放各个图元顶点的索引号的,索引号匹配Vertex buffer

为什么要有顶点数组,还好再搞个索引数组出来呢??主要是因为,很多图元顶点可能会出现重叠,这时候,用顶点来表示的话,就比较浪费空间了。而,用索引数组来索引,看起来就清晰,而且高效。要知道,庞大的图元,在传输的时候,也是非常耗时的啊。。。。你只用相对轻松的更换索引数组,就可以画另一个三维物体了,而不用随时更新庞大的定点数组。

那么,图元在d3d中,是如何被绘制的呢?

1 首先,创建顶点和索引缓冲:

device->CreateVertexBuffer()

device->CreateIndexBuffer()

2 设定绘制状态:

device->SetRenderState()

3 设定数据流:

device->SetStreamSource()

4 设定顶点格式

device->SetFVF() //所谓FVF,就是指顶点格式,主要有 坐标、材质和纹理 几个量

5 设置索引缓冲

device->SetIndices()

6 绘制图元

device->BeginSceen()

device->DrawPrimitive9()  

or

device->DrqwIndexedPrimitive()

device->EndScene()

Direct3D 中实现图元的鼠标

  • 2010年04月22日 11:17
  • 2.19MB
  • 下载

D3D绘制图元理论基础

在前面部分,我介绍了D3D的初始化和固定渲染流水线。这一章,将它们用于实践。 我们需要解决的事情是: 1、在D3D中如何存储顶点和索引数据; 2、怎样使用渲染状态来改变渲染结果; 3、学习怎样...

D3D绘制图元理论基础

在前面部分,我介绍了D3D的初始化和固定渲染流水线。这一章,将它们用于实践。 我们需要解决的事情是: 1、在D3D中如何存储顶点和索引数据; 2、怎样使用渲染状态来改变渲染结果; 3、学习怎样...

【阅读笔记之五】《DIRECTX.9.0.3D游戏开发编程基础》Direct3D中的绘制

Direct3D中的绘制            在前面的章节中,我们学习了创建和绘制场景的概念。本章中我们将这些原理付诸实践,并学习在如何在Direct3D中绘制基本几何形状。本章介绍的Direc...

Direct3D9.0流水管线详解图

  • 2013年01月15日 13:56
  • 903KB
  • 下载

Direct3D渲染管线

转载至  Direct3D渲染管线简介 渲染管线负责执行一系列必要的步骤从而把3D场景转换为可以在显示器上显示的2D图像。在Direct3D中,渲染管线的步骤大致如下: (1)局部坐标系到世界...
  • Boyhou
  • Boyhou
  • 2013年08月21日 22:10
  • 823

Direct3D 11渲染管线总结

1、输入重组阶段   创建输入缓存---创建缓存区并利用输入顶点数据初始化缓冲区  创建输入布局对象---定义输入的顶点缓存数据在输入流中的布局  绑定对象---将输入缓存对象和布局对象绑定...

游戏开发Direct3D基础

  • 2009年03月08日 23:03
  • 1.32MB
  • 下载

【阅读笔记之三】《DIRECTX.9.0.3D游戏开发编程基础》:Direct3D初始化

Direct3D初始化   一、Direct3D初始化预备知识           1. 表面             表面是Direct3D主要用于存储2D图像数据的一个像素矩阵。其组成部分如...

【阅读笔记之九】《DIRECTX.9.0.3D游戏开发编程基础》:Direct3D中的融合技术

Direct3D中的融合技术            融合(blending)技术,将当前要进行光栅化的像素的颜色和先前已光栅化的并处于同一位置的像素的颜色进行合成,即将正在处理的图元颜色值与存储在...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:3D游戏基础 Direct3D(四) 固定管线绘制图元
举报原因:
原因补充:

(最多只允许输入30个字)