【发布时间】:2015-08-21 15:00:15
【问题描述】:
基本上,我想要一个包含文本和图像的纹理。
我该怎么做呢? 我一直在用 Google 搜索,但似乎找不到将表面与其他表面、纹理与其他纹理或表面与纹理相结合的方法。
编辑: 所以,我正在制作一个简单的 RPG,我想要它,以便当你与 NPC 交谈时,该 NPC 可以或不能将图像附加到文本中。
理想情况下,我会通过将文本和图像发送到一个函数来生成我可以渲染的纹理,而不必担心渲染两个不同的纹理,以及它们应该放置在哪里。
类似这样的:
void setSayingText(std::string const& text, std::string const& imageLoc = "") {
SDL_Surface* text = TTF_RenderText_Blended(font, text.c_str(), whiteColor);
if (imageLoc != "") {
SDL_Surface* image = IMG_Load(imageLoc);
texture = SDL_CreateTextureFromSurface(renderer, text + image);
} else {
texture = SDL_CreateTextureFromSurface(renderer, text);
}
}
【问题讨论】: