首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Threebox中的GLTF obj颜色主题

Threebox中的GLTF obj颜色主题
EN

Stack Overflow用户
提问于 2020-12-26 11:55:17
回答 2查看 139关注 0票数 1

我用下面的代码在mapbox by threebox中插入了一个GLTF对象。obj的外观看起来很暗。是否有任何选项可用于更改GLTF对象的颜色主题?

代码语言:javascript
复制
     var options = {
              obj: './models/WMK-CSC-ALL-XX-XX-00_0.gltf',
              mtl: './models/WMK-CSC-ALL-XX-XX-00_0.bin', 
              type: 'gltf',
              scale: 1,
              units: 'meters',
              rotation: { x: 90, y: 120, z: 0 }, 
              anchor: 'center'
        }

      tb.loadObj(options, function (model) {
                let bldg = model.setCoords(origin3);
                tb.add(bldg);
        })

EN

回答 2

Stack Overflow用户

发布于 2020-12-26 15:33:35

如果你使用的是Threebox,首先你的初始化参数是错误的,而不是:

mtl: './models/WMK-CSC-ALL-XX-XX-00_0.bin'

它应该是:

bin: './models/WMK-CSC-ALL-XX-XX-00_0.bin'

如果使用默认灯光正确初始化Threebox:

代码语言:javascript
复制
window.tb = new Threebox(
    map,
    map.getCanvas().getContext('webgl'), //get the context from the map canvas
    { defaultLights: true }
);

它应该有一个AmbientLight和两个DirectionalLight很好地照亮。我正在维护最新版本的threebox,如果这不能解决您的问题,请随时在那里打开问题。

票数 0
EN

Stack Overflow用户

发布于 2020-12-26 16:06:14

感谢您的投入。我添加了两个"DirectionalLight“来解决这个问题。

代码语言:javascript
复制
onAdd: function (map, mbxContext) {

                    tb.altitudeStep = 1;

                    //// initialize geometry and material of our cube object
                    var geometry = new THREE.BoxGeometry(30, 60, 120);

                    // create two three.js lights to illuminate the model
                    var directionalLight = new THREE.DirectionalLight(0xffffff);
                    directionalLight.position.set(0, -70, 100).normalize();
                    tb.scene.add(directionalLight);
                     
                    var directionalLight2 = new THREE.DirectionalLight(0xffffff);
                    directionalLight2.position.set(0, 70, 100).normalize();
                    tb.scene.add(directionalLight2);
                    ....
                    ....
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65453505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档