草庐IT

SDL_GL_SwapBuffers

全部标签

没有 Xcode 的 macosx 上的 C++ SDL

系统:运行MacosX10.5.5(Leopard)的黑色Macbook我想仅使用g++编译SDLhello-world应用程序。Xcode适用于macintosh,但我想要跨平台兼容性,所以我不会使用任何coaca框架(没有菜单、没有按钮等)。此外,将Xcode项目移植到其他操作系统并不是一件听起来很有趣的事情。我将SDL下载并安装到/Library/Frameworks中。最大的问题是:makefile中包含什么(假设源代码中只有一个helloWorld.cpp文件)。我想避免修改找到的Helloworld文件here如果可能的话。 最佳答案

c++ - 如何在 SDL_surface 中设置像素?

我需要使用thispage中的以下函数.SDL_Surfacestructure定义为typedefstructSDL_Surface{Uint32flags;/*Read-only*/SDL_PixelFormat*format;/*Read-only*/intw,h;/*Read-only*/Uint16pitch;/*Read-only*/void*pixels;/*Read-write*/SDL_Rectclip_rect;/*Read-only*/intrefcount;/*Read-mostly*/}SDL_Surface;函数是:voidset_pixel(SDL_Sur

c++ - SDL_GetTicks()精度在毫秒级以下

我目前使用SDL2编写程序。一切正常,但我对SDL_GetTicks()方法有疑问。通常它应该返回以毫秒为单位的总应用程序时间,但它总是在大多数情况下返回值0,有时返回值1。我用SDL_INIT_EVERYTHING标志初始化了SDL。以下代码的问题是循环太快,所以增量时间小于1毫秒。有没有办法达到更高的精度?#include"Application.hpp"voidApplication::Initialize(){intsdl_initialize_result=SDL_Init(SDL_INIT_EVERYTHING);if(sdl_initialize_result

c++ - 对 WinMain@16 C++、SDL-2 的 undefined reference

我一直收到错误undefinedreferencetoWinMain@16。为了节省空间,here'salinktoallthefilescurrentlyintheproject.目前,除了创建一个窗口、将其填充为绿色然后在角落绘制一个框外,它应该做的不多,同时通过控制台跟踪鼠标的位置。但是,它不会构建,并且出现上述错误。我的链接器库是:glew32slibSDL2mainmingw32libSDL2opengl32glew32我正在使用Codeblocks13.12和g++,遵循C++11ISOC++语言标准。如果相关的话,我的电脑使用的是Windows10。我花了很长时间试图找到

vue-使用echarts+echarts-gl实现某个省份地区地图3d可视化

前言最近在开发中遇到一个需求,需要把一个地区地图变成3d感觉悬浮在大屏中间配合业务需求其实echarts配合三方库就可以实现这个效果,具体细节需要自己调整代码实现1.下载各省份各地区地图数据-json文件-根据需求下载对应地图json数据引入即可最新全国地图JSON数据:数据来源:阿里云数据可视化平台-Gitee.com2.安装echarts和echarts-gl插件:npminstallechartsnpminstallecharts-gl3.代码实现-直接复制-注意下包和引入进来json地图数据需要对应起来 ​import*asechartsfrom'echarts'import'echa

c++ - 如何在 OGRE 中使用 SDL?

当我去使用OGRE与SDL(如thisarticle中所述),我似乎无法使用出现在主渲染窗口后面的第二个窗口。基本上,我使用的代码是这样的:SDL_init(SDL_INIT_VIDEO);SDL_Surface*screen=SDL_SetVideoMode(640,480,0,SDL_OPENGL);Ogre::Root*root=newOgre::Root();root->restoreConfig();root->initialise(false);Ogre::NameValuePairListwindowSettings;windowSettings["currentGLCo

c++ - SDL2 如何在第二台显示器上定位窗口?

我正在使用SDL_SetWindowPosition来定位我的窗口。我可以使用此功能将我的窗口定位在另一台显示器上吗?更新在Windows10中更改文本大小时,使用SDL_GetDisplayBounds将不会返回正确的监视器位置。有什么解决办法吗? 最佳答案 SDL2使用全局屏幕空间坐标系。每个显示设备在这个坐标空间内都有自己的边界。以下示例在第二个显示设备上放置一个窗口://enumeratedisplaysintdisplays=SDL_GetNumVideoDisplays();assert(displays>1);//as

c++ - SDL2 不接收窗口事件

我在带有Xcode的Macbook上使用SDL2已经有一段时间了,我很高兴。最近我试图接收一个焦点丢失事件,但它没有用。经过一些修补,我发现没有收到任何窗口事件,除了一个类型为512的窗口事件,它每秒以随机间隔出现2-5次。WindowEventID是一个枚举,而不是十六进制格式,所以它不应该是一些十六进制数。我在SDL2框架中搜索了512,但一无所获。其他事件,如SDL_QUIT和SDL_KEYDOWN工作正常。有人知道发生了什么事吗?这是我的事件循环:SDL_Eventevent;boolrunning=false;while(running){while(SDL_PollEven

c++ - 我可以用 std::chrono::high_resolution_clock 替换 SDL_GetTicks 吗?

检查来自C++的新内容,我找到了std::chrono库。我想知道std::chrono::high_resolution_clock是否可以很好地替代SDL_GetTicks? 最佳答案 使用std::chrono::high_resolution_clock的好处是避免在Uint32中存储时间点和持续时间。std::chrono库附带了各种各样的std::chrono::duration,您应该改用它们。这将使代码更具可读性,并减少歧义:Uint32t0=SDL_GetTicks();//...Uint32t1=SDL_GetT

c++ - 为什么 GL_LEQUAL 推荐用于 GL 深度函数(为什么它对我不起作用)?

关于GLwiki他们建议使用GL_LEQUAL作为深度函数。此外,深度函数默认为GL_LESS。当我使用这些功能中的任何一个时,我都会得到奇怪的结果。在这张图片中,红色方block应该在蓝色方block的前面(两个方block的大小相同):但是,如果我使用glClearDepth(0.0)然后使用glDepthFunc(GL_GREATER),运行其他未更改的程序,我得到这个:仔细考虑一下,GL_LESS会给出它所做的结果是有道理的:如果传入的深度值小于存储的深度值,则写入片段。如果我将相机定位在(1,0,0)并朝(0,0,0)方向看,我希望在(0.5,0,0)位于(0,0,0)处的对