UNPKG

glam

Version:

Experimental WebGL Engine

68 lines (46 loc) 1.89 kB
'use strict'; var _tape = require('tape'); var _tape2 = _interopRequireDefault(_tape); var _normals = require('normals'); var _normals2 = _interopRequireDefault(_normals); var _readPixel = require('../read-pixel'); var _readPixel2 = _interopRequireDefault(_readPixel); var _geo3dBox = require('geo-3d-box'); var _geo3dBox2 = _interopRequireDefault(_geo3dBox); var _lib = require('../../lib'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } (0, _tape2.default)("Normal Color Lit Material", function (t) { var scene = (0, _lib.Scene)({ autoStart: false, renderer: (0, _lib.ForwardRenderer)({ autoResizeCanvas: false, width: 100, height: 100 }) }); var gl = scene.renderer.gl; var camera = (0, _lib.PerspectiveCamera)(); var box = (0, _geo3dBox2.default)({ size: 5 }); var geometry = (0, _lib.Geometry)(box); var mesh; var material = (0, _lib.NormalColorAugment)((0, _lib.LitMaterial)({ color: [1, 0, 0] })); camera.transform.position[2] = 20; mesh = (0, _lib.Mesh)(geometry, material); scene.add(camera); scene.add(mesh); t.plan(5); debugger; mesh.transform.euler[1] = 0; scene.render(camera); t.deepLooseEqual((0, _readPixel2.default)(gl, 50, 50), [127, 127, 255], "The box's side is purplish1."); mesh.transform.euler[1] = Math.PI * 0.25; scene.render(camera); t.deepLooseEqual((0, _readPixel2.default)(gl, 40, 50), [37, 127, 218], "The left is green"); t.deepLooseEqual((0, _readPixel2.default)(gl, 60, 50), [218, 127, 218], "The box's side is purplish2"); camera.transform.position[2] = -20; camera.transform.euler[1] = Math.PI; scene.render(camera); t.deepLooseEqual((0, _readPixel2.default)(gl, 40, 50), [37, 127, 218], "The left is green"); t.deepLooseEqual((0, _readPixel2.default)(gl, 60, 50), [218, 127, 218], "The box's side is purplish3"); scene.renderer.destroy(); });