Very Simple Suzanne

by Ivan Enzhaev

HTML

<canvas id="renderCanvas"></canvas>

<script src="https://cdnjs.cloudflare.com/ajax/libs/babylonjs/2.5.0/babylon.js"></script>

CSS

html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

#renderCanvas {
    width: 100%;
    height: 100%;
    touch-action: none;
}

JavaScript

var canvas = document.getElementById("renderCanvas");
var engine = new BABYLON.Engine(canvas);
var scene = new BABYLON.Scene(engine);

//Adding a light
var light = new BABYLON.PointLight("Omni", new BABYLON.Vector3(20, 20, 100), scene);

//Adding an Arc Rotate Camera
var camera = new BABYLON.ArcRotateCamera("Camera", 0, 0.8, 100, BABYLON.Vector3.Zero(), scene);
camera.attachControl(canvas, false);

var assetsManager = new BABYLON.AssetsManager(scene);
var meshTask = assetsManager.addMeshTask("suzanne task", "", "https://dl.dropboxusercontent.com/s/ui1ktbggn6ky4zx/", "Suzanne.babylon");

meshTask.onSuccess = function (task)
{
    var suzanne = loadedMeshes[0];
    suzanne.position = BABYLON.Vector3.Zero();
    //suzanne.scaling = new BABYLON.Vector3(15, 15, 15);
    suzanne.scaling.x = 15;
    suzanne.scaling.y = 15;
    suzanne.scaling.z = 15;
}

assetsManager.onFinish = function (tasks)
{
    engine.runRenderLoop(function ()
    {
        scene.render();
    });
};

assetsManager.load();

// Move the light with the camera
scene.registerBeforeRender(function ()
{
    light.position = camera.position;
});

window.addEventListener("resize", function()
{
    engine.resize();
});