SharpDX Content.Load‹Texture2D›

Я только что установил SharpDX 2.5.0 в Visual Studio, и теперь есть одна действительно любопытная и неожиданная ошибка:

Я хотел начать с Pong от Atari, поэтому я нарисовал файл .bmp с мячом, преобразовал его в файл .dds с

Easy2Convert BMP в DDS

добавил его в Контент и попытался загрузить. Поэтому я добавил эту строку

ballTexture = Content.Load("Мяч");

но это не удалось с сообщением AssetNotFoundException, то же самое с

ballTexture = Content.Load("Ball.dds");

и вряд ли можно найти учебники, и я не нашел полезного ответа ... Вот полный путь к этой картинке:

H:\Programmieren\Pong\Pong\Content\Ball.dds

С нетерпением жду ваших ответов, и, пожалуйста, извините за мои знания, я привык к XNA, и это было намного проще...


person SonneXo    schedule 03.11.2013    source источник
comment
Может быть нужно указать папку, в которой находится файл? например: Content.Load("Content\Ball.dds"); ? И вы также можете попробовать добавить полный путь в строку, если это не сработает.   -  person UnholySheep    schedule 03.11.2013


Ответы (1)


В SharpDX.Toolkit содержимое загружается из папки относительно папки, в которой находится ваша программа. Также вы должны пометить текстуру действием сборки ToolkitTexture (открыть свойства файла в Visual Studio).

После сборки файл следует скопировать по следующему пути:

H:\Programmieren\Pong\Pong\bin\Debug\Content\Ball.tkb`

(расширение может быть другим - точно не помню).

После этого вы можете загрузить актив, вызвав ballTexture = Content.Load(@"Content\Ball");

Кроме того, вы можете указать корневой путь для менеджера содержимого во время инициализации:

Content.RootDirectory = "Content";
...
//and load the textures with
ballTexture = Content.Load(@"Ball");

Все это продемонстрировано в примерах набора инструментов SharpDX (находится в Samples\SharpDXToolkitSamples.sln).

person Artiom Ciumac    schedule 06.11.2013