问题标签 [sdl-1.2]

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 投票
1 回答
254 浏览

c++ - 为什么 SDL_Flip 不限制 FPS 以匹配屏幕频率?

我将 SDL 1.2 和 VS2008 用于较小的类似游戏的应用程序。我最近(在从 SO 上的其他帖子中获得了一些我现在找不到的想法之后,如果您觉得我应该将您的问题链接起来以供参考,非常抱歉)重新编写了我的游戏循环以不使用 Sleep 或 SDL_Delay 进行计时。相反,我以已知频率调用我的游戏逻辑,并根据实际时间步长计算距离和位置。

执行此操作时,我预计 FPS 会被 SDL_Flip 限制为屏幕的帧速率(vsynch?),但我最终在运行 Windows 7 的机器上获得了大约 300 FPS。这可能是什么原因?您可以在监视器 vsynch 之间多次运行整个游戏循环(包括 SDL_Flip)吗?不同机器上的行为是否可能不同,或者 SDL_Flip 永远不应该与 vsynch 同步?我没有看到我期望的不同步屏幕更新的任何闪烁或其他影响。

这是我的游戏循环供参考:

编辑: 固定 FPS 忙等待看起来像这样。代替

与使用 SDL_Delay 或 Sleep 相比,这提供了一种更稳定的结果,至少在我的机器上,您会得到一些可变的 FPS。两者当然都打破了示例中 processEvents() 的时间安排。

还添加了 SDL_Delay 变体以确保完整性:

0 投票
1 回答
181 浏览

xcode - (SDL 1.2) SDLMain.m 在 Xcode 中有警告

我在使用本教程制作的 Xcode SDL 项目中遇到问题

有什么问题?

截屏

0 投票
1 回答
709 浏览

c++ - SDL:使现有表面透明/删除所有像素数据

我在 SDL 中有一个透明表面,这个表面包含像素数据。我现在需要“清除”这个表面。

有没有办法清除表面,所以它完全透明(所以我可以在上面画新的东西?)。我发现的唯一方法是创建一个全新的表面,但出于几个原因我想避免这种情况。

0 投票
1 回答
810 浏览

c++ - 如何使用 SDL 1.2 在 Xcode 6 中设置 SDL_gfx?

我正在使用 SDL 1.2,但不确定如何将 SDL_gfx 添加到 Xcode 项目中。我从cms.ferzkopp.net 下载了 .zip 文件。下一步需要做什么才能在 Xcode 中添加 SDL_gfx?

0 投票
1 回答
52 浏览

c++ - SDL 1.2.15 扩展表面问题

当我通过操纵 h 和 w 成员使表面变大时,我最终得到了奇怪的结果 - 增加的空间充满了表面上已经存在的乱码版本。有什么方法可以避免这种情况/清除添加的空间(将其设置为 alpha)?

在此处输入图像描述

0 投票
1 回答
339 浏览

c - 使用 SDL 1.2 的 C 中的自定义旋转功能并没有真正起作用

出于学术目的,我必须进行 OCR。我不知道我是否可以在 SDL 中使用嵌入式旋转函数,所以我编写了一个基本的旋转函数。它似乎有效,但我有一些问题:它仅适用于某些图像,并且当它有效时,新图像有点混乱。例子:

旋转前的图像:

在此处输入图像描述

旋转 60 度后的图像:

在此处输入图像描述

这是我的代码:

我究竟做错了什么?

0 投票
0 回答
299 浏览

c++ - blitting 时保留 alpha

blitting 时如何保留 alpha 值?我想将具有各种 alpha 值的多个黑色方块粘贴到一个表面上,然后将该表面粘贴到屏幕上。我尝试的一切都只是在一个坚实的不透明黑色表面上涂抹。

编辑:

我想要的是这样的:

通缉

我得到的是:

得到这个

编码

0 投票
1 回答
264 浏览

c++ - 为什么我的图像无法渲染?

所以我正在使用 SDL 学习 C++(在 Visual Studio 2013 上)。我正在关注 Lazy Foo 的教程(特别是:http: //lazyfoo.net/tutorials/SDL/02_getting_an_image_on_the_screen/index.php)。

我的图像不会渲染。与教程(有效)相反,我没有全局表面变量。相反,我主要声明了它们并传递了指针。

代码:

0 投票
0 回答
371 浏览

xcode - 除非在 /Library/Frameworks 中安装了框架,否则 SDL 应用程序不会打开

我在 OSX 10.8 上使用 Xcode 3.1.4 构建了一个非常简单的应用程序。

如果我将 SDL.Framework 安装在/Library/Frameworks/SDL.framework. (来自 SDL 站点的 SDL 1.2.15。)

我还在另一台装有 OSX 10.9 的 Mac 上进行了尝试。它在那里也不起作用,并带有相同的错误消息:

我试图在 Stack Overflow 和其他网站上找到答案,但到目前为止无法提出任何建议。

例如,我尝试在创建应用程序后运行此脚本:

0 投票
2 回答
1316 浏览

c++ - 如何在 SDL 1.2 表面上有效地更新单个像素?

我正在写一个计算图像每个像素的 rgb 值的小东西。

我想在计算后显示每一个。问题是我不知道如何快速做到这一点。计算完整的图像然后显示它需要几秒钟,而正确显示每个像素需要几分钟。

重要的是我可以看到图像计算的进度。有没有办法在 SDL 1.2 中有效地解决这个任务?

我的代码现在如下所示: