OpenGL GLFW入门篇 - 画矩形

2023-11-09

效果图

主体代码

void DrawRectangle(void)
{
    GLfloat xl, yt, xr, yb, w, h;

    glPushMatrix();
	glLoadIdentity();
	glTranslatef(0.0, 0.0, 0.f);

	w = 1.2;
	h = 1.0;
    xl = -0.8;
    yt = -0.8;
    yb = yt + h;
    xr = xl + w;

    // 红色
	glColor3f(1.f, 0.f, 0.f);
    glRectf(xl, yt, xr, yb);

	// 绿色
	glColor3f(0.f, 1.f, 0.f);
    xl += 0.2;
    xr += 0.2;
    yt += 0.2;
    yb += 0.2;
    glRectf(xl, yt, xr, yb);

	// 蓝色
	glColor3f(0.f, 0.f, 1.f);
	xl += 0.2;
	xr += 0.2;
	yt += 0.2;
	yb += 0.2;
    glRectf(xl, yt, xr, yb);

	glEnd();
	glPopMatrix();
}

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OpenGL GLFW入门篇 - 画矩形 的相关文章

  • 如何在 GLSL 1.3 和 OpenGL 2.1 中使用位运算

    我正在尝试编写一个使用许多位操作的着色器 事实上 从 glsl 1 30 开始就支持它们 但我只使用 OpenGL 2 1 有没有办法在我的 OpenGL 版本中使用位运算 所有 SM3 兼容 OpenGL 2 1 硬件支持limited整
  • 为什么 OpenGL 有远裁剪平面,以及使用什么惯用法来处理这个问题?

    我一直在学习 OpenGL 持续困扰我的一个话题是远裁剪平面 虽然我可以理解近剪裁平面和侧剪裁平面 它们永远不会产生任何实际效果 因为它们之外的对象无论如何都不会被渲染 背后的推理 但远剪裁平面似乎只是一个烦恼 由于 OpenGL 背后的人
  • 如何使用现代 OpenGL 在透视投影中绘制对象的正交轴? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我有带有透视投影的 3D 场景 我还可以选择场景中的一个对象 我需要为选定的对象绘制轴 问题是轴不会在透视投影中保存其大小 如果物体远离眼睛
  • 在 OpenGL 中使用不同的着色器程序?

    我必须在 OpenGL 中针对不同的对象使用两个不同的着色器程序 我发现我必须使用glUseProgram 在不同的着色器程序之间切换 但对此没有太多信息 鉴于我有两个用于不同对象的不同着色器程序 如何为每个着色器程序生成和绑定 VAO 和
  • 移动/调整大小期间 opengl 窗口冻结

    我正在使用 LWJGL 开发游戏 移动窗口时 计划将来添加调整大小代码 渲染循环冻结 我希望它在移动时继续以某种方式运行 LWJGL 不包括 glutMainLoop Display属于OpenGL 而不是Java 相关代码 regular
  • Windows下使用GLEW使用OpenGL扩展

    我一直在 Windows 上使用 OpenGL 扩展痛苦的方式 https stackoverflow com questions 14413 using opengl extensions on windows GLEW 是更简单的方法吗
  • OpenGL:始终相同的颜色

    我正在 Windows 上编写一个程序 使用c opengl 2 1 and SDL我在顶点颜色方面遇到了一些问题 我在用着glColor3f设置每个顶点集的颜色 但它似乎不起作用 无论我选择什么颜色 我都会将每个顶点绘制为红色 我检查了传
  • GLSL聚光投影体积

    在我的开源项目中 我使用 Qt3D 设置了延迟渲染管道 到目前为止一切顺利 但现在我想通过添加聚光灯投影量来继续前进 例如场景中好像有烟雾 像这样 我正在使用的片段着色器位于问题的末尾 我读过 对于每个片段 我应该从光位置进行光线行进并找到
  • 按像素值偏移 gl_Position 或 gl_Vertex

    我的属性包含像素值 我想用这个属性值来偏移我的 gl vertex 问题是我的 gl vertex 以世界单位为单位 而 offset attribute 以像素为单位 如果我将屏幕尺寸作为统一发送 然后将像素转换为 1 到 1 值 并将其
  • 渲染到一个颜色通道而不影响其他通道

    使用 OpenGL 任何版本 如何通过一次仅影响一个颜色通道来渲染到帧缓冲区对象 例如 我的帧缓冲区对象具有 GL BGRA 布局 现在我想执行一些渲染命令 这些命令应该只改变红色通道 因此 如果片段用颜色 204 0 0 0 渲染并且像素
  • 无法在 QGLWidget 中设置所需的 OpenGL 版本

    我正在尝试在 Qt 4 8 2 中使用 QGLWidget 我注意到 QGLWidget 创建的默认上下文不显示 OpenGL 3 1 以上的任何输出 Qt wiki 有一个教程 http qt project org wiki How t
  • Windows 上的 OpenGL SDK

    我正在尝试编写一个 OpenGL 应用程序 因此我安装了 Windows 7 SDK 然而 它似乎是OpenGL 1 1 define GL VERSION 1 1 1 如何找到我安装的 OpenGL 版本 dll 以及在哪里可以找到较新的
  • 仅在发布模式下使用 glGenBuffer 时出现未处理的异常 - QT

    我在 Windows 7 上使用 Qt 4 8 发布模式编译项目时遇到了一些问题 调试时一切正常 但在发布时我收到未处理的异常 0xC0000005 访问冲突 我将范围缩小到发生这种情况的行 即生成像素缓冲区的时间 我的第一个猜测是 DLL
  • 使用顶点缓冲区对象 (VBO) 渲染 Kinect 点云

    我正在尝试制作一个动态点云可视化工具 使用 Kinect 传感器每帧更新这些点 为了抓取帧 我使用 OpenCV 和 GLUT 来显示 OpenCV API 对于点 xyz 位置返回 640 x 480 float 对于 rgb 颜色数据返
  • 在 OpenGL 中设置 MVP 矩阵

    我正在尝试学习 OpenGL 的基础知识 但我在设置变换矩阵时遇到问题 我制作了模型 视图和投影矩阵 但将它们发送到我的顶点着色器时遇到问题 这是代码 Set up MVP glm mat4 model glm mat4 GLint uni
  • 如何连接重叠的圆圈?

    我想在视觉上连接两个重叠的圆圈 以便 becomes 我已经有部分圆的方法 但现在我需要知道每个圆的重叠角度有多大 但我不知道该怎么做 有人有主意吗 Phi ArcTan Sqrt 4 R 2 d 2 d HTH Edit 对于两个不同的半
  • 使用 WGL 创建现代 OpenGL 上下文?

    我正在尝试使用 Windows 函数创建 OpenGL 上下文 现代版本 基本上代码就是 创建窗口类 注册班级 创建一个窗口 choose PIXELFORMATDESCRIPTOR并设置它 创建旧版 OpenGL 上下文 使上下文成为当前
  • 光照不适用于 gluSphere

    这是一个简单的问题 我有点羞于寻求帮助 我正在对 gluSphere 进行简单调用来渲染球体 但是 即使我很确定我正确添加了法线和照明 它也无法正确照亮 但是 如果我添加纹理 模型会正常点亮 但它似乎总是平滑的 并且我无法将其更改为平面 这
  • CMake 链接 glfw3 lib 错误

    我正在使用 CLion 并且正在使用 glfw3 库编写一个程序 http www glfw org docs latest http www glfw org docs latest 我安装并正确执行了库中的所有操作 我有 a 和 h 文
  • 双击,怎么处理?

    我试图找出如何处理用鼠标左键 或任何 双击 但我找不到任何有关它的信息 有谁能够帮助我 我不想编写自己的双击处理程序 GLFW REPEAT 不适用于鼠标按钮 编写自己的双击处理程序有什么问题吗 只需节省鼠标单击发生的时间 例如和std c

随机推荐

  • Linux 中power supply软件架构和相关API

    一 概述 电源管理整体上可以分为两个部分 一个是电池监控 fuel gauge 另外一个是充放电管理 这两部分在内核中也是分为两个驱动来管理 fuelgauge驱动的功能主要是负责向上层Android系统提供当前电池的电量和健康信息等等 同
  • React + MobX - 完全上手指南

    React MobX 完全上手指南 前言 正文 MobX 準備工作 MobX 基本使用 Store Action 組件中 MobX 生效 MobX Decorators MobX Decorators 準備工作 使用 MobX Decora
  • 超详细JDK1.8安装教程

    1 下载并安装 jdk 8u241 windows x64 JDK 8下载地址 https pan baidu com s 1 DN 5RL0mlURsN8dzYjqgw 提取码 rg5n 可自定义目录 之后配置环境变量会用到 一直下一步即
  • QThread使用方法

    QThread使用方法 昨天不小心看到Qt开发人员 Bradley T Hughes Blog中的一片文章 you are doing it wrong 结果看得头昏脑胀 好歹也自学了近1年的Qt 也一直很小心 很认真地阅读Qt和manua
  • Verilog中Case语句

    转自 https blog csdn net CLL caicai article details 104395480 实际问题中常常需要用到多分支选择 使用if语句导致内容繁琐 更明智的做法是使用case语句 case语句是一种多分支选择
  • 七牛云入门使用步骤(图片服务器使用)

    登入七牛云官网得到3个比较重要的参数 如图 1 sk 2 ak 3 测试域名 第一步导入七牛云sdk
  • 数据结构-查找(顺序查找与二分查找的讲解与代码实现)

    顺序查找概念 从表的另一端开始 一次将记录的关键字和给定值进行比较 若某个记录的关键字和给定的值相等 则查找成功 反之则查找失败 ASL 平均查找长度 pi查找概率 ci查找次数 eg 序列1 2 3 查找1的次数为1概率为1 3 2为两次
  • AdaCost

    AdaCost算法 参考 AdaCost Misclassification Cost sensitive Boosting 代价敏感 错分类的损失很大的样例 比如新冠肺炎本来是阳性但是被检测出阴性 Cost sensitive思想是一种符
  • 半导体行业深度报告:从应用到行业的全面复苏

    来源 国金证券 一 2020 2021年全球半导体市场投资展望 多种因素导致全球半导体市场于 2019 年同比下跌近 13 到 4 102 亿美元 而存储器行业同比下跌超过 30 逻辑半导体同比下跌近 2 存储器市场占全球半导体市场达到近三
  • 数据结构:C语言实现二叉树的构建以及遍历操作

    使用二叉链表的存储结构存储二叉树 typedef struct BinNode int data struct BinNode lchild struct BinNode rchild BinNode BinTree BinTree bin
  • [工具使用]SqlMap

    工具使用 SqlMap SqlMap 常用指令 探测目标网站是否存在注入 查询数据库users 查询数据库passwords 查询数据库当前用户 查询当前数据库用户是否是管理员权限 列出数据库的管理员用户名 查询所有数据库 查询当前数据库
  • 利用Pycharm上传代码到GitHub

    前提 必须能正常链接上GitHub网站 并且拥有GitHub账号 在win环境或者Ubuntu环境上必须安装有git 安装好pycharm 并且有上传的代码 pycharm配置GitHub账号 首先需要将准备上传的project配置GitH
  • linux通过端口号定位进程的几种方法

    通过端口号找进程ID Pid 1 概述 日常在linux 服务器上排查问题时 会有根据端口号找对应pid 进程id 的需求 最终通过定位pid来排查问题 本文将介绍如何在linux系统上通过监听端口号找到相关的进程 2 使用netstat命
  • CNN模型 INT8 量化实现方式(一)

    当前CNN模型基本都是 float32 将其转换为 INT8 可以降低模型大小 提升速度 精度降低的也不太多 那么在实际中如何实现这个量化了 在网上找到了三种实践方法 基于腾讯的NCNN Tensorflow Nvidia 的 Tensor
  • 接口抓包,Fiddler抓包使用方法总结,入门到精通辅助实战...

    目录 导读 前言 一 Python编程入门到精通 二 接口自动化项目实战 三 Web自动化项目实战 四 App自动化项目实战 五 一线大厂简历 六 测试开发DevOps体系 七 常用自动化测试工具 八 JMeter性能测试 九 总结 尾部小
  • 【面向对象编程 C++】笔记(完结)

    前言 是为复习做的笔记 内容来自课本和老师的课件 不全面 第10章 类和对象 面向对象 注重过程 把事件分成小模块 类和对象的定义与访问 注意 类定义结束处有分号 类是一种类型 该类型的变量成为对象 类成员的访问特性 成员函数的定义 类内声
  • OpenCV的copyTo()函数讲解及应用

    Index 目录索引 写在前面 函数介绍 案例演示 参考文章 写在前面 继前文的setTo 函数讲解后 本文对和该函数用法类似的OpenCV中的copyTo 函数进行讲解 函数介绍 可以直接在 OpenCV参考文档 中查阅 该函数的用法为
  • MySQL高可用工具heartbeat简介

    MySQL高可用工具heartbeat简介 官网 http www linux ha org wiki Heartbeat 一 HeartBeat的作用 通过HeartBeat 可以将资源 IP以及程序服务等资源 从一台已经故障的计算机快速
  • ETL基础认知

    1 ETL基础认知 了解 问题1 如何将零散的数据 集中输入到数据仓库 ETL E 数据抽取 抽取的是其他数据源中的数据 T 数据转换 将数据转换为统一的格式 消除异常值 缺失值 对于错误的逻辑进行修改 L 数据加载 将不同数据源的数据处理
  • OpenGL GLFW入门篇 - 画矩形

    效果图 主体代码 void DrawRectangle void GLfloat xl yt xr yb w h glPushMatrix glLoadIdentity glTranslatef 0 0 0 0 0 f w 1 2 h 1