UNPKG

glam

Version:

Experimental WebGL Engine

63 lines (48 loc) 1.52 kB
import Test from 'tape' import Normals from 'normals' import ReadPixel from '../read-pixel' import Cube from 'geo-3d-box' import { Mesh, PerspectiveCamera, LitMaterial, NormalColorAugment, ForwardRenderer, Scene, Geometry, } from '../../lib' Test("Normal Color Lit Material", function(t) { var scene = Scene({ autoStart: false, renderer: ForwardRenderer({ autoResizeCanvas : false, width: 100, height: 100 }) }) var gl = scene.renderer.gl var camera = PerspectiveCamera() var box = Cube({size: 5}) var geometry = Geometry( box ) var mesh var material = NormalColorAugment( LitMaterial({ color : [1,0,0] }) ) camera.transform.position[2] = 20 mesh = Mesh( geometry, material ) scene.add( camera ) scene.add( mesh ) t.plan(5) debugger mesh.transform.euler[1] = 0 scene.render( camera ) t.deepLooseEqual( ReadPixel( 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( ReadPixel( gl, 40, 50 ), [ 37, 127, 218 ], "The left is green" ) t.deepLooseEqual( ReadPixel( 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( ReadPixel( gl, 40, 50 ), [ 37, 127, 218 ], "The left is green" ) t.deepLooseEqual( ReadPixel( gl, 60, 50 ), [ 218, 127, 218 ], "The box's side is purplish3" ) scene.renderer.destroy() })