OpenGL
OpenGL技术
Code_TanJX
这个作者很懒,什么都没留下…
展开
-
OpenGL Mip贴图、各向异性过滤(七)
1、Mip贴图 Mip贴图简介:纹理对象可以从不同的视点距离进行观察。在一个动态的场景中,当贴了纹理的物体远离视点运动时,屏幕像素与纹理纹素之间的比率会变得非常低(屏幕像素/纹理纹素),因此纹理的采样频率也会变得非常低。这样会产生渲染图像上的瑕疵,因为有纹理数据的下采样(undersampling)的缘故。举例来说,如果要渲染一面砖墙,可能会用到一张很大的纹理图像(比如1024×1024个纹素),在观察者距离墙很近的时候这样是没问题的。但是如果这面墙正在远离观察者运动,直到它在屏幕上变成.原创 2020-12-29 10:45:38 · 3203 阅读 · 1 评论 -
OpenGL 矩阵、纹理常见API(六)
1、矩阵相关API 矩阵变换// 平移void m3dTranslationMatrix44(M3DMatrix44f m, floata x, float y, float z);// 旋转M3DMatrix44f m3dRotationMatrix44(m3dDegToRad(45.0), floata x, float y, float z);// 缩放void m3dScaleMatrix44(M3DMatrix44f m, floata xScale, float.原创 2020-12-21 19:05:36 · 423 阅读 · 0 评论 -
OpenGL 颜色混合、图元的反走样(五)
1、颜色混合 使用混合的原因:我们把OpenGL渲染时会把颜⾊值存在颜⾊缓存区中,每个⽚段的深度值也是放在深度缓冲区。当深度缓冲区被关闭时,新的颜⾊将简单的覆盖原来颜⾊缓存区存在的颜⾊值;当深度缓冲区再次打开时,新的颜⾊⽚段只是当它们⽐原来的值更接近邻近的裁剪平⾯才会替换原来的颜⾊⽚段。那么如果开启深度测试后,当出现2个重叠的图层情况,有⼀个图层是半透明的,另⼀个图层是⾮半透明的,那么此时就不能进⾏单纯的⽐较深度值,然后进⾏覆盖。⽽是需要将2个图层的颜⾊进⾏计算后得到应该显示颜色,.原创 2020-12-18 16:15:07 · 802 阅读 · 1 评论 -
OpenGL 图元、 正背面剔除、深度测试(四)
1、基本图元连接方式 图元primitive,即图形元素,是可以编辑的最小图形单位。图元是图形软件用于操作和组织画面的最基本的素材。一幅画面由图元组成,图元是一组最简单的、最通用的几何图形或字符。OpenGL的基本图元有点(Point)、线段(Line)、多边形(Ploygon)、三角形(Triangle)、四边形(Quadrangle)。线段又分为独立线段、不闭合的线(Line Strip)和首尾闭合的线(Line Loop)。三角形分为独立三角形、三角形链(Trian.原创 2020-12-16 10:15:43 · 1041 阅读 · 0 评论 -
OpenGL 固定着色器、矩阵变换(三)
矩阵变换 模型矩阵模型矩阵保存了模型顶点坐标由局部坐标系变换到世界坐标系的状态。将物体导入到世界坐标系之后,物体一般会放置在世界坐标系的原点(0, 0, 0),我们一般会将物体相对于世界坐标系以一种角度、大小、位置去放置。而模型矩阵就可以表示这样的变换,可以只经过平移变换来进行,也可以随模型的形态进行设置,例如伸缩、旋转等。视图矩阵视图矩阵(流程图中的View Matrix),使用矩阵的好处之一是如果你定义了一个坐标空间,里面有3个相互垂直的轴,你可以用这三个轴外加一个平.原创 2020-12-14 17:34:16 · 434 阅读 · 0 评论 -
OpenGL 坐标系统概述 (二)
OpenGL 坐标系统概述1. OpenGL坐标系统概述 OpenGL希望每次顶点着色后,我们的可见顶点都为标准化设备坐标(Normalized Device Coordinate,NDC)。也就是说每个顶点的x,y,z都应该在−1到1之间,超出这个范围的顶点将是不可见的。通常情况下我们会自己设定一个坐标范围,之后再在顶点着色器中将这些坐标变换为表转化设备坐标。然后这些标化设备坐标传入光栅器(Rasterizer),将它们变换为屏幕上的二维坐标和像素。将坐标变换为标准化设备坐原创 2020-12-11 15:05:42 · 652 阅读 · 0 评论 -
OpenGL 基础理解 (一)
OpenGL基础知识 OpenGL发展至今,已经有20余年,作为一个成熟并久负盛名的跨平台计算机图形应用程序接口规范,它被广泛使用在游戏、影视、军事、航空航天、地理、医学、机械设计,以及各类科学数据可视化等领域.OpenGL是一种图形应用程序编程接口(Application Programming Interface,API)。它是一种可以对图形硬件设备特性进行访问的软件库,OpenGL被设计为一个现代化的、硬件无关的接口,因此我们可以在不考虑计算机操作系统或窗口系统的前提下,在多种不原创 2020-12-11 14:56:22 · 1284 阅读 · 0 评论