1

我正在用 C++ 开发一个游戏,这是我第一次想向其他人展示我的作品。

我遇到了一个问题,我无法找到如何完成包含所需图像的 .exe 文件。我已经阅读了一些讨论应该如何完成的网站,但没有提供所有步骤。

如果有人对如何做到这一点有任何可靠的资源,我将不胜感激。

编辑:使用 Windows 7 64 位

4

2 回答 2

6

通常图像不会嵌入二进制文件中,因为从性能的角度来看这是毫无意义的(为什么要将单个图像的数百万字节数据嵌入二进制文件中?强制将所有图像与可执行文件一起加载? )。

通常做的是有一个资源文件夹,通常相对于 exe 工作目录,以便您的二进制文件能够直接从磁盘(或您使用的任何设备)加载它们。

当您分发游戏时,您只需通过保持相同的文件夹结构来附加所有内容。

根据您使用的技术,您所要求的可能是可能的,但我看不出这样做的意义。

于 2013-01-19T21:09:48.640 回答
1

您应该查看链接器的文档,或者至少询问指定您使用哪个链接器的问题——这是的工作。

例如,这在某些时候对我有用:

脚本:

ld -r -b binary monster_die.wav -o monster_die.o
(link monster_die.o eventually into the executable)

sfx.h:

extern char binary_monster_die_wav_start;
extern char binary_monster_die_wav_end;
static const char* monster_die_wav = &binary_monster_die_wav_start;
static const size_t monster_die_wav_size =
    &binary_monster_die_wav_end - &binary_monster_die_wav_start;
于 2013-01-19T21:11:57.890 回答