OpenGL 3D 超级宝典学习笔记
来源:互联网 发布:linux firewall 编辑:程序博客网 时间:2024/05/17 01:22
OpenGL 3D 超级宝典学习笔记
1、基本介绍:
二维图像如何显示成三维: 2D + 透视 = 3D
透视Perspective(视角):直线之间的角度,形成深度的幻觉
纹理贴图(texture mapping):利用真实表面或细节的照片,然后将这幅图像应用于一个多边形的表面,所提供的图像称为纹理(texture),而纹理中每个单独的元素称为纹理单元(texel),而在一个物体的表面上拉伸或压缩纹理单元的过程称为过滤(filtering)
混合和透明:混合(blending)是屏幕上颜色或物体的组合,类似于双重曝光照片所实现的效果。
抗剧齿:由于图像是由不连续的像素所组成的,因此可看到剧齿效果。可以将这些直线与背景颜色相混合消除从而呈现平滑的外观。
2、3D编程基本原则
坐标系统:
指定一个物体的位置及大小之间,需要一个参考帧对它进行测量和定位。
2D笛卡儿坐标:
由一个x坐标和一个y坐标构成,x坐标测量水平方向的位置,而y坐标则测试垂直方向的位置,原点(x=0,y=0),两根轴从负无穷扩展到正无穷,两轴垂直相交。
视口Viewport:
裁剪区域的高度与宽度一般不与窗口的宽度与高度相匹配,因此坐标系统从逻辑笛卡儿坐标映射到物理屏幕像素坐标,这种映射就是视口设置指定。
视口就是窗口内部用于绘制裁剪区域的客户区域。可以通过视口来缩小或放大窗口中的图像,也可以将视口设置成大于窗口的客户区域,从而只显示裁剪区域的一部分。
3D笛卡儿坐标:
将二维坐标扩展到三维坐标,并增加深度成分,即增加一个新的z轴.
投影:从3D到2D
本质是:"三解法和简单的矩阵操纵"
投影变换是一种很关键的图形变换,OpenGL中只提供了两种投影方式,一种是正射投影,另一种是透视投影
正射投影,又叫平行投影。这种投影的视景体是一个矩形的平行管道,也就是一个长方体,投影后的物体大小尺寸不变.
透视投影,即离视点近的物体大,离视点远的物体小,远到极点即为消失,成为灭点。
顶点vertex:
当绘制一个物体时,实际使用更小的图元(primitives)形状组成这个物体,图片是一维或二维的实体或表面:点,直线,多边线,其每个解称为顶点,即2D或3D空间中的一个坐标,即对坐标连线绘图。
1、基本介绍:
二维图像如何显示成三维: 2D + 透视 = 3D
透视Perspective(视角):直线之间的角度,形成深度的幻觉
纹理贴图(texture mapping):利用真实表面或细节的照片,然后将这幅图像应用于一个多边形的表面,所提供的图像称为纹理(texture),而纹理中每个单独的元素称为纹理单元(texel),而在一个物体的表面上拉伸或压缩纹理单元的过程称为过滤(filtering)
混合和透明:混合(blending)是屏幕上颜色或物体的组合,类似于双重曝光照片所实现的效果。
抗剧齿:由于图像是由不连续的像素所组成的,因此可看到剧齿效果。可以将这些直线与背景颜色相混合消除从而呈现平滑的外观。
2、3D编程基本原则
坐标系统:
指定一个物体的位置及大小之间,需要一个参考帧对它进行测量和定位。
2D笛卡儿坐标:
由一个x坐标和一个y坐标构成,x坐标测量水平方向的位置,而y坐标则测试垂直方向的位置,原点(x=0,y=0),两根轴从负无穷扩展到正无穷,两轴垂直相交。
视口Viewport:
裁剪区域的高度与宽度一般不与窗口的宽度与高度相匹配,因此坐标系统从逻辑笛卡儿坐标映射到物理屏幕像素坐标,这种映射就是视口设置指定。
视口就是窗口内部用于绘制裁剪区域的客户区域。可以通过视口来缩小或放大窗口中的图像,也可以将视口设置成大于窗口的客户区域,从而只显示裁剪区域的一部分。
3D笛卡儿坐标:
将二维坐标扩展到三维坐标,并增加深度成分,即增加一个新的z轴.
投影:从3D到2D
本质是:"三解法和简单的矩阵操纵"
投影变换是一种很关键的图形变换,OpenGL中只提供了两种投影方式,一种是正射投影,另一种是透视投影
正射投影,又叫平行投影。这种投影的视景体是一个矩形的平行管道,也就是一个长方体,投影后的物体大小尺寸不变.
透视投影,即离视点近的物体大,离视点远的物体小,远到极点即为消失,成为灭点。
顶点vertex:
当绘制一个物体时,实际使用更小的图元(primitives)形状组成这个物体,图片是一维或二维的实体或表面:点,直线,多边线,其每个解称为顶点,即2D或3D空间中的一个坐标,即对坐标连线绘图。
- OpenGL 3D 超级宝典学习笔记
- OpenGL超级宝典学习笔记第一部分:OpenGL API基础 第1章 3D图形学的基本原理
- OpenGL超级宝典学习笔记前言
- 《OpenGL超级宝典》笔记(一)
- OpenGL超级宝典笔记(三)
- OpenGL超级宝典笔记4
- OpenGL超级宝典笔记5
- OpenGL超级宝典笔记6
- OpenGL超级宝典笔记7
- OpenGL超级宝典笔记8
- openGl超级宝典学习笔记 (1)第一个三角形
- OpenGL超级宝典学习笔记——GLSL语言基础
- OpenGL超级宝典学习笔记——变换
- OpenGL超级宝典学习笔记——操作矩阵
- 【OpenGL超级宝典第五版】【第一章】3D图形和OpenGL简介 读书笔记
- OpenGL超级宝典笔记(二)
- OpenGL超级宝典笔记9(完)
- OpenGL超级宝典笔记一 - 基础渲染
- 超炫白HTC概念平板
- 硕士论文页眉页脚设置
- 怎样收缩SqlServer2005的日志文件
- 李彦宏在北大2008本科生毕业典礼上的发言(图)
- DataGridView中限制某列只能输入数字
- OpenGL 3D 超级宝典学习笔记
- String、Pattern、Matcher——java正则
- (转)FFMpeg中apiexample.c例子分析——解码分析
- jsp自定义标签
- poj 3268 Silver Cow Party
- MySQL Migration Tool 乱码解决
- 日本手掌扫描识别ATM机原理分析
- 编程规范一
- 通过gitolite架设git仓库