Файл jMonkeyEngine OBJ не отображается должным образом

Мой Художник создал 3D модель обуви в формате FBX в 3D Studio Max. который выглядит как следующее изображение.

Снимок 3D-модели обуви из файла FBX

я использую jMonkeyEngine в своей программе, и он не поддерживает файл FBX, поэтому я экспортирую FBX в файл wavefront OBJ, 3d studio max также дает мне соответствующий файл mtl.

поэтому, когда я загружаю экспортированную модель obj в свою программу, которая использует jMonkeyEngine в качестве библиотеки, она не выглядит как настоящая обувь, на ней нет текстуры.

Снимок 3D-модели обуви из файла OBJ

программа также показывает одно предупреждение

ВНИМАНИЕ: меш OBJ style_7-geom-0 не содержит нормалей! Может не корректно отображаться

мой метод simpleInitApp

Spatial myModel = assetManager.loadModel("/Textures/Shoes/style_7.obj");
    myModel.scale(0.09f);
    rootNode.attachChild(myModel);

и файл OBJ, и файл материала находятся в одном каталоге. поэтому я думаю, что в соответствии с документом jMonkeyEngine напрямую загружает материал из того же каталога, где находится OBJ.

если вы хотите, я могу загрузить сюда файл OBJ и файл материала, а также все необходимые изображения здесь.

Моя абсолютная цель – отобразить в JmonkeyEngine ту же модель, что и на снимке экрана 1.

что мне не хватает? что я сделал не так ?

Обновление от 16 июля 2013 г.

модель OBJ Файл материала Ресурсы

Спасибо


person Mihir    schedule 15.07.2013    source источник
comment
Просто попросите художника экспортировать сетку с предварительно рассчитанными нормалями.   -  person John    schedule 16.07.2013
comment
привет что это значит? пожалуйста, объясните мне несколько подробностей.   -  person Mihir    schedule 16.07.2013
comment
Вы знаете, что такое норма?   -  person John    schedule 16.07.2013
comment
да это для визуального смещения. мой художник сделал какую-то ошибку при экспорте объекта.   -  person Mihir    schedule 16.07.2013
comment
опубликуйте свой файл .obj.   -  person John    schedule 16.07.2013
comment
Я обновил свои вопросы со всеми ссылками, если вам нужен оригинальный FBX, я тоже могу опубликовать его.   -  person Mihir    schedule 16.07.2013
comment
Этот сайт загрузки, похоже, хочет, чтобы мы зарегистрировались только для загрузки файлов.   -  person Richard Tingle    schedule 16.07.2013
comment
Хотя кажется, что он принимает сумасшедший адрес электронной почты без проверки, так что все в порядке.   -  person Richard Tingle    schedule 16.07.2013
comment
так ты скачал?   -  person Mihir    schedule 16.07.2013
comment
@Mihir Я играл, играл с ним, но не смог его улучшить. Честно говоря, у меня больше опыта работы с пользовательскими сетками, чем с импортом моделей (я знаю, что это странно и неправильно).   -  person Richard Tingle    schedule 16.07.2013
comment
Ваш меш не имеет нормалей, а это значит, что ваш шейдер вообще не может его затенить, если только вы не рассчитаете их во время выполнения. Просто было бы проще просто экспортировать модель с нормалями.   -  person John    schedule 16.07.2013
comment
Хорошо, тогда это будет выглядеть именно так, как показано на первом скриншоте?   -  person Mihir    schedule 17.07.2013
comment
@John, моя первая проблема решена, я экспортировал файл OBJ в обычном режиме, и скелет выглядит как настоящий ботинок, а что насчет его материала?   -  person Mihir    schedule 17.07.2013
comment
@Mihir Обычно решайте 1 проблему на вопрос. См. Стратегии выхода для вопросов-хамелеонов.   -  person Richard Tingle    schedule 17.07.2013
comment
Предполагая, что @John не хочет публиковать свой комментарий в качестве ответа (что вполне может быть идеальным), вы можете самостоятельно ответить на этот вопрос, указав, как вы изменили свои настройки для экспорта модели с нормалями.   -  person Richard Tingle    schedule 17.07.2013
comment
@Джон, пожалуйста, напиши свой ответ, я приму его   -  person Mihir    schedule 18.07.2013


Ответы (1)


Причина, по которой ваша 3D-модель не выглядит такой 3D, заключается в том, что модель не была экспортирована с нормалями. Нормали — это то, что позволяет 3D-движку выполнять затенение (что делает его на самом деле трехмерным). Без нормалей движок не может рассчитать углы, необходимые для затенения, вы можете рассчитать их во время выполнения, выполнив математические вычисления. динамически или просто экспортируя модель с нормалями (предпочтительно).

person John    schedule 18.07.2013