Как добавить разные текстуры в один и тот же .obj через идентификатор объекта в сцене? - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть модель .obj на сервере, которая загружается в ModelRenderable с помощью Uri.parse ("").Все, что я могу сделать, это загрузить одну текстуру в целую модель с помощью ультрафиолетового отображения.Но я хочу загрузить модель с несколькими текстурами из идентификатора o Mesh01 и o Mesh02 - это имя объекта внутри модели.Мой код для рендеринга модели:

ModelRenderable.builder()
          .setSource(this, RenderableSource.builder().setSource(
                  this,Uri.parse(url2),RenderableSource.SourceType.GLB)
                  .setScale(0.1f)  // Scale the original model to 50%.
                  .setRecenterMode(RenderableSource.RecenterMode.CENTER)
                  .build())
           //.setSource(this, R.raw.model)
          //.setRegistryId(GLTF_ASSET)
          .build()
           .thenAcceptBoth(futureTexture, (renderable, texture) -> {
               andyRenderable = renderable;
               Log.d("rikesh", "onCreate: "+andyRenderable.getSubmeshCount());
               andyRenderable.getMaterial().setTexture("baseColor", texture);
           })
          .exceptionally(
                  throwable -> {
                      Toast toast =
                              Toast.makeText(this, "Unable to load renderable " +
                                      url, Toast.LENGTH_LONG);
                      toast.setGravity(Gravity.CENTER, 0, 0);
                      toast.show();
                      return null;
                  });

, а код для модели .obj o Mesh01 и o Mesh02 - это объекты модели .obj , в которые я хочу поместить текстуры внутриэто.

...