问题标签 [sdl-image]

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 回答
113 浏览

c++ - SDL 不加载/显示正确的图像

我正在写一个简单的游戏。我被一个错误所困扰,我无法弄清楚是什么原因。在我写的代码中:

但是当我在监视器中编译时 DxFrame[4] 不是应该的。事实上,他变成了 SxFrame[0]。我不明白为什么会这样。

编辑这是图像加载器:

我认为没有更多相关的代码。

0 投票
1 回答
6176 浏览

sdl - SDL2 中的纹理渐变 - 使用 SDL_image

我可以使用 SDL_image 毫无问题地加载(png)图像,并且可以完美地显示它。不过,我想做的是将图像从完全透明逐渐淡入完全不透明。我看过一些教程提到SDL_SetAlpha,但这是用于SDL_SurfaceSDL_image 加载的地方,就像SDL_Texture硬件加速一样。

任何人都可以在保持良好性能的同时帮助解决这个问题吗?

0 投票
1 回答
2446 浏览

c++ - C++ - SDL/OpenGL 加载图像的颜色被反转

我正在尝试将图像加载到我的游戏中。它是用 C++ 编写的,带有 SDL 和 OpenGL,以及 SDL_Image 框架。我已经获得了图像,并根据我的需要对其进行了旋转/反转,但是有两个主要问题。

首先,图像的颜色完全反转。(即蓝色-> 红色)我的格式为“GL_RGB”或“GL_RGBA”,具体取决于每个像素的字节数。我尝试过使用 PNG、JPEG 和 BMP,但它们都一样。我迷路了! --感谢 datenwolf 纠正我的愚蠢错误!

其次,图像绘制一次,仅此而已。它不会在另一个缓冲区上重新绘制,它只会显示一次,然后在绘制下一帧时立即消失。

0 投票
1 回答
181 浏览

c++ - 在使用其他图形时使用 SDL_ttf 绘制文本

我正在使用 SDL 制作这个游戏,我需要能够为变量和信息等显示文本。问题是我无法渲染任何文本,而 SDL_OPENGL 是 SDL_SetVideoMode() 中的参数。

没有它可以完美地工作,但我无法渲染我的任何图形。显然我需要两者,我宁愿不去为文本绘制图像。

TL;DR 我需要在不从 SDL_SetVideoMode(SCREEN_WIDTH,SCREEN_HEIGHT,32,SDL_SWSURFACE | SDL_OPENGL) 中删除 SDL_OPENGL 的情况下绘制文本;

如果有帮助,我正在使用 C++ 和 code::blocks。还需要什么其他信息吗?

0 投票
1 回答
519 浏览

c++ - SDL:在背景而不是屏幕上进行闪烁?

嗨,我正在开发 SDL/C 游戏,我制作了一个带有大背景 (6000*1024) 和 (1024*768) 屏幕的相机滚动,

所以如果我想在屏幕上粘贴一些东西作为目的地:

移动时它会跟随相机,对于敌人来说不是这样,他们应该在背景而不是屏幕上移动!

因此,如果我在背景上将某些东西作为目的地,我会遇到以下问题,

移动时旧图像保留在背景上 ,如下图所示:

0 投票
1 回答
2453 浏览

c++ - Xcode SDL 资源文件夹

我正在 Xcode 中创建一个 SDL 项目,并且我有一个名为 resources 的文件夹来存储我的图像。为了让我的 SDL 应用程序使用 SDL_LoadBMP 访问这些图像,资源文件夹需要与可执行文件位于同一文件夹中。我不想每次我想运行应用程序时都将我的资源复制并粘贴到“/Users/admin/Library/Developer/Xcode/DerivedData/SDL_app-awvygturnguyeqgwpjowmouadbjf/Build/Products/Debug”文件夹中(我不知道为什么所有随机字符都在文件夹链接中)。我一直在关注 Lazy Foo 的第一个 SDL 教程: http: //lazyfoo.net/SDL_tutorials/lesson01/index2.php我正在尝试在屏幕上显示图像。我不需要在这里显示我的代码,因为它与我链接到的教程完全相同,除了 SDL_LoadBMP("hello.bmp") 它是 SDL_LoadBMP("resources/images/hello.bmp")。只要我将资源文件夹复制到产品目录中,该应用程序就会运行。我打算展示文件夹的图像等等,但我没有足够的“声誉”。

0 投票
1 回答
384 浏览

opengl - 纹理不显示,网格显示为黑色

似乎每次我尝试让纹理在我的 OpenGL 应用程序中工作时,我都会错过一些明显的东西,最终我会花费很多时间进行调试。好吧,它又发生了,尽管我已经尝试将我的代码与较旧的工作应用程序进行比较已有一段时间了,但我仍然缺少一些东西,因为纹理根本没有显示。网格显示为黑色。我没有收到任何 OpenGL 错误。

对于缩小问题范围的帮助,我将不胜感激。

这是我的代码的一部分,我很确定我的错误出在代码的这些区域:

OpenGL.cpp:

简单的.vsh:

简单的.fsh:

0 投票
1 回答
1296 浏览

sdl - 如何在 CodeBlocks 中设置其他 SDL 库?

我想设置 SDL_Image、SDL_Mixer 和 SDL_TTF,但它似乎不起作用。我正在关注 Lazy Foo 的 SDL 教程,并尝试按照他所说的进行设置,但它不起作用。我将所有包含文件放入包含文件夹,并将所有 lib 文件放入 lib 文件夹。我发现lib文件夹中有x86和x64文件夹。当我尝试 x64(因为我有一个 64 位系统)时,一切正常,CodeBlocks 甚至告诉我建议(比如当我写“img”时,它显示了一个建议“IMG_Load”,但是当我开始编译我的代码时,发生这种情况:http://puu.sh/3Eqa5.png当我尝试使用 x86 版本时,它不起作用,因为弹出了一些 SDL.exe 错误。

我真的不知道是什么问题!任何人都可以帮忙吗?

0 投票
3 回答
11931 浏览

image - “对‘IMG_Load’的未定义引用”代码块和 SDL_Image 错误

我正在通过 Lazy Foo 的教程学习 SDL,但由于 IMG_Load 似乎不起作用,我无法继续进行。我试着按照他说的那样设置它,但它不起作用。我将所有包含文件放入包含文件夹,并将所有 lib 文件放入 lib 文件夹。我发现lib文件夹中有x86和x64文件夹。当我尝试 x64(因为我有一个 64 位系统)时,一切正常,CodeBlocks 甚至告诉我建议(比如当我写“img”时,它显示了一个建议“IMG_Load”(这意味着库被初始化了?)) ,但是当我开始编译我的代码时,会发生这种情况: http: //puu.sh/3Eqa5.png。当我尝试使用 x86 版本时,完全相同的错误。

我在互联网上进行了一些搜索,我只能找到一些线程,但大多数都被放弃了。我最接近回答我的问题的是:http ://www.dreamincode.net/forums/topic/118299-sdl-image-error-sdl/但是这个人通过下载一个 Linux 可以使用的问题解决了他的问题,不是 Windows。}

我正在运行 Windows 7 64 位、CodeBlocks 12.11、SDL 1.2.15 和 SDL_Image 1.2.12。

我真的不知道是什么问题!

0 投票
1 回答
560 浏览

c++ - SDL C++ 程序在大约 12 秒后持续崩溃

我目前正在用 C++ 中的 SDL 制作一个简单的游戏。当我使用命令行在 Ubuntu 中编译和运行游戏时,游戏运行完美,没有任何问题。但是,当我尝试在 Windows 7 中使用 Codeblocks 编译相同的代码时,程序每次在大约 12 秒后崩溃。我已经使用 GDB 搜索了与内存相关的问题,并检查了所有资产(图像、音乐等)是否都在正确的目录中,但是没有任何东西可以帮助解决这个问题。在 Windows 中编译 SDL 或 C++ 代码时,我是否缺少一些在 Linux 中不需要的东西?

任何帮助是极大的赞赏。

这是我的代码的链接: https ://www.dropbox.com/s/gebuas2xc9esq82/src.zip

使用以下行仅编译 main.cpp 文件: g++ -o main main.cpp -lSDL -lSDL_image -lSDL_mixer -lSDL_ttf

您必须安装 SDL、SDL_image、SDL_mixer 和 SDL_ttf 才能编译此代码。