问题标签 [sdl]

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.

0 投票
3 回答
741 浏览

python - SDL 或 PyGame 国际输入

那么基本上,在 SDL 或 OpenGL 游戏或应用程序中如何处理非西方输入?谷歌搜索显示http://sdl-im.csie.net/但这似乎不再维护或可用。只是为了查看我不得不使用谷歌缓存的页面。

澄清一下,在应用程序向用户显示非西方语言文本方面,我没有任何问题。这是一个已解决的问题。有许多可用的 unicode 字体,以及将文本处理成字形然后处理成显示表面的许多不同方法。

我朝相反的方向跑了一次犯规。即使我的程序可以安全地处理任意编码的文本数据,如果碰巧包含一个需要多次击键才能产生的字符,用户也无法实际输入他们的姓名。

0 投票
3 回答
9741 浏览

c++ - 如何在 Visual Studio 2008 Express 中获得一个最小的 SDL 程序来编译和链接?

我正在尝试通过 Visual Studio 2008 Express 在 C++ 中使用 SDL。以下程序编译但不链接:

链接错误是:

无论我如何或是否与 SDL.lib 和 SDLmain.lib 链接,我都会得到这个。定义mainmain()SDL_main()给出相同的错误,有或没有extern "C".

编辑:我通过在 main.cpp 中不包含 SDL.h 解决了这个问题——我做了一个独立于问题的重构。一个类似的解决方案是#undef main在定义函数之前。

0 投票
1 回答
403 浏览

windows - 使用 Eclipse 构建 Windows SDL 项目时,如何防止控制台出现?

当您运行 .exe 时,会出现 SDL 窗口,但也会出现控制台窗口。我如何单独获得 SDL 窗口?

我应该更改什么配置选项?有吗?

我正在使用 MinGW 进行编译并使用 Eclipse Ganymede。

0 投票
3 回答
1897 浏览

c++ - 为什么 SDL_Mixer 不能播放某些 mp3 的音乐?

为什么 SDL_Mixer 不能播放某些 mp3 的音乐?

我正在创建的应用程序中使用 SDL_Mixer 播放音乐。在某些歌曲(实际上是整张专辑)上,音乐根本不会播放而不会返回任何错误。音乐数据使用 Mix_LoadMUS 成功加载,当使用该数据执行 Mix_PlayMusic 时,它奇怪地返回 0 表示成功但不播放音乐。我还尝试阅读 Mix_GetError() 和 SDL_GetError() (我相信它们是相同的),看看它是否会引发错误,但没有这样的运气。

我的问题是,SDL_mixer 无法播放特定 mp3 的其他原因是什么?

我知道 mp3 的功能很强大,因为我可以在其他音乐播放器中播放它们。由于 Mix_PlayingMusic 返回 0,我还知道他们没有在播放(与音量可能被调低相反)。

谢谢大家!

0 投票
3 回答
1868 浏览

c++ - 从 SDL 检测可执行文件夹

我正在创建一个 C++ SDL 游戏引擎,并且了解可执行文件路径是相关的,因为图像和其他资源不存储在可执行文件中 - 它们位于单独的文件夹(“res/”)中。

在 Linux 下,我使用一个 shell 脚本“rungame.sh”,它 cd 到可执行文件路径,然后运行可执行文件(然后使用“./”来引用可执行文件夹)。但是,我相信这是一种“丑陋”的方法,我希望它与 Windows 兼容。

此外,当前的方法不是很好,因为它可能会改变某些命令行参数的含义。

我想要一个跨平台(*NIX、Windows 和 Mac OS X,如果可能的话)解决方案来获取可执行文件的当前路径。游戏路径/可执行文件名称可能会改变。

解决我的问题的最简洁方法是什么(最好使用 std::string 和尽可能少的平台相关 API)?

0 投票
1 回答
1781 浏览

c++ - 初始化 SDL_Surface 时遇到问题

我正在尝试在 SDL [in C++] 中设置一些东西,我可以在其中绘制一个像素大的矩形。除了我的第二个 SDL_Surface 称为矩形之外,我的代码中的所有内容都可以正常工作。我在初始化它时遇到问题。这是我尝试初始化它的行:

感谢您花时间阅读本文以及您可能选择给出的任何答案。

0 投票
2 回答
650 浏览

c++ - 从 SDL_GetCursor() 返回的 SDL_cursor 不能与 SDL_GetMouseState() 一起使用?

我试图在 SDL 中获取鼠标的 x、y 和状态。我尝试使用线条

但它给了我错误

C:[path]\particletest2\main.cpp|107|错误:请求成员SDL_GetMouseState' inSDL_GetCursor()',属于非类类型`SDL_Cursor*'|

有什么办法可以让它工作吗?当 SDL_GetCursor() 应该创建一个对象来为您返回时,创建一个 SDL_cursor 对象似乎是一种浪费。

0 投票
2 回答
548 浏览

c++ - 编译 c++ 应用程序,以便它们也可以在其他计算机上工作

所以我有一个非常简单的 SDL 应用程序,我希望能够将其传递给我的朋友,而无需让他下载一大堆 SDL 包。

我该怎么办?有人告诉我使用这一行进行编译:(请注意,我使用 ubuntu linux,我的朋友也是如此,并且这个应用程序在没有“-Wl,-Bstatic”选项的情况下编译和运行就可以了。)

但后来我得到这个错误:

为什么我会收到此错误?我如何解决它?我什至必须这样做吗?有没有不同/更容易/替代的方式?

为了让我的朋友免去下载他可能永远不会使用的软件包的麻烦,我是否要求这么多?

谢谢。

0 投票
4 回答
8009 浏览

c++ - 为什么我的 OpenGL 不会绘制任何东西?

我正在将我的开源粒子引擎测试从 SDL 移植到 SDL + OpenGL。我已经设法让它编译并运行,但无论我做什么,屏幕都保持黑色。主.cpp:

glengine.h:

窗口.h:

glengine.cpp(要查看的主要文件):

最后是window.cpp:

无论如何,我真的需要完成这个,但我已经尝试了我能想到的一切。我以许多不同的方式测试了 glengine 文件,使其在某一时刻看起来像这样:

它仍然没有工作。我真的在这个问题上束手无策。

0 投票
3 回答
6573 浏览

opengl - GLUT死了吗?

在阅读了 Ubuntu 论坛上关于GLUT 与 FreeGLUT的讨论之后。

GLUT 对图形编程来说已经死了吗?SDL 现在对于 OpenGL 编程是否风靡一时?