草庐IT

FreeGlut

全部标签

c++ - GLUT 和 C++ 类

我不久前开始使用OpenGL,使用GLUT。您不能将成员函数传递给GLUT函数。(或者就此而言指向成员的指针,尽管我并没有真正探索该选项)。我想知道是否有一个“体面”的方式来解决这个问题,或者“最体面”的方式是什么?我知道您可以使用静态成员函数,但是没有更好的方法吗?我知道还有其他库,例如SFML,它们是用C++编写的并提供基于C++类的接口(interface),但我想知道关于GLUT(确切地说是freeglut)的可能性是什么。 最佳答案 首先,GLUT不适用于严肃的应用程序工作。它用于简单的图形演示。为此目的,这很好。如果您发

c++ - 如何在 OpenGL(使用 GLUT)上绘制像圆锥体一样的填充包络?

我正在使用freeglut进行opengl渲染...我需要绘制一个看起来像圆锥体(2D)的包络,必须填充一些颜色并应用一些透明度。freeglut工具包是否配备了绘制填充几何图形的内置功能(或一些技巧)?或者是否有其他一些api对填充的几何图形具有内置支持..编辑1:只是为了澄清2D锥体的东西……包络是飞机在拦截(敌机)期间覆盖区域的图形解释……类似于圆的一个扇区……我应该提到扇区。.而glutSolidCone对我没有帮助,因为我想绘制一个圆的填充扇区......我已经完成了......剩下要做的就是用一些颜色填充它......如何在opengl中用颜色填充几何图形?编辑2:发布到这

c++ - 将现有的 C++ openGL 项目从 glut/freeglut 转换为 glfw

我想将我的科学3D应用程序从Freeglut升级到GLFW,但我担心隐藏的冲突或数据丢失,实际上我的应用程序与Freeglut一起工作时非常棒,我没有任何问题,但推荐使用GLFW所有现代书籍和教程中的现代OpenGL(3.0+)。我查看了GLFWAPI,它看起来像带有glfw*前缀的Glut,但我不太确定。所以我想到了三个问题:IsitworthtobreakmyexistingprojectforGLFWsake,orsticktofreeglut?AmIgoingtolossanyfeaturefromglut?IsGLFWcompatiblewithGTK+?(becausemy

c++ - 如何创建带有状态的游戏菜单

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。我一直在寻找有关如何制作游戏菜单的示例。例如,我想让应用程序打开菜单。从那里它会打开“玩游戏”“显示积分”“退出”。到目前为止我所看到的都是弹出式菜单..所以我正在寻找的答案是关于使用“状态”,如暂停状态、游戏状态等。但我无法弄清楚这应该是什么布局或应该如何使用它。也不知道如何创建MenuState和无法在任何地方找到示例使用glut和freeglew

c++ - 将指针传递给成员函数

我有一个带有实例函数(或方法?)的类。在一个实例中,我尝试将指向这些函数的指针传递给一个库。该库需要静态函数。当我将指针传递给回调函数时,编译器提示我的函数不是静态的。我试图让它们成为静态的,但如果这样做,我就无法从函数内部访问实例字段。我该如何解决这个问题?类似的问题是:UsingaC++classmemberfunctionasaCcallbackfunction他们建议将方法放在静态的地方。但是我不能那样做,或者我不明白我该怎么做。代码GlutController::GlutController(intargc,char**argv){//stuff..//Registercal

c++ - 在 Visual Studio 2013 中链接 NuGet 库

您好:在VisualStudio2012ProfessionalUpdate4中,我可以非常轻松地创建一个新的OpenGL项目,方法是创建一个新的VisualC++项目(使用空白模板)并进入NuGet包管理器控制台并键入:Install-PackagefreeglutInstall-PackageglewInstall-Packageglm获取freeglut、glew和glm的库(一个仅包含标题的数学库。)然后我可以使用这些库创建一个简单示例:(fullexample)#include#include#includeintmain(intargc,char*argv[]){...}然

c++ - 如何在 Freeglut 中绘制彩虹?

我正在尝试在openGL中绘制彩虹色图例。这是我到目前为止所得到的:glBegin(GL_QUADS);for(inti=0;i!=legendElements;++i){GLfloatconstcellColorIntensity=(GLfloat)i/(GLfloat)legendElements;OpenGL::pSetHSV(cellColorIntensity*360.0f,1.0f,1.0f);//drawtheithlegendelementGLdoubleconstxLeft=xBeginRight-legendWidth;GLdoubleconstxRight=xBe

Opengl大作业2D&3D,基于freeglut库

由于学校要求,opengl的一系列库中只允许使用freeglut,软件为vs2019。代码贴在下边:2D作业://FileID:NewYearCard.cpp//Title:HappyNewYear!//Author:L_Stock#defineFREEGLUT_STATIC#definePI3.14159265#include#includeGLinttime_interval=3; //thetimeintervalGLfloatviewPortx=0,viewPorty=0,viewPWidth=1280; //thelocationandsizeo

linux - 在 Linux 上安装 Freeglut

我正在尝试在运行LinuxMint的计算机上安装freeglut。我按照本网站上的步骤操作:http://freeglut.sourceforge.net/docs/install.php.当我在src目录中执行makeall时,出现以下错误:fatalerror:GL/gl.h此错误由../include/GL/freeglut_std.h给出。经检查,include/GL目录确实没有任何gl.h文件。它还缺少glu.h,freeglut_std.h也尝试#include。我该怎么办?为什么gl.h和glu.h不见了? 最佳答案

linux - 在 Linux 上安装 Freeglut

我正在尝试在运行LinuxMint的计算机上安装freeglut。我按照本网站上的步骤操作:http://freeglut.sourceforge.net/docs/install.php.当我在src目录中执行makeall时,出现以下错误:fatalerror:GL/gl.h此错误由../include/GL/freeglut_std.h给出。经检查,include/GL目录确实没有任何gl.h文件。它还缺少glu.h,freeglut_std.h也尝试#include。我该怎么办?为什么gl.h和glu.h不见了? 最佳答案