Объект успешно загружен, но не отображается - PullRequest
0 голосов
/ 23 января 2019

Я использую Nuxtjs + Threejs.Скрипт по умолчанию с сайта показывает geometry и анимацию правильно.Я хочу использовать пользовательскую модель, поэтому я устанавливаю OBJLoader и MTLLoader, используя npm, пакеты установлены успешно.template:

<template>
  <div id="three" class="three">

  </div>
</template>

Код сценария:

<script>
import * as Three from 'three'
import { MTLLoader, OBJLoader } from 'three-obj-mtl-loader'

export default {
  data() {
    return {
      camera: null,
      scene: null,
      renderer: null,
      mesh: null,
      mtl: null,
      obj: null
    }
  },
  methods: {
    init: function() {
        let container = document.getElementById('three')

        this.camera = new Three.PerspectiveCamera(70, container.clientWidth/container.clientHeight, 0.01, 10)
        this.camera.position.z = 1

        this.scene = new Three.Scene()
        this.mtl = new MTLLoader()
        this.obj = new OBJLoader()

        this.mtl.load('/mesh/sources/Coffee Hot Cup Sketchfab.mtl', (materials) => {
          materials.preload()
          this.obj.setMaterials(materials)
          this.obj.load('/mesh/sources/Coffee Hot Cup Sketchfab.obj', (object) => {
            this.scene.add(object)
          })
        })

        this.renderer = new Three.WebGLRenderer({antialias: true, alpha: true})
        this.renderer.setSize(container.clientWidth, container.clientHeight)
        this.renderer.setClearColor( 0x000000, 0 )
        this.renderer.render(this.scene, this.camera)
        container.appendChild(this.renderer.domElement)

    }
  },
  mounted() {
      this.init()
  }
}
</script>

Проблема в том, что когда я хочу использовать свою пользовательскую модель, объект не отображается, но говорит, что объект загружен успешно.Я не знаю, если это с пути, он должен показывать не найденную ошибку, но это не так.Как мне это исправить?Спасибо!

1 Ответ

0 голосов
/ 24 января 2019

Убедитесь, что вы установили материал как двусторонний. У меня была похожая проблема с игровым движком Unity. Иногда в загруженных файлах отсутствовали некоторые текстуры. Удостовериться в двухсторонности моих материалов объекта обычно помогло!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...