BabylonJS - 球体

在本节中,我们将学习如何将球体添加到我们创建的场景中。

语法

var sphere = BABYLON.Mesh.CreateSphere("sphere", 10.0, 10.0, scene, false, BABYLON.Mesh.DEFAULTSIDE);

参数

使用以下参数添加球体 −

  • Name − 这是球体的名称。

  • Segments − 这显示段数。

  • Size −这是球体的大小。

  • Scene − 这是要附加的场景。

  • Boolean − 如果稍后需要修改网格,则可以更新此值。

  • BABYLON.Mesh.DEFAULTSIDE − 这是可选的侧面方向。

最后两个参数是可选的。

我们在创建场景时已经看到了球体的示例。现在让我们再次浏览球体的创建。

演示 - 球体

<!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 light0 = new BABYLON.PointLight("Omni", new BABYLON.Vector3(0, 0, 10), scene);
            
            var origin = BABYLON.Mesh.CreateSphere("origin", 15, 5.0, scene);
            scene.activeCamera.attachControl(canvas);
            return scene;
         };
         var scene = createScene();
         engine.runRenderLoop(function() {
            scene.render();
         });
      </script>
   </body>
</html>

输出

执行后,我们得到以下输出 −

Bigsphere

也可以使用 meshbuilder 创建球体。

语法

以下是使用 meshbuilder 创建球体的语法 −

var sphere = BABYLON.MeshBuilder.CreateSphere("sphere", {diameter: 2,diameterX: 3},scene);

球体的属性

考虑球体的以下属性。这些属性是可选的。

  • Segments −默认值为 32。它用于水平段。

  • Diameter − 这是球体的直径,默认值为 1。

  • DiameterX − X 轴上的直径会覆盖直径属性。如果未指定,则使用直径属性。

  • DiameterY − Y 轴上的直径会覆盖直径属性。如果未指定,则使用直径属性。

  • DiameterZ − Z 轴上的直径,会覆盖直径属性。如果未指定,则使用直径属性。

  • Arc −这是 0 和 1 之间的周长(纬度)比率。

  • Slice − 这是 0 和 1 之间的高度(经度)比率。

  • Boolean − 如果网格可更新,则布尔值为 true。默认情况下,为 false。

  • SideOrientation − 这指的是侧面方向。

babylonjs_basic_elements.html