2015年4月20日发博客开始记录我的OpenGL学习之旅。
计划平均每天至少2个小时学习,一个月稍稍入门。之所以开始写博客记录学习,一是为了留下笔记日后复习,二是写博客有助于自己长期坚持不至于半途而废。
第一天,以了解OpenGL的主要概念为主。
特别心得:
1、牢记概念的英文名十分重要,有助于阅读他人代码。
2、通过脑海中想象绘制过程熟记渲染过程。
《OpenGL超级宝典》笔记
一、渲染(Rendering):将数学和图形数据转换陈3D空间图像的操作叫做渲染。
顶点(Vertices/Vertex)能通过变换矩阵(Transformation Maxtrix)的数学结构进行旋转。
投影矩阵(Projection Maxtrix)用于将3D坐标转换成二维屏幕坐标,实际的线条也将在二维屏幕坐标上进行绘制。
光栅化(Rasterization):实际绘制或填充每个定点之间的像素形成线段。
着色(Shading):通过沿着表面(在顶点之间)改变颜色值,能轻松创建光线照射在一个红色立方体上的效果。
纹理贴图(Texture Mapping):一幅用来贴在三角形或多边形上的图片。
混合(Blending):混合时我们能够将不同的颜色混在一起。
总结:实体3D几何体是将顶点之间的点连接起来,然后对三角形进行光栅化,使对象变得更有实体感。然后再灵活运用变换、着色、纹理与混合处理。
二、坐标系
2D笛卡尔坐标,3D笛卡尔坐标
坐标裁剪:通过指定占据窗口的空间区域把指定的坐标翻译为屏幕坐标。
视口(Vertices/Vertex):把绘图坐标映射到窗口坐标
顶点:2D或3D空间中的一个坐标。
投影(Projection):从3D到2D。不管屏幕上看到的三维图像如何真实,屏幕上的像素实际上只是二维的。OpenGL通过“三角法和简单的矩阵操作”把三维坐标翻译为二维坐标。
正投影/平行投影(Orthographic Projection)
透视投影(Perspective Projection)
转载于:https://blog.51cto.com/wangkai217/1636303