Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / CreateDDSTextureFromFile, directx toolkit

CreateDDSTextureFromFile, directx toolkit

Поделиться
BernsПользовательwww16 окт. 201717:47#0
мозги уже вспухли от этого, ну никак не хочет компилироваться. к новому VS пока только привыкаю. уже пробовал многие варианты кода, и отдельно DDSTextureLoader.h скачивать, может и directx toolkit  не там достал, кто знает, подскажите пожалуйста. верстаю многобайтовую кодировку
  ID3D11Texture2D* texture;
  ID3D11ShaderResourceView* shaderResView;
  auto tex_path = "SomeTexture.dds";

  //hr = CreateDDSTextureFromFile(Device, tex_path, nullptr, &shaderResView, MAXSIZE_T);
  hr = CreateDDSTextureFromFile(Device, tex_path, nullptr, &shaderResView);

собственно, что при таком варианте выдает:

error C2665: 'CreateDDSTextureFromFile': none of the 5 overloads could convert all the argument types

mr.DIMASПостоялецwww16 окт. 201719:01#1
Тут выводится тип const char * для строки
auto tex_path = "SomeTexture.dds";

CreateDDSTextureFromFile требует путь в виде wchar_t *, поэтому замени код выше на

auto tex_path = L"SomeTexture.dds";
Тут будет выводиться тип const wchar_t *

Правка: 16 окт. 2017 19:02

BernsПользовательwww16 окт. 201721:15#2
большое спасибо, на всякий случай оставлю информацию для тех, кто будет с этим бодаться

собственно, это функция из DDSTextureLoader, я только скопипастил и заинклудил эти файлы:

#include "DDSTextureLoader.h"
#include "DDSTextureLoader.cpp"

после чего следующий код без упреков заработал и походу даже создал мип-мапы:

   hr = CreateDDSTextureFromFile(Device, L"seafloor.dds", nullptr, &g_pTextureRV);

slava_mibМодераторwww17 окт. 20175:01#3
Насколько помню, мамапы CreateDDSTextureFromFile создаёт только если ему передать контекст. Чего я делать очень не советую (иначе потом с многопоточной загрузкой ресов будут краши).
А вот если эти самые мип-мапы есть в самом ДДС файле - то оно их загружает, естественно.

/ Форум / Программирование игр / Графика

2001—2017 © GameDev.ru — Разработка игр