Javascript babylon.js来自搅拌机的纹理

Javascript babylon.js来自搅拌机的纹理,javascript,webgl,blender,texture-mapping,babylonjs,Javascript,Webgl,Blender,Texture Mapping,Babylonjs,当我试图将一个场景从Blender导出到Babylon.js时,我想到了一些基本问题。我想我真的不明白纹理是如何工作的 让我们举一个基本的例子。我在Blender上创建了一个新场景。只有一盏灯,一架照相机和一个立方体。我对多维数据集选项没有任何更改。我只是在标准材质上应用jpg的纹理。看起来是这样的: 我使用Babylon exporter来创建.Babylon文件。但当我导入它时,不会应用纹理 结果: 我真的不明白为什么。。。 有什么特别的事情要做,使纹理被导入 这是我的进口代码: <s

当我试图将一个场景从Blender导出到Babylon.js时,我想到了一些基本问题。我想我真的不明白纹理是如何工作的

让我们举一个基本的例子。我在Blender上创建了一个新场景。只有一盏灯,一架照相机和一个立方体。我对多维数据集选项没有任何更改。我只是在标准材质上应用jpg的纹理。看起来是这样的:

我使用Babylon exporter来创建.Babylon文件。但当我导入它时,不会应用纹理

结果:

我真的不明白为什么。。。 有什么特别的事情要做,使纹理被导入

这是我的进口代码:

<script>
var canvas = document.getElementById("renderCanvas");
var engine = new BABYLON.Engine(canvas, true);
BABYLON.SceneLoader.Load("", "test.babylon", engine, function (newScene) {
    // Wait for textures and shaders to be ready
    newScene.executeWhenReady(function () {
        // Attach camera to canvas inputs
        newScene.activeCamera.attachControl(canvas);

        // Once the scene is loaded, just register a render loop to render it
        engine.runRenderLoop(function() {
            newScene.render();
        });
    });
}, function (progress) {
    // To do: give progress feedback to user
});
</script>
问这个问题的人在评论中回答了这个问题:


明白了!在Babylon.js中使用纹理时,必须先打开UV贴图,然后才能在Blender中应用纹理

问这个问题的人在评论中回答了这个问题:


明白了!在Babylon.js中使用纹理时,必须先打开UV贴图,然后才能在Blender中应用纹理

从test.babylon文件中查找diffuseTexture属性,并用图像路径替换所有属性值,例如:

"diffuseTexture":{"name":"images/16.png"} 

或者使用javascript添加纹理值,例如:

var floorMaterial=新材料[3]

var floorTexture=new BABYLON.Textureimages/06.jpg,newScene

从test.babylon文件中查找diffuseTexture属性,并用图像路径替换所有属性值,例如:

"diffuseTexture":{"name":"images/16.png"} 

或者使用javascript添加纹理值,例如:

var floorMaterial=新材料[3]


var floorTexture=new BABYLON.Textureimages/06.jpg,newScene

明白了!在Babylon.js中使用纹理时,必须先打开UV贴图,然后才能在Blender中应用纹理!你应该把它贴出来作为回答明白了吗!在Babylon.js中使用纹理时,必须先打开UV贴图,然后才能在Blender中应用纹理!您应该将其作为答案发布,或者使用javascript添加纹理值,例如:var floorMaterial=newScene.materials[3];var floorTexture=new BABYLON.Textureimages/06.jpg,newScene;请将注释中的代码添加到答案的主体。或者使用javascript添加纹理值,例如:var floormatarial=newScene.materials[3];var floorTexture=new BABYLON.Textureimages/06.jpg,newScene;请将注释中的代码添加到答案的正文中。