问题标签 [opengl-1.x]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - 使用自定义类中的顶点数据绘制到 OpenGL
我正在查看用于将 OpenGL 内容绘制到屏幕上的苹果文档,在他们的“绘制到窗口或视图页面”(下面链接)上,它们表明您可以通过在openGL
类中的 drawRect 方法中放置数据来进行绘制。我明白这一点,但如果你有一个customClass
产生一些你想绘制的顶点数据的东西怎么办。它是如何绘制到屏幕上的?
理想情况下,我可以在我的 customClass 中的 draw 方法中做到这一点,比如......
c++ - 使用OpenGL绘制时钟的小时标记
这是我的代码:
这是我的重塑功能(没有它我什么都看不到,虽然我不确定它是如何工作的)
所以我试图用尺寸为 2.0 的线立方体来绘制时钟的小时标记,每个立方体必须距离中心 5.2 个单位。这是一个任务,我知道它可能很简单,但我无法让它正常工作。我的问题是立方体出现在 3D 中,但我希望它们出现在 2D 中,因为我只会看到一张脸。另外,圆圈没有居中,我不明白为什么。我知道我应该使用 pushMatrix 和 popMatrix 但无论我如何使用它都不起作用。
c++ - 简单的彩色 3D 棱镜
我开始学习 OpenGL,我将它与 SFML 2.1 一起使用来获取窗口、加载图像等。但是我遇到了简单棱镜的问题。面孔是部分透明的,看起来很糟糕:/我正在看教程,但我不知道我的代码有什么问题......你能帮我吗?我读到这是 Z-Buffering 的问题。如何解决?
这是我的代码:
这是我的结果:
opengl - 单击 Quad 并在 opengl 中获取屏幕坐标
假设我像这样制作一个四边形:
好的,现在说我想确定用户是否在该四边形内部单击。好吧,当您单击时,您会收到屏幕坐标,因此,如果您的主窗口是 600x600 像素,那么您的单击将产生小于 600 的 x 和 y 值。但我将点击 (375,400) 与之前的四边形进行比较使用从 -1.0 到 1.0 的值创建以定义 4 个顶点。
如何确定用户是否在四边形内部单击?
java - 3D 线条从屏幕中途截断
我正在制作一个模型,它循环遍历所有实体并为它们画线。
它工作正常,但如果实体不在我的视口中,线条将在屏幕中途切断。
我的代码(至少对于这些行)几乎是这样的:
x、y 和 z 只是实体的坐标。
不太确定如何解决这个问题。
java - 为什么 LWJGL 仅在 Windows 上在以前和当前的游戏状态之间闪烁?
此问题仅发生在 Windows 中。在 Linux 中运行良好。
我有一个基于堆栈的状态管理系统。当我从一种状态切换到另一种状态时,显示屏会在前一个状态和当前状态之间闪烁。它几乎就像一个缓冲区仍在显示先前的状态并与当前状态交替。
这是我的第一个状态初始化、绘制和退出代码:
init
在状态首次加载时调用draw
被称为每个循环pause
在新状态被放到栈顶之前被调用。这是下一个 gameState 代码:
/li>
这就是加载新状态的方式。
第一个状态调用:
super.sm.push(new MainMenu(super.sm));
这是 StateManager ( sm
) 代码:
主游戏循环在 StateManager 上调用此方法:
是什么导致在 Windows 上发生状态之间的闪烁?
c++ - 如何使用 glOrtho2D 移动位置?
我正在尝试根据玩家(简单方块)的位置(x,y)移动相机。比例尺比较小,字符为0.5f x 0.5f。
如何使用 glOrtho2D 将相机聚焦在玩家的 x 和 y 坐标上?
我真的很困惑你如何使用左、右、下和上。这完全没有意义,它显然定义了屏幕比例以及它绘制的位置?
任何帮助都非常感谢。
我从以下 3d 版本 (gluLookAt) 切换:
并在调整大小
c++ - 来自 x、y 和 z 文本文件的 OpenGL 线框
我有一个包含 3 个坐标的文件,我可以将其渲染为点、线、三角形或任何图元。我想构建这个文件的线框模型,我应该更改或添加什么以将其视为线框
样本:
c++ - glMultMatrix 在 glBegin() 中不起作用
我正在创建一个程序,允许我在 3 个空间中绘制点,使用 Catmull-Rom 样条线连接它们,然后围绕样条线绘制一个圆柱体。我正在使用GL_TRIANGLES_STRIP
以短间隔连接围绕样条线绘制的点圈,希望将它们全部连接到样条线周围的圆柱体中。
我已经设法在这些间隔处绘制完整的点圆,使用GL_POINTS
,并将它们正确定位到关于 Frenet 框架的线。不幸的是,要使用GL_TRIANGLE_STRIP
,我相信我需要在一组两个点之间一次绘制一个点。
我遇到的问题是,glMultMatrix
在glBegin
. 下面的代码将绘制一个点圈,但在原点,glMultMatrix
我用来平移和定位点圈的glbegin
. 有针对这个的解决方法吗?
c++ - openGL中的完全透明对象
我需要创建一个完全透明的表面,穿过轴的原点并始终平行于屏幕。我正在尝试使用此代码(在 中c++
),但结果类似于 50% 混合(不完全):
附加信息:我需要这个透明表面来使用该功能在其上获得一个点gluUnProject(winX, winY, winZ, model, proj, view, &ox, &oy, &oz);