![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Direct3D Graphics pipeline
文章平均质量分 76
weili_2007
这个作者很懒,什么都没留下…
展开
-
Basic Texturing(基本纹理技术)
这几天一直都在看baisc texturing ,这一节写的是太精彩了,原本只是了解大致原理,细节基本很模糊的我,居然对texturing有了比较清晰的理解。为了帮助我更好的理解,我有必要写点读书笔记。我们知道,通过光照计算和设置材质属性,我们可以为每个顶点计算一个颜色值;利用vetex shader,我们可以扩展固定流水线的功能,并且可以每个顶点随意计算其颜色值。利用这两种方法建模的颜色值,原创 2007-11-23 12:55:00 · 2845 阅读 · 9 评论 -
Rasterization and Shading
光栅化,我们可以将几何图形转化成屏幕上的像素。Direct3D使用scanline的渲染来产生像素。 当顶点处理结束之后,所有的primitives将被转化到screen space,在屏幕空间一个单位就是像素。点,线,三角形通过一组光栅规则被转化成像素。光栅规则定义了一套统一的法则来产生像素。 光栅得到的像素一般会携带深度值,一个RGBA diffuse 颜色,一个RGB spec原创 2007-11-23 13:04:00 · 1262 阅读 · 0 评论 -
Modeling(建模)
前一章讲解的主要是怎样向direct3D 描述场景。场景里面的物体都是由很多组primitives组成的,primitive包括point, line, triangles。 由于三角形也是一个面,所以一个三角形就可以模拟出一个平滑的表面。一个顶点除了位置信息,面法线外,还有很多额外的信息绑定到这个顶点,如顶点颜色值,纹理坐标值,顶点blend weight,任意的shader数据等等。 这原创 2007-11-23 13:05:00 · 3088 阅读 · 1 评论 -
Vertex Transformation(顶点变换)
在前面的章节里面我们已经知道定义一个model需要顶点buffer,索引buffer和primitives,也知道可以使用多路流来实现动态顶点components.如果我们想要移动一个model,我们可以通过锁住顶点buffer,然后编辑它某些组件来达到这样的效果。Direct3D提供了顶点处理流水线来执行这样的转换,它包括平移,旋转和缩放。 顶点处理是指发生在被渲染的每个primiti原创 2007-11-23 13:08:00 · 3517 阅读 · 0 评论 -
Viewing and Projection
Viewing和projection将一个三维的场景映射到render target的两维空间。Viewing 就是将一个虚拟的照相机放置和定位在场景里面。Projection就是将三维场景转换成一个两位面。 Direct3D 应用程序使用了平面几何projection. 物体的平面几何投影由线组成,称作projector,它穿越物体的每个顶点以及投影仪的中心。当投影仪中心是原创 2007-11-23 13:10:00 · 1166 阅读 · 0 评论 -
Lighting and Materials
至今,我们已经描述了顶点处理,顶点处理只是针对顶点的位置和法线。这一章将讲述光照和材质,它是用来决定物体的外表。 光照和材质是用来决定顶点的颜色的过程。 理解光照的计算只是在物体的顶点上进行计算是很重要。这样,如果物体的顶点描述越粗糙,则计算出来来的光则也是越粗糙。一个通常的错误是创建一个很大的立方体,并且把一个光源放置在离其中一个面的中心的很近的位置。通常的解决方案是为立方体的面提供原创 2007-11-23 13:21:00 · 1231 阅读 · 0 评论 -
The Frame Buffer
光栅器将图形primitives转化成像素流,这些像素将与Frame buffer里的目的像素结合在一起。Frame buffer这个术语起源于早期的光栅图形,它就是一块能容纳一张图片的存储空间。随着计算机图形的发展,这个术语不仅包含图像数据,而且也包含一些图形渲染所需要的辅助信息。在Direct3D中,Frame Buffer 不仅包括当前所选择的render target的表面,而且也包含原创 2007-11-23 13:33:00 · 3481 阅读 · 1 评论