2014-02-04 9 views
3

Я создал simple model of a barrel (.zip) в Blender 2.69. Затем я создал UV-карту в Blender и сделал из нее UV-карту текстуры (ее тоже в архиве). Тогда я импортировал мою текстуру в Blender, теперь отображение совпадений:jme3 - УФ-карта неуместна на модели, экспортируемой из Blender

The mapping

В Blender модель выглядит хорошо до сих пор:

Model in Blender

Используя экспортер плагин Ogre, который я установил через SDK jmonkeyengine, я экспортировал модель. Результатом этого является мой файл формата OgreXML для ствола (я не экспортировал материал).

Теперь, я пытался добавить ствол в мой мир, как это:

this.barrel = this.assetManager.loadModel("models/barrel/Barrel.mesh.xml"); 

Material barrelMat = new Material(this.assetManager, 
     "Common/MatDefs/Light/Lighting.j3md"); 
barrelMat.setTexture("DiffuseMap", 
     this.assetManager.loadTexture("models/barrel/Barrel.jpg")); 
barrelMat.setBoolean("UseMaterialColors", true); 
barrelMat.setColor("Diffuse", ColorRGBA.White); 
barrelMat.setColor("Specular", new ColorRGBA(0.3f, 0.1f, 0, 1)); 
barrelMat.setFloat("Shininess", 4f); 
this.barrel.setMaterial(barrelMat); 

this.rootNode.attachChild(this.barrel); 

Результат таков:

The failed barrel image

Есть ли что-то еще, что я должен учитывать при настройке текстуры для моей модели с отображением UV?

ответ

2

Часто при переносе моделей из Blender в нечто вроде JME текстуры будут перевернуты. Где вы загружаете текстуру:

barrelMat.setTexture(“DiffuseMap”, 
        assetManager.loadTexture(“models/barrel/Barrel.jpg”)); 

Вместо этого используйте TextureKey форму метода LoadTexture() и передать yFlip ложное, так как истинное значение по умолчанию.

assetManager.loadTexture(new TextureKey(“models/barrel/Barrel.jpg”, false)); 

Это должно решить вашу проблему.

Список литературы:

LoadTexture(): http://hub.jmonkeyengine.org/javadoc/com/jme3/asset/AssetManager.html#loadTexture(com.jme3.asset.TextureKey)

TextureKey: http://hub.jmonkeyengine.org/javadoc/com/jme3/asset/TextureKey.html#TextureKey(java.lang.String,%20boolean)

 Смежные вопросы

  • Нет связанных вопросов^_^