Bobadi Ответов: 1

Как визуализировать модель в visual studio 2019 C++


Я разработал игру с помощью Visual Studio 2008 под управлением Windows 7. Программное обеспечение импортирует модели из DirectX (файлы.x), обертывает модели в текстуру (.bmp или .jpg), выводит их на экран, и я обнаруживаю, когда игрок нажимает на них. Затем мой компьютер умер, и теперь у меня есть Windows 10 и Visual Studio 2019. Мое программное обеспечение больше не будет строиться! Visual Studio больше не может импортировать файлы .x (это незначительная проблема, потому что я могу вернуться в Blender и реэкспортировать все модели в другом формате). Я потратил много часов на поиски решения, но безуспешно. Может ли кто-нибудь указать мне пример программы, которая может достичь следующего:
1. сборка под Windows 10, Visual Studio 2019, C++.
2. импортируйте простую 3D-модель из файла во время выполнения. (любой формат в порядке, если его можно экспортировать из Blender)
3. Рендер модели, обернутые в текстуры (.BMP или .в формате JPG)
4. выйдите, когда модель будет нажата.
5. Спасите мой рассудок.
Спасибо

Что я уже пробовал:

Получение справки по электронной почте от Microsoft - ничего, что работает.
Файлы справки Microsoft - никакой помощи вообще.
Примеры программ Microsoft - не удается найти ту, которая загружает модель из файла.
Примеры программ от Autodesk для использования файлов FBX. Они не работают.
Поиск в интернете в течение многих часов, включая codeproject.

Gerry Schmitz

Вы просматриваете "ошибки сборки" и исправляете их. Вы ищете решение (обновление магии), которое, по-видимому, не существует.

Bobadi

"Ошибки сборки" - это в основном ссылки на файлы и типы DirectX, которые больше не существуют. Несмотря на многочасовые поиски, я не могу найти, чем их заменить, поэтому не могу "исправить их". Только один пример: у меня есть вызов D3DXCreateTextureFromFileEx, эта процедура не существует в новом SDK.

Gerry Schmitz

DirectX не "вышел на пенсию", поэтому вы ищете эквивалент. Вы не выбрасываете целую платформу, потому что они сделали что-то с одной функцией.

https://support.microsoft.com/en-ca/help/179113/how-to-install-the-latest-version-of-directx

Bobadi

Я знаю, что DirectX не "вышел на пенсию", но последняя версия не принимает модели в формате .x. Я с удовольствием использую любой другой формат модели, который будет работать. Я не собираюсь "выбрасывать всю платформу". Одна функция, которую я упомянул, - это просто пример. Я установил последнюю версию DirectX, но мне не удалось найти в ней функции, эквивалентные функциям, которые я использовал в предыдущих версиях.

Gerry Schmitz

Я удивлен отсутствием усилий, которые были приложены "сообществом.x", чтобы не придумать "импортера .X". Я подумаю о том, чтобы написать его, если возникнет такая необходимость. В противном случае я бы, вероятно, подумал о взаимодействии с Unity 3D для графики выше и выше того, что предлагает WPF или UWP.

Shao Voon Wong

Не утруждайте себя написанием импортера .X самостоятельно. Это очень сложный формат файла. Еще не существовало парсера, который мог бы загрузить все .Икс там, последний раз, когда я проверял.

Gerry Schmitz

Я предпочитаю трудное и сложное легкому. Вот почему они обычно нанимают меня: идти туда, где другие боятся и терпят неудачу.

Shao Voon Wong

Узнайте, какую версию DirectX использует ваш проект, установите его SDK и обратитесь к заголовкам и библиотекам соответственно.

Bobadi

Вы предлагаете установить старый DirectX SDK, который я использовал с Visual Studio 2008? Могу я это сделать? Сработает ли это?

Shao Voon Wong

Да, это должно сработать.