- Статус
- Оффлайн
- Регистрация
- 7 Сен 2017
- Сообщения
- 713
- Реакции
- 163
Здарова, решил перевести лоадер на DX11, и застрял на моменте вывода кастомных картонок.
Если в dx9 я это делал так:
то в dx11 я пробую:
Надеюсь кто скинет пример, и пояснит. Именно такой темы не видел, думаю не только мне будет полезно.
Если в dx9 я это делал так:
C++:
IDirect3DTexture9* g_mainBgImage = nullptr;
BYTE BgImage[/*3291*/] =
{
0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00,
0x00, 0x0D, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x01, 0xFE,
0x00, 0x00, 0x01, 0x40, 0x08, 0x04, ...
}
//init
D3DXCreateTextureFromFileInMemoryEx(
g_pd3dDevice,
&BgImage,
sizeof(BgImage),
800,
600,
D3DX_DEFAULT,
0,
D3DFMT_UNKNOWN,
D3DPOOL_MANAGED,
D3DX_DEFAULT,
D3DX_DEFAULT,
0,
NULL,
NULL,
&g_mainBgImage
);
// ImGui::Image(g_mainBgImage, ImVec2(800, 600));
C++:
static ID3D11ShaderResourceView* g_MainBG = NULL;
BYTE BgImage[/*3291*/] =
{
0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00,
0x00, 0x0D, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x01, 0xFE,
0x00, 0x00, 0x01, 0x40, 0x08, 0x04, ...
}
// init
// и тут 2 аргумента мне не понятны: как загружать байты, или что другое?
g_pd3dDevice->CreateShaderResourceView(???, &m???, &g_MainBG);
// ImGui::Image((void*)g_MainBG, ImVec2(800, 600));
Последнее редактирование: