function start () {
   emitter.emit('start', data)
   loader(images, { crossOrigin: opt.crossOrigin }, done)
     .on('not-found', function (data) {
       emitter.emit('not-found', data.url)
     })
     .on('progress', stitch)
 }
 function start () {
   emitter.emit('start', data)
   loader(images, { crossOrigin: opt.crossOrigin }, done)
     .on('not-found', function (data) {
       emitter.emit('not-found', data.url)
     })
     .on('progress', function (ev) {
       var tile = ev.data
       var position = tile.position || zero
       if (ev.image) {
         context.drawImage(ev.image, position[0], position[1])
       }
       emitter.emit('progress', {
         count: ev.count,
         total: ev.total,
         image: ev.image,
         position: position
       })
     })
 }
Esempio n. 3
0
var mat4 = require('gl-mat4')
var mat3 = require('gl-mat3')
var vec3 = require('gl-vec3')
var turntableCamera = require('turntable-camera')
var normals = require('normals')
var TextureCube = require('gl-texture-cube')
var createCubemap = require('gl-cubemap-placeholder')

// Find user widgets
var mixSlider = document.getElementById('mixSlider')
var useDebugMap = document.getElementById('useDebugMap')

// Start loading cube map images now
var images = [ 'assets/posx.jpg', 'assets/posy.jpg', 'assets/posz.jpg',
               'assets/negx.jpg', 'assets/negy.jpg', 'assets/negz.jpg' ]
asyncImageLoad(images, onImages)

// Canvas & WebGL setup
var canvas = document.body.appendChild(document.createElement('canvas'))
window.addEventListener('resize', fit(canvas), false)
var gl = createContext(canvas, render)
var clear = glClear({color: [ 0, 0, 0, 1 ], depth: true})
gl.enable(gl.DEPTH_TEST)

// Set up teapot model
var norms = normals.vertexNormals(teapot.cells, teapot.positions)
var model = Geom(gl).attr('MCVertex', teapot.positions).attr('MCNormal', norms).faces(teapot.cells)

// Environment mapping shader
var shader = glShader(gl, glslify('./cubemap.vs'), glslify('./cubemap.fs'))