opengl编程学习笔记(三)(2D绘图)

Android学习笔记:OpenGL绘图总结 很久不用OpenGL ES绘图,怕自己忘记了,于是重新复习一遍,顺便原理性的东西总结如下: 1,Android 3D坐标系统    如图: Android的三维坐标系统中:                    坐标原点位于中央,                    X轴从左向右延伸,原点左边的值为负数,右边为正数;                    Y轴从下向上延伸,原点 阅读详情

在opengl中可以绘制二维图像,分为两种,BITMAP和image

1.bitmap和image的区别有:

bitmap中对图像的每个像素只存储一位(0或1),用来表示用当前颜色绘制还是不绘制,而image是图像的每个像素存储可能很多位,存储它的各个通道的颜色信息;

bitmap是绘制在三位空间中的一群点,其中每个点都受各变换矩阵的影响,等同于一群Gl_begin(GL_POINTS)操作联合在一起 ,而image是直接绘制在帧缓存上,在绘制原点所投影到的屏幕坐标处开始绘制,就是直接在二维屏幕上绘制,就像普通的二维绘制一样,他只有那个绘制的原点受变换矩阵的影响,比如当原点的位置被裁剪掉之后,整张图片也将消失。

bitmap是绘制在三位场景的一些点,也就是每个点都会有法向等信息,回收光照等影响,拉近看还会发现点间的距离,image是直接写入帧缓存的,绘制的颜色就是最终看到的颜色, 像素点间不会有距离

2.bitmap的绘制步骤

glColor3f制定当前绘制的点的颜色

glRasterPos2f定义当前的绘制原点(OPENGL绘制的原点是在左下角的,即定义之后,都是从这点开始按照从左至右,从下至上绘制的)

只有当调用了 glRasterPos2f之后,他前面的glColor3f才会起作用,所以要先设置颜色,再定义原点

void glBitmap( GLsizei width,  绘制宽度的点数
  GLsizei height, 绘制高度 的点数
  GLfloat xorig, 在以原点的二维坐标系中的X坐标 
  GLfloat yorig, 在以原点的二维坐标系中的Y坐标 
  GLfloat xmove,绘制后原点的横向位移
  GLfloat ymove,绘制后原点的纵向位移
  const GLubyte * bitmap

qt的opengl开发(qopenglwidget)(初始化,画线,平移,局部缩放)2d开发 最近因为项目原因,涉及显示图像,其实只是单纯的划线,但是线条的数量很庞大,所以需要用到opengl来提升性能,一些基础功能也是琢磨的3天左右,基本上是出来了。 下面直接看代码: 初始化: 用qopenglwidget这三个函数必须有 void GLWidget::initializeGL() { initializeOpenGLFunctions(); //这个是qt使用opengl方法接口 QOpenGLFunctions *f = QOpenGLContext::currentCon 阅读详情

相关推荐

我的opengl编程学习(一)(简介、绘制图像、三维观察、光照)

这是我第二次学习OPENGL,第一次学习是在大二的计算机图形学课堂上,那是对opengl只是走马观花,现在过了两年,我打算把opengl进行新一编完整而系统的学习,有三个目的:1.熟练掌握opengl编程,2从opegl的体系中加深对计算机图形渲染管线的整个体系的了解,作为深入学习GPU编程的进阶,3.制作好看的CG作品。这里是我在学习《opengl programming guide fif

leon 6900

OpenGL、OpenGL ES、Canvas、WebGL概念梳理

如何学习OpenGL、Canvas、WebGL 当你开始思考你应该如何学习OpenGL、Canvas、WebGL的时候,相信你至少对相关的关键词了解过了,还不太清楚OpenGL、Canvas、WebGL是什么,个人建议是不要做过多思考,先看看相关的具体技术教程、资源文献、论坛帖子,随着时间的推移你自然会明白OpenGL、Canvas、WebGL等关键词指什么。 ...

Mr_JiaTao的博客 2576

12、使用Quartz 2D和OpenGL ES进行绘图

本文深入探讨了如何在iOS开发中使用Quartz 2D和OpenGL ES进行绘图,从基础概念到具体实现细节,并通过构建QuartzFun和GLFun两个应用程序展示了这两种工具的具体应用。文章还提供了优化绘图性能的建议以及选择合适绘图工具的指导,帮助开发者更好地应对绘图相关挑战。

orange的博客 147

OpenGL在Windows中的2D绘图实践教程

OpenGL(Open Graphics Library)是一个跨语言、跨平台的编程接口,用于渲染2D和3D矢量图形。自从1992年由Silicon Graphics Inc.(SGI)发布以来,它经历了多个版本的迭代,成为了工业界的标准图形API。OpenGL为程序员提供了一组丰富的图形操作命令,可以生成高质量的计算机图形。本章首先将探讨图形管线(Graphics Pipeline)的工作原理,它是图形渲染的核心过程。随后,我们会深入了解OpenGL的历史背景,为何它能成为图形编程的行业标准。

weixin_42560991的博客 461

OpenGL实现基础2D笑脸图形

在本章中,我们通过坐标变换和视口设置学习了2D图形绘制的基础,并且通过线条和多边形的绘制方法以及颜色和纹理的应用,了解了如何在OpenGL中创建基本的2D图形。掌握了这些基础知识后,我们将能够创建出各种各样的2D图形,并通过颜色和纹理增强它们的表现力。在下一章中,我们将进一步探讨如何利用OpenGL构建复杂的几何形状。是用于编写着色器的语言。GLSL语法与C语言类似,它支持数据类型、变量、函数以及控制结构等。着色器程序通常由以下几个部分组成:输入变量(Input Variables)

weixin_31163455的博客 1100

构建简易OpenGL 2D渲染框架:Simple2D 01

本章介绍了OpenGL上下文的创建和管理过程,涵盖了上下文的生命周期、共享资源以及高级上下文管理。理解这些内容对于开发高性能的OpenGL应用程序是至关重要的。下一章我们将深入探索OpenGL状态初始化与配置,这是实现高效渲染流程的另一个关键环节。在本章节中,我们探讨了OpenGL中状态机的工作原理,并详细介绍了如何进行状态的初始化和配置。我们通过示例代码和逻辑分析,解释了深度测试、混合模式、纹理单元等状态变量的作用及其设置方法。同时,我们也讨论了状态查询和状态缓存的高级话题。

weixin_35879493的博客 680

Delphi 2D以及OpenGL应用小例子

内容索引:Delphi源码,图形处理,OpenGL  压缩包内是Delphi 2D以及OpenGL应用的小例子,box2D包及示例,欢迎研究此方向的delphi同仁一起下载研究。

STM32基于软件模拟IIC进行AHT21B温湿度采集

通过学习软件IIC来进行实操AHT21B采集温湿度。

Liu-FE的博客 3700

Cadence 17.2 OrCAD原理图库实战:从零创建电阻/电容/LED元件(附封装技巧)

本文以Cadence 17.2 OrCAD为核心,详细讲解了如何从零开始工程化地创建电阻、电容、LED等原理图库元件。内容涵盖库架构设计、符号绘制、引脚属性管理、封装关联技巧以及设计规则检查,旨在帮助硬件工程师构建规范、可复用且易于维护的元件库,为高效PCB设计奠定坚实基础。

weixin_29195615的博客 400

MATLAB2022b安装

图文并茂,手把手教会你怎么安装MATLAB2022b

1万+

用友U8登录慢卡顿?别急着重启服务器,先检查UA_Message这张表(附SQL清理脚本)

本文针对用友U8登录慢卡顿问题,深入分析UA_Message表积压消息对系统性能的影响,并提供SQL清理脚本和优化方案。通过诊断、清理、索引优化和预防措施四步法,显著提升U8客户端登录速度,适用于后台管理和数据库维护场景。

weixin_28726671的博客 381

一图文带您认识磁编码器

磁编码器是以磁电原理技术生产的编码器。 磁编码器工作原理: 当电流通过一个位于磁场中的导体的时候,磁场会对导体中的电子产生一个垂直于电子运动方向上的的作用力,从而在垂直于导体与磁感线的方向上产生电势差。 如果让施加在这个导体上的磁场以电流流经路径为轴线,按照上图箭头所示的方向旋转,那么这个霍尔电势差就会因为磁场与导体之间角度的改变而发生变化,而这个电势差的变化趋势,与之前一文中次级线圈旋转时的输出电压一样,是一条正弦曲线。因此,基于这个通电导体两侧的电压,就可以反推计算出磁场旋转的角度了。 .

encoder_yang的博客 2万+

YOLOv11改进策略【独家融合改进】| 模型轻量化二次改进:StarNet + FreqFusion,极限降参,适用专栏内所有轻量化模型

FreqFusion是一种旨在解决密集图像预测任务中特征融合问题。

Limiiiing的博客 2125

111. 如何创建 SAP ABAP 锁对象(Lock Object)和加锁以及解锁函数

至此,我们完成了 ABAP 系统锁机制和加锁解锁函数的介绍。有了这些基础知识,大家就能在实际工作中,使用 Lock Object 和加锁解锁函数,编写出支持并发访问控制的 ABAP 应用程序了。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1538

借助ChatGPT完成课题申报书中框架思路写作指南

通过这篇文章的学习,我们可以让ChatGPT先为用户匹配研究理论、研究方法、研究思路、研究内容等,为申请人提供一些参考,能够帮助对拟申报课题有一个初步的认识。当申请人找到了合适的理论、方法和问题后,再借助精细化提示词模型提问,那ChatGPT回答的启发性肯定会有质的提升,更具有使用价值。

智能AI让学术科研更容易 2468

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

上一篇: opengl的一些小问题
下一篇: opengl编程学习笔记(四)(纹理映射)(结合nvdia OpenglSDk 的nvimage类)
leonwei
leonwei 领域专家: 游戏开发技术领域 领域专家: 游戏开发技术领域
博客等级 码龄19年 4379粉丝 125原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值