Как установить путь к ресурсу изображения для метода D3DXCreateTextureFromFileEx?

Я пытаюсь объединить все ресурсы изображения в папку с именем resource. Таким образом, установите путь к изображению как "resource/", но моя среда DirectX работает, только если я компилирую на VS 2010. Если я запускаю из папки отладки, она не может работать (я уже копирую все ресурсы изображения в папку отладки)

https://stackru.com/images/2a6fc07e02368e9592aae8d5e40e31041d7fc8aa.png

string folder = "resource/";

void setTexture(LPDIRECT3DTEXTURE9& texture, string imgName, int imgWidth, int imgHeight, D3DCOLOR TransparentColorKey)
{
    string path;

    path = folder + imgName;

    //  Create texture.
    hr = D3DXCreateTextureFromFileEx(d3dDevice, path.c_str(), imgWidth, imgHeight, 
        D3DX_DEFAULT, NULL, D3DFMT_A8R8G8B8, D3DPOOL_MANAGED, 
        D3DX_DEFAULT, D3DX_DEFAULT, TransparentColorKey, NULL, NULL, &texture);
}

2 ответа

Рабочий каталог по умолчанию при отладке из Visual Studio - это каталог проекта, а не каталог, в котором находится исполняемый файл. При использовании относительных путей в вашем приложении вы должны подумать об этом и изменить настройку.

Определите относительный путь к каталогу 'resource' относительно местоположения вашего файла решения проекта (yourProjectName.sln), не относящегося к местоположению вашего файла .exe.

Другие вопросы по тегам