问题标签 [freeglut]
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.
c++ - 跨 Linux 发行版编译时的 OpenGL 问题
我最近用 opengl(使用 freeglut)写了一个迷宫游戏,在 Ubuntu 或 Cygwin 中构建时运行良好,但是在使用 freeglut 构建在 Fedora Core 12 上时,游戏崩溃了,我的教授在构建它时什么也看不到在他的机器上(他没有透露的操作系统)。
此外,在之前的作业中,即使我已经实现了双缓冲并且在每次显示后刷新缓冲区,我也会闪烁。闪烁发生在我的 Fedora 机器上,很少发生在我的 Ubunutu 机器上,而在 cygwin 中则完全没有。
最后,在 Fedora 机器上,雾非常密集,似乎忽略了对“glFogf(GL_FOG_DENSITY, 0.1)”的调用。然而,在 Cygwin 和 Ubuntu 上,雾的表现完美无缺。
操作系统之间的 freeglut 实现之间是否存在许多差异,这将是一个问题?我的教授似乎准备在这些项目上让我失望,但我不知道为什么 opengl 在操作系统之间表现得如此不稳定。
如果您有任何见解,请告诉我,并感谢您的宝贵时间。
windows - 使用 FreeGLUT,我如何创建一个 OpenGL 窗口,同时指定标题和屏幕位置?
FreeGLUT API有几个窗口管理函数:
我对此完全陌生。我将如何创建四个具有独特标题和位置的窗口?似乎一旦使用 创建了第二个窗口glutCreateWindow()
,就无法再次访问第一个窗口。
到目前为止,我可以使用 和 创建单个窗口glutCreateWindow("window 1");
,然后使用 和 对其进行整形和重新定位glutReshapeWindow(width, height)
,glutPositionWindow(x, y)
但我不知道如何同时管理多个窗口。
如果有帮助,我正在 Windows XP 上运行 MinGW/MSYS。
eclipse - FC13 上的 GCC C++ 链接器部分
我正在尝试让 OpenGL 和 Glut 在 Eclipse Linux FC13 上运行。
在花了两天时间之后,我承认需要帮助。在 FC13 Eclipse 上,我看到
/usr/include/GL
并且/usr/include/SDL
——所以库就在那里。我启动了 Eclipse,然后尝试在其上运行一个简单的程序,就像这里建议的那样。但是,在这些步骤中缺少两件事:
- 无法安装 Callisto - 从存储库中找不到任何内容
- 在 Eclipse 3.5.2 的任何地方都找不到 GCC C++ 链接器。
尝试运行程序时,我看到此错误:
程序不存在
而有时
找不到二进制文件
如果我只是运行“hello world”,它就可以工作,否则,每次我尝试包含 glut gl 或 sdl 命令时都会发生这些错误。
以下是编译器错误的摘录:
是的,显然编译器无法看到 glu、gl、sdl 和 glut 库。
关于如何修复的一些建议?
c - 使用 glut 创建窗口,但程序不一致
我只是想制作一个程序来显示一个带有一个框的窗口,但是当我运行该程序时,我可能只能在 5 次运行中获得一次窗口显示。每次执行命令行时都会给出适当的响应,并且我会在屏幕底部的 gnome 面板上看到窗口的标题,但窗口本身大部分时间都是不可见的。
我完全不知道原因可能出在哪里,我想开始寻找。有什么建议吗?
我使用 gcc main.c -lglut 编译和运行:
opengl - 如何为 freeglut 编写 configure.ac 和 Makefile.am?
我想在我的项目中使用 freeglut。
在我的 configure.ac 中,它看起来像这样,它对 SDL 的工作方式是这样的,所以我只是更换了一些药水,并希望它也适用于 freeglut,但事实并非如此。那么我做错了什么?
另外我必须在 Makefile.am 中写入什么内容?对于 SDL,它看起来像这样:
opengl - opengl 离屏渲染
我在 MAC OS X 10.6 上使用 opengl FBO 和 glut 进行屏幕外渲染。该程序涉及多个 3D 对象的移动。
该程序似乎运行良好,除了我需要包含一个选项,即屏幕外缓冲区内容不会交换到屏幕缓冲区。因此,您在屏幕上看不到任何内容。我想知道当屏幕上什么都看不到时程序是否在这种模式下正常工作 - 即 3D 运动等像往常一样正常工作。是否有一个实用程序可以在我的进程单独运行时读取屏幕外缓冲区并将其显示在屏幕上。
或者,还有其他方法可以实现这一目标吗?即在使用 FBO 渲染离屏时隐藏屏幕上的窗口。
感谢任何评论/建议。我希望我的问题很清楚。
c - sdl_gl_setattribute 上的 sdl 应用程序段错误
我正在尝试编译这个示例并尝试一下。我已经纠正了人们在这个示例中遇到的主要错误,他们会在调用 SDL_Init 之前调用 sdl_gl_setattribute,但是在第一次调用 SDL_GL_SetAttribute 之后我仍然遇到段错误。我以前在我的电脑上用 opengl 应用程序运行过 sdl,我确信它一直在使用我的视频卡。
从这段代码中有人知道为什么会出现段错误吗?或者,这段代码可以在其他人的计算机上运行吗?如果这有什么不同的话,我在 ubuntu 10.04 上使用 freeglut3 来处理 opengl 的东西。
c++ - GlutSolidSphere 不牢固
嗨,我的程序应该在屏幕中心显示一个纯红色的球体,我得到的只是球体的边界:
macos - OS X 上的 glutHideWindow 和 glReadPixels
在 MAC OS X 机器上,我使用 FBO、深度 RBO 和带有 freeglut 的纹理 RBO 将 3D 场景渲染到 FBO 并渲染到纹理。最后都使用标准的 glut 函数和 glutMainLoop。
我正在使用 glReadPixels 从 FBO 读取数据。我可以看到像素被正确读取。
但是,当我使用 glutHideWindow 隐藏 glut 窗口时,我发现由 glReadPixels 重新生成的整个缓冲区设置为清除颜色(ff 00 00 00)。我没有改变其他任何东西。我认为隐藏窗口时根本不会渲染 FBO。我该如何改变?这是在 MAC OS X 上观察到的。如果您想查看代码,请告诉我。
c++ - OpenGL textures appear just black
I am trying to apply a texture to a quad, but I only get a black box instead of the texture. I am using DevIL to load images from files and OpenGL does the rest.
Here is what I am doing so far:
The following class abstracts the DevIL representation for an image.
This class abstracts the texture representation for OpenGL.
The following class contains the texture loading process.
The last class does the drawing.
Last but not least, the following method initializes OpenGL (and triggers the initialization of DevIL):
The image I am using already worked for another OpenGL/DevIL project, so it cannot be the source of the problem.
The texture is created inside of every class which represents a world object (it's a game...). The character is called Blobby and here are the most important parts of its implementation:
The OpenGL timer callback calls a step method which ends here:
IEntity is a pure virtual class (i.e. interface), AbstractEntity implements this interface and adds global methods. Blobby inherits from AbstractEntity and adds routines which are special for this world object.
EDIT: I have uploaded a more recent version of the code (the whole project incl. dependencies) here: http://upload.visusnet.de/uploads/BlobbyWarriors-rev19.zip (~9.5 MB)