为什么此Babylon.js材料不起作用? -红色和黑色棋盘错误

时间:2018-12-03 02:20:04

标签: babylonjs

我正在尝试学习如何使用所需的jpg或png创建多维数据集。我已将Alpha通道添加到jpg,然后将其导出到png文件。然后,我在Babylon.js程序中将路径添加到此文件。但是,当我在Babylon.js操场上执行程序时,我只看到立方体被红色和黑色框覆盖,就像棋盘一样。在该示例中,他们只是通过Wikipedia传递带有Alpha通道的png文件。

我要跟踪的示例位于以下URL:https://doc.babylonjs.com/babylon101/materials#transparent-texture-examples

任何人都可以在其网络浏览器中进行调整和修改的示例位于:https://www.babylonjs-playground.com/#YDO1F#18

该示例有效,但是如何添加自己感兴趣的图像以显示在多维数据集上?

我本打算在babylon.js论坛中提出这个问题,但显然没有这样的设备。

请按以下步骤找到我要修改的代码:

var createScene = function() {
    var scene = new BABYLON.Scene(engine);
    var camera = new BABYLON.ArcRotateCamera("Camera", 3 * Math.PI / 2, Math.PI / 2, 5, BABYLON.Vector3.Zero(), scene);
    camera.attachControl(canvas, false);

    var light = new BABYLON.HemisphericLight("light1", new BABYLON.Vector3(0, 1, 0), scene);
  light.intensity = 0.7;

  var pl = new BABYLON.PointLight("pl", BABYLON.Vector3.Zero(), scene);
  pl.diffuse = new BABYLON.Color3(1, 1, 1);
  pl.specular = new BABYLON.Color3(1, 1, 1);
  pl.intensity = 0.8;

  var mat = new BABYLON.StandardMaterial("dog", scene);
  mat.diffuseTexture = new BABYLON.Texture("https://upload.wikimedia.org/wikipedia/commons/8/87/Alaskan_Malamute%2BBlank.png", scene);
  mat.diffuseTexture.hasAlpha = true;
  mat.backFaceCulling = false;
  var box = BABYLON.MeshBuilder.CreateBox("box", {}, scene);
  box.material = mat;

    return scene;
};

我认为唯一要修改的行是BABYLON.Texture()的参数。当我将其修改为带有Alpha通道或常规jpeg或其他任何东西的png时,我看到该多维数据集只是一个红色和黑色的棋盘。如果您有时间和耐心,请自己尝试一下。 babylon.js向导潜入该论坛的几率是多少?

0 个答案:

没有答案