我正在使用Leadwerks游戏引擎,我试图让Awesomium渲染到Leadwerks纹理但没有运气。下面是我创建纹理的代码,分配unsigned char *变量,我将Awesomium表面放入通过CopyTo()然后将该变量设置为LEadwerks纹理,但屏幕保持黑色这么清楚我不明白这里的东西。关于我失踪的任何想法?
Texture* uiTex = Texture::Create(window->GetWidth(), window->GetHeight());
unsigned char* pixels = (unsigned char*)malloc(uiTex->GetMipmapSize(0));
// copy surface to LE texture and draw that texture to screen
BitmapSurface* surface = static_cast<BitmapSurface*>(view->surface());
surface->CopyTo(pixels, 1024, 32, true, false);
uiTex->SetPixels((char*)pixels);
context->DrawImage(uiTex, 0, 0);
答案 0 :(得分:0)
我知道这已经过时了但是如果像我这样的一些不幸的混蛋将来偶然发现这一点,那么可能会有一些指导。
首先检查Awesomium中是否已正确设置所有内容。否则它看起来会很好,但返回的表面将只是null。
将Awesomium表面保存到文件并检查以确认它是否首先生成。