Как создать интерактивную сетку в BabylonJS? - PullRequest
0 голосов
/ 28 декабря 2018

Я думал, что все будет просто.

Основная цель - создать площадку с текстурой и случайным образом добавить маленькие плитки, чтобы пользователь мог щелкнуть по ним.

Я не нашел никаких демонстраций или игровых площадок с системой плиток.

Как я могу добавить это?

Камера находится в изометрическом положении.Я могу сделать CreateGroundFromHeightMap или CreateTiledGround, который дает мне ландшафт или сетку, но я не могу создать сетку "поверх" моей текстурированной местности и обнаружить ячейку.

Коддля местности:

        var ground = BABYLON.Mesh.CreateGroundFromHeightMap("ground", "../assets/textures/heightMap.png", 100, 100, 100, 0, 10, scene, false);

        var groundMaterial = new BABYLON.StandardMaterial("ground", scene);
        groundMaterial.diffuseTexture = new BABYLON.Texture("../assets/textures/ground.jpg", scene);
        groundMaterial.diffuseTexture.uScale = 6;
        groundMaterial.diffuseTexture.vScale = 6;
        groundMaterial.specularColor = new BABYLON.Color3(0, 0, 0);

        ground.position.y = -2.05;

Код для плиточной карты

        var xmin = -10;
        var zmin = -10;
        var xmax =  10;
        var zmax =  10;
        var precision = {
            "w" : 2,
            "h" : 2
        };
        var subdivisions = {
            'h' : 8,
            'w' : 8
        };
        // Create the Tiled Ground
        var tiledGround = new BABYLON.Mesh.CreateTiledGround("Tiled Ground", xmin, zmin, xmax, zmax, subdivisions, precision, scene);
        tiledGround.material = new BABYLON.GridMaterial("groundMaterial", scene);;
...