BabylonJS - 平铺地面
在本节中,我们将学习如何创建平铺地面。
语法
以下是创建平铺地面的语法 −
var precision = { "w" : 2, "h" : 2 }; var subdivisions = { 'h' : 8, 'w' : 8 }; var tiledGround = BABYLON.Mesh.CreateTiledGround("Tiled Ground", -3, -3, 3, 3, subdivisions, precision, scene, false);
参数
考虑以下参数来创建 Tiled Ground −
Name − 地面的名称。
Xmin − 地图最小 x 坐标值。
Zmin − 地图最小 z 坐标值。
Xmax − 地图最大 x 坐标值。
Zmax − 地图最大 z 坐标值。
Subdivisions − {w: number, h: number} ) 地图高度和宽度上的细分数(图块)。
Precision − ({w: number, h: number} ) 每个图块高度和宽度上的细分数。
Scene − 图块地面所附着的场景。
Updatable − 如果网格可更新,则为真。
演示 – 图块地面
<!doctype html> <html> <head> <meta charset = "utf-8"> <title>MDN Games: Babylon.js demo - shapes</title> <script src = "babylon.js"></script> <style> html,body,canvas { margin: 0; padding: 0; width: 100%; height: 100%; font-size: 0; } </style> </head> <body> <canvas id = "renderCanvas"></canvas> <script type = "text/javascript"> var canvas = document.getElementById("renderCanvas"); var engine = new BABYLON.Engine(canvas, true); var createScene = function() { var scene = new BABYLON.Scene(engine); scene.clearColor = new BABYLON.Color3(0,1, 0); var camera = new BABYLON.ArcRotateCamera("Camera", 1, 0.8, 10, new BABYLON.Vector3(0, 0, 0), scene); var spot = new BABYLON.PointLight("spot", new BABYLON.Vector3(0, 30, 10), scene); spot.diffuse = new BABYLON.Color3(1, 1, 1); spot.specular = new BABYLON.Color3(0, 0, 0); //<h3>Parameters</h3> var xmin = -3; var zmin = -3; var xmax = 3; var zmax = 3; 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); scene.activeCamera.attachControl(canvas); return scene; }; var scene = createScene(); engine.runRenderLoop(function() { scene.render(); }); </script> </body> </html>
输出
