Giter Site home page Giter Site logo

node-webgl's Introduction

This is a set of WebGL like bindings to OpenGL for Node.JS for desktops: windows, linux, mac

It started as an extension of creationix/node-webgl and their great example com.creationix.minimason that you can find in examples/wavefront.js. However, it is now quite different and support different platform bindings, mainly GLFW instead of SDL.

Unlike WebGL it calls directly into the OpenGL driver. This has the benefit of speed and access to many features of desktop OpenGL at the expensive of compatibily and security. If you're looking for an actual WebGL implementation for Node.JS see headless-gl.

Dependencies

  • node-glfw, which depends on GLEW, GLFW as well as AntTweakBar. See node-glfw for installation instructions.
  • freeimage is used to load/save a variety of image formats.
  • node-gyp if not already available in your distribution

Installation

npm install node-webgl

Installation Notes for Windows 7

Beware of the Node.JS distribution you use. The default Node.JS is 32-bit and this means that modules will be compiled by node-gyp with 32-bit settings, which often leads to compilation errors especially on 64-bit systems.

So for Windows 7 64-bit, instead of downloading the default Node.JS windows installer, select 'Other release files'. This will show you an ftp site for the latest release. Go into x64 folder and download that distribution.

Installation Notes for OSX

brew install anttweakbar freeimage

Usage

examples/ contains examples from other the web test/ contains lessons from www.learningwebgl.com and other tests

simply type: node test/lesson02.js

Enjoy!

Limitations

WebGL is based on OpenGL ES, a restriction of OpenGL found on desktops, for embedded systems. Because this module wraps OpenGL, it is possible to do things that may not work on web browsers. Please read http://www.khronos.org/webgl/wiki_1_15/index.php/WebGL_and_OpenGL_Differences to learn about the differences.

  • shaders Remember to add this on top of your fragment shaders:
#ifdef GL_ES
precision highp float;
#endif
  • loading external scripts If your code uses external libraries, you can load them like this. No code change to external scripts ;-)
fs=require('fs');
eval(fs.readFileSync(__dirname+ '/glMatrix-0.9.5.min.js','utf8'));
  • frame rate requestAnimationFrame(callback [, delay]) works as in the browser. If delay is specified, it is the requested delay in milliseconds between animation frames e.g. 16 will provide 1000 / 16 = 62 fps at best, which is the default value if delay is undefined. If delay = 0, then the fastest possible framerate on your machine is used.

The timestamp now uses the high-resolution timer in your machine (not new Date()). This provides a much more precise framerate as well as much better timing for animations.

node-webgl's People

Contributors

adiprad avatar creationix avatar dithi avatar greggman avatar jiahansu avatar konsumer avatar lmeyerov avatar maratyszcza avatar mikeseven avatar msgoloborodov avatar nicholasbishop avatar nicomgd avatar timknip2 avatar tmpvar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

node-webgl's Issues

Make Fails on OS X

Content of terminal

computername:src username$ sudo npm install node-webgl
Password:
npm WARN engine [email protected]: wanted: {"node":"0.6.5-0.11.10"} (current: {"node":"0.12.2","npm":"2.7.4"})

> [email protected] install /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
> node-gyp rebuild

  CXX(target) Release/obj.target/glfw/src/atb.o
In file included from ../src/atb.cc:1:
In file included from ../src/atb.h:9:
../src/common.h:15:10: fatal error: 'GLFW/glfw3.h' file not found
#include <GLFW/glfw3.h>
         ^
1 error generated.
make: *** [Release/obj.target/glfw/src/atb.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Darwin 14.3.0
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
gyp ERR! node -v v0.12.2
gyp ERR! node-gyp -v v1.0.3
gyp ERR! not ok 
npm ERR! Darwin 14.3.0
npm ERR! argv "node" "/usr/local/bin/npm" "install" "node-webgl"
npm ERR! node v0.12.2
npm ERR! npm  v2.7.4
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the node-glfw package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls node-glfw
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/username/github/oxozone/src/npm-debug.log

Content of npm-debug.log

0 info it worked if it ends with ok
1 verbose cli [ 'node', '/usr/local/bin/npm', 'install', 'node-webgl' ]
2 info using [email protected]
3 info using [email protected]
4 silly cache add args [ 'node-webgl', null ]
5 verbose cache add spec node-webgl
6 silly cache add parsed spec { raw: 'node-webgl',
6 silly cache add   scope: null,
6 silly cache add   name: 'node-webgl',
6 silly cache add   rawSpec: '',
6 silly cache add   spec: '*',
6 silly cache add   type: 'range' }
7 verbose addNamed node-webgl@*
8 silly addNamed semver.valid null
9 silly addNamed semver.validRange *
10 silly addNameRange { name: 'node-webgl', range: '*', hasData: false }
11 silly mapToRegistry name node-webgl
12 silly mapToRegistry using default registry
13 silly mapToRegistry registry https://registry.npmjs.org/
14 silly mapToRegistry uri https://registry.npmjs.org/node-webgl
15 verbose addNameRange registry:https://registry.npmjs.org/node-webgl not in flight; fetching
16 verbose request uri https://registry.npmjs.org/node-webgl
17 verbose request no auth needed
18 info attempt registry request try #1 at 1:21:26 PM
19 verbose request id 48291965e37d1b94
20 verbose etag "9EJQMYJRDIY57FOTPBHWTWLDW"
21 http request GET https://registry.npmjs.org/node-webgl
22 http 304 https://registry.npmjs.org/node-webgl
23 silly get cb [ 304,
23 silly get   { date: 'Mon, 20 Apr 2015 07:21:28 GMT',
23 silly get     server: 'Apache',
23 silly get     via: '1.1 varnish',
23 silly get     'last-modified': 'Mon, 20 Apr 2015 07:21:29 GMT',
23 silly get     'cache-control': 'max-age=60',
23 silly get     etag: '"9EJQMYJRDIY57FOTPBHWTWLDW"',
23 silly get     age: '0',
23 silly get     'x-served-by': 'cache-sn86-SIN',
23 silly get     'x-cache': 'MISS',
23 silly get     'x-cache-hits': '0',
23 silly get     'x-timer': 'S1429514488.522337,VS0,VE818',
23 silly get     vary: 'Accept',
23 silly get     'content-length': '0',
23 silly get     'keep-alive': 'timeout=10, max=50',
23 silly get     connection: 'Keep-Alive' } ]
24 verbose etag https://registry.npmjs.org/node-webgl from cache
25 verbose get saving node-webgl to /Users/username/.npm/registry.npmjs.org/node-webgl/.cache.json
26 silly addNameRange number 2 { name: 'node-webgl', range: '*', hasData: true }
27 silly addNameRange versions [ 'node-webgl',
27 silly addNameRange   [ '0.1.0',
27 silly addNameRange     '0.1.1',
27 silly addNameRange     '0.1.2',
27 silly addNameRange     '0.1.3',
27 silly addNameRange     '0.1.4',
27 silly addNameRange     '0.1.5',
27 silly addNameRange     '0.2.0',
27 silly addNameRange     '0.2.1',
27 silly addNameRange     '0.4.2',
27 silly addNameRange     '0.4.3' ] ]
28 verbose addNamed [email protected]
29 silly addNamed semver.valid 0.4.3
30 silly addNamed semver.validRange 0.4.3
31 silly cache afterAdd [email protected]
32 verbose afterAdd /Users/username/.npm/node-webgl/0.4.3/package/package.json not in flight; writing
33 verbose afterAdd /Users/username/.npm/node-webgl/0.4.3/package/package.json written
34 silly install resolved [ { author:
34 silly install resolved      { name: 'Mikael Bourges-Sevenier',
34 silly install resolved        email: '[email protected]' },
34 silly install resolved     name: 'node-webgl',
34 silly install resolved     description: 'WebGL bindings for node',
34 silly install resolved     version: '0.4.3',
34 silly install resolved     main: 'index.js',
34 silly install resolved     keywords: [ 'webgl', 'opengl' ],
34 silly install resolved     engines: { node: '>=0.7.0' },
34 silly install resolved     directories:
34 silly install resolved      { src: 'src',
34 silly install resolved        lib: 'lib',
34 silly install resolved        doc: 'doc',
34 silly install resolved        examples: 'examples',
34 silly install resolved        test: 'test' },
34 silly install resolved     repository:
34 silly install resolved      { type: 'git',
34 silly install resolved        url: 'https://github.com/mikeseven/node-webgl.git' },
34 silly install resolved     scripts: { install: 'node-gyp rebuild' },
34 silly install resolved     licenses: [ [Object] ],
34 silly install resolved     dependencies: { 'node-glfw': '>=0.3.0', nan: '^0.8.0' },
34 silly install resolved     gitHead: 'a120c40a9692667a36a47a1f351534a36e4239cb',
34 silly install resolved     gypfile: true,
34 silly install resolved     bugs: { url: 'https://github.com/mikeseven/node-webgl/issues' },
34 silly install resolved     homepage: 'https://github.com/mikeseven/node-webgl',
34 silly install resolved     _id: '[email protected]',
34 silly install resolved     _shasum: '5658ad9e1362f43ae9b193fc50734cd9aae4bed0',
34 silly install resolved     _from: 'node-webgl@*',
34 silly install resolved     _npmVersion: '1.4.14',
34 silly install resolved     _npmUser: { name: 'mikeseven', email: '[email protected]' },
34 silly install resolved     maintainers: [ [Object] ],
34 silly install resolved     dist:
34 silly install resolved      { shasum: '5658ad9e1362f43ae9b193fc50734cd9aae4bed0',
34 silly install resolved        tarball: 'http://registry.npmjs.org/node-webgl/-/node-webgl-0.4.3.tgz' },
34 silly install resolved     _resolved: 'https://registry.npmjs.org/node-webgl/-/node-webgl-0.4.3.tgz',
34 silly install resolved     readme: 'ERROR: No README data found!' } ]
35 info install [email protected] into /Users/username/github/oxozone/src
36 info installOne [email protected]
37 verbose installOne of node-webgl to /Users/username/github/oxozone/src not in flight; installing
38 verbose lock using /Users/username/.npm/_locks/node-webgl-8e33f10f5a1d49d4.lock for /Users/username/github/oxozone/src/node_modules/node-webgl
39 silly install write writing node-webgl 0.4.3 to /Users/username/github/oxozone/src/node_modules/node-webgl
40 silly cache addNamed cb [email protected]
41 verbose unbuild node_modules/node-webgl
42 silly gentlyRm /Users/username/github/oxozone/src/node_modules/node-webgl is being purged from base /Users/username/github/oxozone/src
43 verbose gentlyRm don't care about contents; nuking /Users/username/github/oxozone/src/node_modules/node-webgl
44 verbose tar unpack /Users/username/.npm/node-webgl/0.4.3/package.tgz
45 verbose tar unpacking to /Users/username/github/oxozone/src/node_modules/node-webgl
46 silly gentlyRm /Users/username/github/oxozone/src/node_modules/node-webgl is being purged
47 verbose gentlyRm don't care about contents; nuking /Users/username/github/oxozone/src/node_modules/node-webgl
48 silly gunzTarPerm modes [ '755', '644' ]
49 silly gunzTarPerm extractEntry package.json
50 silly gunzTarPerm extractEntry .npmignore
51 silly gunzTarPerm extractEntry README.md
52 silly gunzTarPerm extractEntry index.js
53 silly gunzTarPerm extractEntry binding.gyp
54 silly gunzTarPerm extractEntry doc/WebGL_support.ods
55 silly gunzTarPerm extractEntry doc/webgl.idl
56 silly gunzTarPerm extractEntry .gitmodules
57 silly gunzTarPerm extractEntry LICENSES
58 silly gunzTarPerm extractEntry lib/image.js
59 silly gunzTarPerm extractEntry lib/platform_glfw.js
60 silly gunzTarPerm extractEntry lib/platform_sdl.js
61 silly gunzTarPerm extractEntry lib/platform_sfml.js
62 silly gunzTarPerm extractEntry lib/webgl.js
63 silly gunzTarPerm extractEntry test/cube.js
64 silly gunzTarPerm extractEntry test/glMatrix-0.9.5.min.js
65 silly gunzTarPerm extractEntry test/test_image.js
66 silly gunzTarPerm extractEntry test/glversion.js
67 silly gunzTarPerm extractEntry test/screen_aligned.js
68 silly gunzTarPerm extractEntry test/lesson02.js
69 silly gunzTarPerm extractEntry test/extensions.js
70 silly gunzTarPerm extractEntry test/lesson08.js
71 silly gunzTarPerm extractEntry test/lesson05.js
72 silly gunzTarPerm extractEntry test/nehe.gif
73 silly gunzTarPerm extractEntry test/node_logo.png
74 silly gunzTarPerm extractEntry test/lena.jpg
75 silly gunzTarPerm extractEntry test/glass.gif
76 silly gunzTarPerm extractEntry test/test_typed_arrays.html
77 silly gunzTarPerm extractEntry tools/api.js
78 silly gunzTarPerm extractEntry src/GLES2/gl2.h
79 silly gunzTarPerm extractEntry src/GLES2/gl2ext.h
80 silly gunzTarPerm extractEntry src/GLES2/gl2platform.h
81 silly gunzTarPerm extractEntry src/KHR/khrplatform.h
82 silly gunzTarPerm extractEntry src/arch_wrapper.h
83 silly gunzTarPerm extractEntry src/bindings.cc
84 silly gunzTarPerm extractEntry src/common.h
85 silly gunzTarPerm extractEntry src/image.cc
86 silly gunzTarPerm extractEntry src/image.h
87 silly gunzTarPerm extractEntry src/webgl.cc
88 silly gunzTarPerm extractEntry src/webgl.h
89 silly gunzTarPerm extractEntry examples/wavefront.js
90 silly gunzTarPerm extractEntry examples/lightgl/camera.js
91 silly gunzTarPerm extractEntry examples/lightgl/gazebo.js
92 silly gunzTarPerm extractEntry examples/lightgl/gpulightmap.js
93 silly gunzTarPerm extractEntry examples/lightgl/immediatemode.js
94 silly gunzTarPerm extractEntry examples/lightgl/csg.min.js
95 silly gunzTarPerm extractEntry examples/lightgl/cessna.js
96 silly gunzTarPerm extractEntry examples/lightgl/normalmatrix.js
97 silly gunzTarPerm extractEntry examples/lightgl/raytracing.js
98 silly gunzTarPerm extractEntry examples/lightgl/rtt.js
99 silly gunzTarPerm extractEntry examples/lightgl/scenemanip.js
100 silly gunzTarPerm extractEntry examples/lightgl/csg.js
101 silly gunzTarPerm extractEntry examples/lightgl/shadowmap.js
102 silly gunzTarPerm extractEntry examples/lightgl/lightgl.js
103 silly gunzTarPerm extractEntry examples/lightgl/multitexture.js
104 silly gunzTarPerm extractEntry examples/lightgl/texture.png
105 silly gunzTarPerm extractEntry examples/lightgl/texture2.png
106 silly gunzTarPerm extractEntry examples/shadertoy/shadertoy.js
107 silly gunzTarPerm extractEntry examples/shadertoy/presets/mandelbulb.fs
108 silly gunzTarPerm extractEntry examples/shadertoy/presets/704.fs
109 silly gunzTarPerm extractEntry examples/shadertoy/presets/apple.fs
110 silly gunzTarPerm extractEntry examples/shadertoy/presets/clod.fs
111 silly gunzTarPerm extractEntry examples/shadertoy/presets/deform.fs
112 silly gunzTarPerm extractEntry examples/shadertoy/presets/droid.fs
113 silly gunzTarPerm extractEntry examples/shadertoy/presets/earth.fs
114 silly gunzTarPerm extractEntry examples/shadertoy/presets/earth_day.jpg
115 silly gunzTarPerm extractEntry examples/shadertoy/presets/julia.fs
116 silly gunzTarPerm extractEntry examples/shadertoy/presets/kinderpainter.fs
117 silly gunzTarPerm extractEntry examples/shadertoy/presets/landscape.fs
118 silly gunzTarPerm extractEntry examples/shadertoy/presets/leizex.fs
119 silly gunzTarPerm extractEntry examples/shadertoy/presets/lunaquatic.fs
120 silly gunzTarPerm extractEntry examples/shadertoy/presets/mandel.fs
121 silly gunzTarPerm extractEntry examples/shadertoy/presets/BigEarth.jpg
122 silly gunzTarPerm extractEntry examples/shadertoy/presets/metatunnel.fs
123 silly gunzTarPerm extractEntry examples/shadertoy/presets/quaternion.fs
124 silly gunzTarPerm extractEntry examples/shadertoy/presets/red.fs
125 silly gunzTarPerm extractEntry examples/shadertoy/presets/shapes.fs
126 silly gunzTarPerm extractEntry examples/shadertoy/presets/slisesix.fs
127 silly gunzTarPerm extractEntry examples/shadertoy/presets/square_tunnel.fs
128 silly gunzTarPerm extractEntry examples/shadertoy/presets/sult.fs
129 silly gunzTarPerm extractEntry examples/shadertoy/presets/tex0.jpg
130 silly gunzTarPerm extractEntry examples/shadertoy/presets/tex1.jpg
131 silly gunzTarPerm extractEntry examples/shadertoy/presets/tex2.jpg
132 silly gunzTarPerm extractEntry examples/shadertoy/presets/tex3.jpg
133 silly gunzTarPerm extractEntry examples/shadertoy/presets/tex4.jpg
134 silly gunzTarPerm extractEntry examples/shadertoy/presets/water.fs
135 silly gunzTarPerm extractEntry examples/tunnel/glUtils.js
136 silly gunzTarPerm extractEntry examples/tunnel/sylvester.js
137 silly gunzTarPerm extractEntry examples/tunnel/tunnel.js
138 silly gunzTarPerm extractEntry examples/tunnel/texture.jpg
139 silly gunzTarPerm extractEntry examples/wavefront_icon.png
140 info preinstall [email protected]
141 silly prepareForInstallMany adding node-glfw@>=0.3.0 from node-webgl dependencies
142 silly prepareForInstallMany adding nan@^0.8.0 from node-webgl dependencies
143 silly cache add args [ 'nan@^0.8.0', null ]
144 verbose cache add spec nan@^0.8.0
145 silly cache add parsed spec { raw: 'nan@^0.8.0',
145 silly cache add   scope: null,
145 silly cache add   name: 'nan',
145 silly cache add   rawSpec: '^0.8.0',
145 silly cache add   spec: '>=0.8.0 <0.9.0',
145 silly cache add   type: 'range' }
146 verbose addNamed nan@>=0.8.0 <0.9.0
147 silly addNamed semver.valid null
148 silly addNamed semver.validRange >=0.8.0 <0.9.0
149 silly addNameRange { name: 'nan', range: '>=0.8.0 <0.9.0', hasData: false }
150 silly mapToRegistry name nan
151 silly mapToRegistry using default registry
152 silly mapToRegistry registry https://registry.npmjs.org/
153 silly mapToRegistry uri https://registry.npmjs.org/nan
154 verbose addNameRange registry:https://registry.npmjs.org/nan not in flight; fetching
155 silly cache add args [ 'node-glfw@>=0.3.0', null ]
156 verbose cache add spec node-glfw@>=0.3.0
157 silly cache add parsed spec { raw: 'node-glfw@>=0.3.0',
157 silly cache add   scope: null,
157 silly cache add   name: 'node-glfw',
157 silly cache add   rawSpec: '>=0.3.0',
157 silly cache add   spec: '>=0.3.0',
157 silly cache add   type: 'range' }
158 verbose addNamed node-glfw@>=0.3.0
159 silly addNamed semver.valid null
160 silly addNamed semver.validRange >=0.3.0
161 silly addNameRange { name: 'node-glfw', range: '>=0.3.0', hasData: false }
162 silly mapToRegistry name node-glfw
163 silly mapToRegistry using default registry
164 silly mapToRegistry registry https://registry.npmjs.org/
165 silly mapToRegistry uri https://registry.npmjs.org/node-glfw
166 verbose addNameRange registry:https://registry.npmjs.org/node-glfw not in flight; fetching
167 verbose request uri https://registry.npmjs.org/node-glfw
168 verbose request no auth needed
169 info attempt registry request try #1 at 1:21:29 PM
170 verbose etag "1E3WGF8SJ9HUHE74WPNTSTD3H"
171 http request GET https://registry.npmjs.org/node-glfw
172 verbose request uri https://registry.npmjs.org/nan
173 verbose request no auth needed
174 info attempt registry request try #1 at 1:21:29 PM
175 verbose etag "5IOU70T0MNE17LALUE9YPLT5T"
176 http request GET https://registry.npmjs.org/nan
177 http 304 https://registry.npmjs.org/nan
178 silly get cb [ 304,
178 silly get   { date: 'Mon, 20 Apr 2015 07:21:31 GMT',
178 silly get     server: 'Apache',
178 silly get     via: '1.1 varnish',
178 silly get     'last-modified': 'Mon, 20 Apr 2015 07:17:44 GMT',
178 silly get     'cache-control': 'max-age=60',
178 silly get     etag: '"5IOU70T0MNE17LALUE9YPLT5T"',
178 silly get     age: '11',
178 silly get     'x-served-by': 'cache-sn86-SIN',
178 silly get     'x-cache': 'HIT',
178 silly get     'x-cache-hits': '12',
178 silly get     'x-timer': 'S1429514491.583282,VS0,VE0',
178 silly get     vary: 'Accept',
178 silly get     'content-length': '0',
178 silly get     'keep-alive': 'timeout=10, max=50',
178 silly get     connection: 'Keep-Alive' } ]
179 verbose etag https://registry.npmjs.org/nan from cache
180 verbose get saving nan to /Users/username/.npm/registry.npmjs.org/nan/.cache.json
181 silly addNameRange number 2 { name: 'nan', range: '>=0.8.0 <0.9.0', hasData: true }
182 silly addNameRange versions [ 'nan',
182 silly addNameRange   [ '0.3.0-wip',
182 silly addNameRange     '0.3.0-wip2',
182 silly addNameRange     '0.3.0',
182 silly addNameRange     '0.3.1',
182 silly addNameRange     '0.3.2',
182 silly addNameRange     '0.4.0',
182 silly addNameRange     '0.4.1',
182 silly addNameRange     '0.4.2',
182 silly addNameRange     '0.4.3',
182 silly addNameRange     '0.4.4',
182 silly addNameRange     '0.5.0',
182 silly addNameRange     '0.5.1',
182 silly addNameRange     '0.5.2',
182 silly addNameRange     '0.6.0',
182 silly addNameRange     '0.7.0',
182 silly addNameRange     '0.7.1',
182 silly addNameRange     '0.8.0',
182 silly addNameRange     '1.0.0',
182 silly addNameRange     '1.1.0',
182 silly addNameRange     '1.1.1',
182 silly addNameRange     '1.1.2',
182 silly addNameRange     '1.2.0',
182 silly addNameRange     '1.3.0',
182 silly addNameRange     '1.4.0',
182 silly addNameRange     '1.4.1',
182 silly addNameRange     '1.5.0',
182 silly addNameRange     '1.4.2',
182 silly addNameRange     '1.4.3',
182 silly addNameRange     '1.5.1',
182 silly addNameRange     '1.5.2',
182 silly addNameRange     '1.6.0',
182 silly addNameRange     '1.5.3',
182 silly addNameRange     '1.6.1',
182 silly addNameRange     '1.6.2',
182 silly addNameRange     '1.7.0' ] ]
183 verbose addNamed [email protected]
184 silly addNamed semver.valid 0.8.0
185 silly addNamed semver.validRange 0.8.0
186 silly cache afterAdd [email protected]
187 verbose afterAdd /Users/username/.npm/nan/0.8.0/package/package.json not in flight; writing
188 verbose afterAdd /Users/username/.npm/nan/0.8.0/package/package.json written
189 http 304 https://registry.npmjs.org/node-glfw
190 silly get cb [ 304,
190 silly get   { date: 'Mon, 20 Apr 2015 07:21:31 GMT',
190 silly get     server: 'Apache',
190 silly get     via: '1.1 varnish',
190 silly get     'last-modified': 'Mon, 20 Apr 2015 07:21:32 GMT',
190 silly get     'cache-control': 'max-age=60',
190 silly get     etag: '"1E3WGF8SJ9HUHE74WPNTSTD3H"',
190 silly get     age: '0',
190 silly get     'x-served-by': 'cache-sn87-SIN',
190 silly get     'x-cache': 'MISS',
190 silly get     'x-cache-hits': '0',
190 silly get     'x-timer': 'S1429514491.526119,VS0,VE805',
190 silly get     vary: 'Accept',
190 silly get     'content-length': '0',
190 silly get     'keep-alive': 'timeout=10, max=50',
190 silly get     connection: 'Keep-Alive' } ]
191 verbose etag https://registry.npmjs.org/node-glfw from cache
192 verbose get saving node-glfw to /Users/username/.npm/registry.npmjs.org/node-glfw/.cache.json
193 silly addNameRange number 2 { name: 'node-glfw', range: '>=0.3.0', hasData: true }
194 silly addNameRange versions [ 'node-glfw',
194 silly addNameRange   [ '0.1.0',
194 silly addNameRange     '0.1.1',
194 silly addNameRange     '0.1.2',
194 silly addNameRange     '0.1.3',
194 silly addNameRange     '0.2.0',
194 silly addNameRange     '0.2.1',
194 silly addNameRange     '0.3.0',
194 silly addNameRange     '0.3.1' ] ]
195 verbose addNamed [email protected]
196 silly addNamed semver.valid 0.3.1
197 silly addNamed semver.validRange 0.3.1
198 silly cache afterAdd [email protected]
199 verbose afterAdd /Users/username/.npm/node-glfw/0.3.1/package/package.json not in flight; writing
200 verbose afterAdd /Users/username/.npm/node-glfw/0.3.1/package/package.json written
201 silly install resolved [ { name: 'nan',
201 silly install resolved     version: '0.8.0',
201 silly install resolved     description: 'Native Abstractions for Node.js: C++ header for Node 0.8->0.12 compatibility',
201 silly install resolved     main: 'include_dirs.js',
201 silly install resolved     repository: { type: 'git', url: 'git://github.com/rvagg/nan.git' },
201 silly install resolved     contributors: [ [Object], [Object], [Object], [Object], [Object], [Object] ],
201 silly install resolved     license: 'MIT',
201 silly install resolved     bugs: { url: 'https://github.com/rvagg/nan/issues' },
201 silly install resolved     homepage: 'https://github.com/rvagg/nan',
201 silly install resolved     _id: '[email protected]',
201 silly install resolved     dist:
201 silly install resolved      { shasum: '022a8fa5e9fe8420964ac1fb3dc94e17f449f5fd',
201 silly install resolved        tarball: 'http://registry.npmjs.org/nan/-/nan-0.8.0.tgz' },
201 silly install resolved     _from: 'nan@>=0.8.0 <0.9.0',
201 silly install resolved     _npmVersion: '1.3.21',
201 silly install resolved     _npmUser: { name: 'rvagg', email: '[email protected]' },
201 silly install resolved     maintainers: [ [Object] ],
201 silly install resolved     directories: {},
201 silly install resolved     _shasum: '022a8fa5e9fe8420964ac1fb3dc94e17f449f5fd',
201 silly install resolved     _resolved: 'https://registry.npmjs.org/nan/-/nan-0.8.0.tgz',
201 silly install resolved     readme: 'ERROR: No README data found!' },
201 silly install resolved   { name: 'node-glfw',
201 silly install resolved     version: '0.3.1',
201 silly install resolved     description: 'A NodeJS wrapper around GLFW 3.x library',
201 silly install resolved     main: 'index.js',
201 silly install resolved     author:
201 silly install resolved      { name: 'Mikael Bourges-Sevenier',
201 silly install resolved        email: '[email protected]' },
201 silly install resolved     keywords: [ 'glfw', 'opengl', '3d', 'graphics' ],
201 silly install resolved     maintainers: [ [Object] ],
201 silly install resolved     licenses: [ [Object] ],
201 silly install resolved     repository:
201 silly install resolved      { type: 'git',
201 silly install resolved        url: 'https://github.com/mikeseven/node-glfw.git' },
201 silly install resolved     directories: { src: 'src', lib: 'lib', test: 'test' },
201 silly install resolved     engines: { node: '0.6.5-0.11.10' },
201 silly install resolved     scripts: { install: 'node-gyp rebuild' },
201 silly install resolved     dependencies: { nan: '^0.8.0' },
201 silly install resolved     gitHead: '9a7c4cf211b07e6f36c889451e1523eb60c28b33',
201 silly install resolved     gypfile: true,
201 silly install resolved     bugs: { url: 'https://github.com/mikeseven/node-glfw/issues' },
201 silly install resolved     homepage: 'https://github.com/mikeseven/node-glfw',
201 silly install resolved     _id: '[email protected]',
201 silly install resolved     _shasum: '8a7457a3c3a9eccf40aa1a13c9effd4bf5ae7364',
201 silly install resolved     _from: 'node-glfw@>=0.3.0',
201 silly install resolved     _npmVersion: '1.4.14',
201 silly install resolved     _npmUser: { name: 'mikeseven', email: '[email protected]' },
201 silly install resolved     dist:
201 silly install resolved      { shasum: '8a7457a3c3a9eccf40aa1a13c9effd4bf5ae7364',
201 silly install resolved        tarball: 'http://registry.npmjs.org/node-glfw/-/node-glfw-0.3.1.tgz' },
201 silly install resolved     _resolved: 'https://registry.npmjs.org/node-glfw/-/node-glfw-0.3.1.tgz',
201 silly install resolved     readme: 'ERROR: No README data found!' } ]
202 info install [email protected] into /Users/username/github/oxozone/src/node_modules/node-webgl
203 info install [email protected] into /Users/username/github/oxozone/src/node_modules/node-webgl
204 info installOne [email protected]
205 verbose installOne of nan to /Users/username/github/oxozone/src/node_modules/node-webgl not in flight; installing
206 info installOne [email protected]
207 verbose installOne of node-glfw to /Users/username/github/oxozone/src/node_modules/node-webgl not in flight; installing
208 verbose lock using /Users/username/.npm/_locks/nan-177f467af88aaeba.lock for /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan
209 verbose lock using /Users/username/.npm/_locks/node-glfw-261f5488c1e9ce8c.lock for /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
210 warn engine [email protected]: wanted: {"node":"0.6.5-0.11.10"} (current: {"node":"0.12.2","npm":"2.7.4"})
211 silly install write writing nan 0.8.0 to /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan
212 silly cache addNamed cb [email protected]
213 verbose unbuild node_modules/node-webgl/node_modules/nan
214 silly install write writing node-glfw 0.3.1 to /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
215 silly cache addNamed cb [email protected]
216 verbose unbuild node_modules/node-webgl/node_modules/node-glfw
217 silly gentlyRm /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan is being purged from base /Users/username/github/oxozone/src
218 verbose gentlyRm don't care about contents; nuking /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan
219 silly gentlyRm /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw is being purged from base /Users/username/github/oxozone/src
220 verbose gentlyRm don't care about contents; nuking /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
221 verbose tar unpack /Users/username/.npm/nan/0.8.0/package.tgz
222 verbose tar unpacking to /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan
223 silly gentlyRm /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan is being purged
224 verbose gentlyRm don't care about contents; nuking /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan
225 verbose tar unpack /Users/username/.npm/node-glfw/0.3.1/package.tgz
226 verbose tar unpacking to /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
227 silly gentlyRm /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw is being purged
228 verbose gentlyRm don't care about contents; nuking /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
229 silly gunzTarPerm modes [ '755', '644' ]
230 silly gunzTarPerm modes [ '755', '644' ]
231 silly gunzTarPerm extractEntry package.json
232 silly gunzTarPerm extractEntry package.json
233 silly gunzTarPerm extractEntry README.md
234 silly gunzTarPerm extractEntry LICENSE
235 silly gunzTarPerm extractEntry include_dirs.js
236 silly gunzTarPerm extractEntry .dntrc
237 silly gunzTarPerm extractEntry build/config.gypi
238 silly gunzTarPerm extractEntry nan.h
239 silly gunzTarPerm extractEntry .npmignore
240 silly gunzTarPerm extractEntry README.md
241 silly gunzTarPerm extractEntry index.js
242 silly gunzTarPerm extractEntry binding.gyp
243 silly gunzTarPerm extractEntry .gitmodules
244 silly gunzTarPerm extractEntry LICENSES
245 silly gunzTarPerm extractEntry src/atb.cc
246 silly gunzTarPerm extractEntry src/atb.h
247 silly gunzTarPerm extractEntry src/common.h
248 silly gunzTarPerm extractEntry src/glfw.cc
249 silly gunzTarPerm extractEntry test/test.js
250 silly gunzTarPerm extractEntry test/test_atb.js
251 silly gunzTarPerm extractEntry deps/.npmignore
252 silly gunzTarPerm extractEntry deps/README.md
253 silly gunzTarPerm extractEntry deps/darwin/libAntTweakBar.dylib
254 silly gunzTarPerm extractEntry deps/darwin/libGLEW.1.7.0.dylib
255 info preinstall [email protected]
256 silly install resolved []
257 verbose about to build /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan
258 info build /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan
259 verbose linkStuff [ false,
259 verbose linkStuff   false,
259 verbose linkStuff   false,
259 verbose linkStuff   '/Users/username/github/oxozone/src/node_modules/node-webgl/node_modules' ]
260 info linkStuff [email protected]
261 verbose linkBins [email protected]
262 verbose linkMans [email protected]
263 verbose rebuildBundles [email protected]
264 info install [email protected]
265 info postinstall [email protected]
266 verbose unlock done using /Users/username/.npm/_locks/nan-177f467af88aaeba.lock for /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/nan
267 silly gunzTarPerm extractEntry deps/darwin/libGLEW.a
268 silly gunzTarPerm extractEntry deps/darwin/libfreeimage.dylib
269 silly gunzTarPerm extractEntry deps/darwin/libglfw.dylib
270 silly gunzTarPerm extractEntry deps/darwin/libglfw3.a
271 silly gunzTarPerm extractEntry deps/include/AntTweakBar.h
272 silly gunzTarPerm extractEntry deps/include/FreeImage.h
273 silly gunzTarPerm extractEntry deps/include/GL/glew.h
274 silly gunzTarPerm extractEntry deps/include/GL/glfw.h
275 silly gunzTarPerm extractEntry deps/include/GL/glxew.h
276 silly gunzTarPerm extractEntry deps/include/GL/wglew.h
277 silly gunzTarPerm extractEntry deps/win32/FreeImage64.lib
278 silly gunzTarPerm extractEntry deps/win32/AntTweakBar.dll
279 silly gunzTarPerm extractEntry deps/win32/AntTweakBar64.dll
280 silly gunzTarPerm extractEntry deps/win32/AntTweakBar64.lib
281 silly gunzTarPerm extractEntry deps/win32/FreeImage32.dll
282 silly gunzTarPerm extractEntry deps/win32/FreeImage32.lib
283 silly gunzTarPerm extractEntry deps/win32/FreeImage64.dll
284 silly gunzTarPerm extractEntry deps/win32/AntTweakBar.lib
285 silly gunzTarPerm extractEntry deps/win32/GLFW32.dll
286 silly gunzTarPerm extractEntry deps/win32/GLFW32DLL.lib
287 silly gunzTarPerm extractEntry deps/win32/GLFW64.dll
288 silly gunzTarPerm extractEntry deps/win32/GLFW64DLL.lib
289 silly gunzTarPerm extractEntry deps/win32/glew32s.lib
290 silly gunzTarPerm extractEntry deps/win32/glew64s.lib
291 info preinstall [email protected]
292 silly install resolved []
293 verbose about to build /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
294 info build /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
295 verbose linkStuff [ false,
295 verbose linkStuff   false,
295 verbose linkStuff   false,
295 verbose linkStuff   '/Users/username/github/oxozone/src/node_modules/node-webgl/node_modules' ]
296 info linkStuff [email protected]
297 verbose linkBins [email protected]
298 verbose linkMans [email protected]
299 verbose rebuildBundles [email protected]
300 info install [email protected]
301 verbose unsafe-perm in lifecycle false
302 info [email protected] Failed to exec install script
303 verbose unlock done using /Users/username/.npm/_locks/node-glfw-261f5488c1e9ce8c.lock for /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
304 verbose about to build /Users/username/github/oxozone/src/node_modules/node-webgl
305 verbose unlock done using /Users/username/.npm/_locks/node-webgl-8e33f10f5a1d49d4.lock for /Users/username/github/oxozone/src/node_modules/node-webgl
306 verbose stack Error: [email protected] install: `node-gyp rebuild`
306 verbose stack Exit status 1
306 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:213:16)
306 verbose stack     at EventEmitter.emit (events.js:110:17)
306 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:14:12)
306 verbose stack     at ChildProcess.emit (events.js:110:17)
306 verbose stack     at maybeClose (child_process.js:1015:16)
306 verbose stack     at Process.ChildProcess._handle.onexit (child_process.js:1087:5)
307 verbose pkgid [email protected]
308 verbose cwd /Users/username/github/oxozone/src
309 error Darwin 14.3.0
310 error argv "node" "/usr/local/bin/npm" "install" "node-webgl"
311 error node v0.12.2
312 error npm  v2.7.4
313 error code ELIFECYCLE
314 error [email protected] install: `node-gyp rebuild`
314 error Exit status 1
315 error Failed at the [email protected] install script 'node-gyp rebuild'.
315 error This is most likely a problem with the node-glfw package,
315 error not with npm itself.
315 error Tell the author that this fails on your system:
315 error     node-gyp rebuild
315 error You can get their info via:
315 error     npm owner ls node-glfw
315 error There is likely additional logging output above.
316 verbose exit [ 1, true ]
317 verbose unbuild node_modules/node-webgl/node_modules/node-glfw
318 info preuninstall [email protected]
319 info uninstall [email protected]
320 verbose unbuild rmStuff [email protected] from /Users/username/github/oxozone/src/node_modules
321 verbose unbuild rmStuff in /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules
322 info postuninstall [email protected]
323 silly gentlyRm /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw is being purged from base /Users/username/github/oxozone/src
324 verbose gentlyRm don't care about contents; nuking /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
325 silly vacuum-fs purging /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules/node-glfw
326 silly vacuum-fs quitting because other entries in /Users/username/github/oxozone/src/node_modules/node-webgl/node_modules
327 verbose unbuild node_modules/node-webgl
328 info preuninstall [email protected]
329 info uninstall [email protected]
330 verbose unbuild rmStuff [email protected] from /Users/username/github/oxozone/src/node_modules
331 info postuninstall [email protected]
332 silly gentlyRm /Users/username/github/oxozone/src/node_modules/node-webgl is being purged from base /Users/username/github/oxozone/src
333 verbose gentlyRm don't care about contents; nuking /Users/username/github/oxozone/src/node_modules/node-webgl
334 silly vacuum-fs purging /Users/username/github/oxozone/src/node_modules/node-webgl
335 silly vacuum-fs removing /Users/username/github/oxozone/src/node_modules
336 silly vacuum-fs finished vacuuming up to /Users/username/github/oxozone/src

build failure Windows Node 10.15 and Node 11.11

freshly cloned repo. Same errors with both Node 10.15 LTS and Node 11.11.

First error is:
c:\users\alice\documents\node-webgl\node_modules\nan\nan_maybe_43_inl.h(112): error C2039: 'ForceSet': is not a member of 'v8::Object' (compiling source file ..\src\at
b.cc) [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]

Full output:
npm install

[email protected] install C:\Users\alice\Documents\node-webgl\node_modules\node-glfw
node-gyp rebuild

C:\Users\alice\Documents\node-webgl\node_modules\node-glfw>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
atb.cc
glfw.cc
win_delay_load_hook.cc
c:\program files (x86)\windows kits\10\include\10.0.17763.0\shared\minwindef.h(130): warning C4005: 'APIENTRY': macro redefinition (compiling source file ..\src\atb.cc
) [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice\documents\node-webgl\node_modules\node-glfw\deps\include\glfw\glfw3.h(85): note: see previous definition of 'APIENTRY' (compiling source file ..\src\a
tb.cc)
c:\program files (x86)\windows kits\10\include\10.0.17763.0\shared\minwindef.h(130): warning C4005: 'APIENTRY': macro redefinition (compiling source file ..\src\glfw.c
c) [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice\documents\node-webgl\node_modules\node-glfw\deps\include\glfw\glfw3.h(85): note: see previous definition of 'APIENTRY' (compiling source file ..\src\g
lfw.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan_maybe_43_inl.h(112): error C2039: 'ForceSet': is not a member of 'v8::Object' (compiling source file ..\src\at
b.cc) [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(3349): note: see declaration of 'v8::Object' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan_maybe_43_inl.h(112): error C2039: 'ForceSet': is not a member of 'v8::Object' (compiling source file ..\src\gl
fw.cc) [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(3349): note: see declaration of 'v8::Object' (compiling source file ..\src\glfw.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan_implementation_12_inl.h(337): warning C4996: 'v8::StringObject::New': was declared deprecated (compiling sourc
e file ..\src\atb.cc) [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(5241): note: see declaration of 'v8::StringObject::New' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan_implementation_12_inl.h(337): warning C4996: 'v8::StringObject::New': was declared deprecated (compiling sourc
e file ..\src\glfw.cc) [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(5241): note: see declaration of 'v8::StringObject::New' (compiling source file ..\src\glfw.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(834): warning C4996: 'node::MakeCallback': was declared deprecated (compiling source file ..\src\atb.cc) [C:
\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\node.h(171): note: see declaration of 'node::MakeCallback' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(849): warning C4996: 'node::MakeCallback': was declared deprecated (compiling source file ..\src\atb.cc) [C:
\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\node.h(164): note: see declaration of 'node::MakeCallback' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(864): warning C4996: 'node::MakeCallback': was declared deprecated (compiling source file ..\src\atb.cc) [C:
\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\node.h(157): note: see declaration of 'node::MakeCallback' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(911): warning C4996: 'v8::Value::ToString': was declared deprecated (compiling source file ..\src\atb.cc) [C
:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(10251): note: see declaration of 'v8::Value::ToString' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(834): warning C4996: 'node::MakeCallback': was declared deprecated (compiling source file ..\src\glfw.cc) [C
:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(921): warning C4996: 'v8::String::WriteUtf8': was declared deprecated (compiling source file ..\src\atb.cc)c
:\users\alice.node-gyp\11.11.0\include\node\node.h(171): note: see declaration of 'node::MakeCallback' (compiling source file ..\src\glfw.cc) [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2753): note: see declaration of 'v8::String::WriteUtf8' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(849): warning C4996: 'node::MakeCallback': was declared deprecated (compiling source file ..\src\glfw.cc) [C
:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\node.h(164): note: see declaration of 'node::MakeCallback' (compiling source file ..\src\glfw.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(864): warning C4996: 'node::MakeCallback': was declared deprecated (compiling source file ..\src\glfw.cc) [C
:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\node.h(157): note: see declaration of 'node::MakeCallback' (compiling source file ..\src\glfw.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(911): warning C4996: 'v8::Value::ToString': was declared deprecated (compiling source file ..\src\glfw.cc) [
C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(10251): note: see declaration of 'v8::Value::ToString' (compiling source file ..\src\glfw.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(921): warning C4996: 'v8::String::WriteUtf8': was declared deprecated (compiling source file ..\src\glfw.cc)
[C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2753): note: see declaration of 'v8::String::WriteUtf8' (compiling source file ..\src\glfw.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(1473): warning C4996: 'node::MakeCallback': was declared deprecated (compiling source file ..\src\atb.cc) [C
:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\node.h(171): note: see declaration of 'node::MakeCallback' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\nan\nan.h(1473): warning C4996: 'node::MakeCallback': was declared deprecated (compiling source file ..\src\glfw.cc) [
C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\node.h(171): note: see declaration of 'node::MakeCallback' (compiling source file ..\src\glfw.cc)
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(90): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents\n
ode-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(91): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents\n
ode-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(116): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(125): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(127): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(132): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(150): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(57): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(205): error C2661: 'v8::Function::NewInstance': no overloaded function takes 0 arguments [C:\User
s\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(262): error C2512: 'v8::TryCatch': no appropriate default constructor available [C:\Users\alice\D
ocuments\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(8817): note: see declaration of 'v8::TryCatch' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(282): error C2512: 'v8::TryCatch': no appropriate default constructor available [C:\Users\alice\D
ocuments\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(8817): note: see declaration of 'v8::TryCatch' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(301): warning C4996: 'v8::Value::Int32Value': was declared deprecated [C:\Users\alice\Documents\n
ode-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2572): note: see declaration of 'v8::Value::Int32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(304): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(307): warning C4996: 'v8::Value::Int32Value': was declared deprecated [C:\Users\alice\Documents\n
ode-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2572): note: see declaration of 'v8::Value::Int32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(310): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(313): warning C4996: 'v8::Value::Int32Value': was declared deprecated [C:\Users\alice\Documents\n
ode-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2572): note: see declaration of 'v8::Value::Int32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(316): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(319): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(322): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(325): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(330): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(331): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(332): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(338): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(339): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(340): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(341): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(347): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\no
de-webgl\node_modules\node-glfw\src\glfw.cc(454): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571):
note: see declaration of 'v8::Value::Uint32Value'

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(348): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\no
de-webgl\node_modules\node-glfw\src\glfw.cc(455): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571):
note: see declaration of 'v8::Value::Uint32Value'

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(349): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\no
de-webgl\node_modules\node-glfw\src\glfw.cc(458): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569):
note: see declaration of 'v8::Value::NumberValue'

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(355): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\no
de-webgl\node_modules\node-glfw\src\glfw.cc(459): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569):
note: see declaration of 'v8::Value::NumberValue'

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(460): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\n
ode-webgl\node_modules\node-glfw\src\atb.cc(356): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(462): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\n
ode-webgl\node_modules\node-glfw\src\atb.cc(357): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569):
note: see declaration of 'v8::Value::NumberValue'

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(463): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\n
ode-webgl\node_modules\node-glfw\src\atb.cc(363): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(464): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\n
ode-webgl\node_modules\node-glfw\src\atb.cc(364): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569):
note: see declaration of 'v8::Value::NumberValue'

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(365): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice\documents\no
de-webgl\node_modules\node-glfw\src\glfw.cc(466): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents\node-webgl\node_modules\no
de-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569):
note: see declaration of 'v8::Value::NumberValue'

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(366): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice\documents\node-webgl\node_modules\node-glfw
\src\glfw.cc(494): warning C4996: 'v8::Value::Uint32Value': was declared deprecated

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(372): warning C4996: 'v8::Value::NumberValue': was declared deprecatedc:\users\alice.node-gyp\11
.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value' [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(495): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(373): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice\documents\node-webgl\node_modules\node-glfw
\src\glfw.cc(496): warning C4996: 'v8::Value::NumberValue': was declared deprecated

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'c:\users\alice\documents\node-webgl\node_modules\node-glfw
\src\atb.cc(374): warning C4996: 'v8::Value::NumberValue': was declared deprecated

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(375): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(524): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'c:\users\alice\documents\node-webgl\node_modules\node-glfw
\src\atb.cc(380): warning C4996: 'v8::Value::Uint32Value': was declared deprecated

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'c:\users\alice\documents\node-webgl\node_modules\node-glfw
\src\glfw.cc(525): warning C4996: 'v8::Value::Uint32Value': was declared deprecated

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(395): error C2512: 'v8::TryCatch': no appropriate default constructor available [C:\Users\alice\D
ocuments\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(8817): note: see declaration of 'v8::TryCatch' (compiling source file ..\src\atb.cc)
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(538): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'c:\users\alice\documents\node-webgl\node_modules\node-glfw
\src\atb.cc(408): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(409): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(426): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(440): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'c:\users\alice\documents\node-webgl\node_modules
\node-glfw\src\glfw.cc(562): warning C4996: 'v8::Value::Uint32Value': was declared deprecated

c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(441): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecatedc:\users\alice.n
ode-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value' [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxpr
oj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(449): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(576): warning C4996: 'v8::Value::Uint32Value': was declared deprecatedc:\users\alice.node-gyp\1
1.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value' [C:\Users\alice\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxp
roj]

c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(591): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(464): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\atb.cc(466): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(598): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(599): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(600): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(601): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(644): warning C4996: 'v8::Value::ToObject': was declared deprecated [C:\Users\alice\Documents\no
de-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(10257): note: see declaration of 'v8::Value::ToObject'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(668): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(678): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(679): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(689): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(704): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(707): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(714): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(717): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(724): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(739): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(754): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(764): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(774): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(784): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(794): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(804): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(805): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(815): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(816): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(839): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(840): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(850): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(851): warning C4996: 'v8::Value::Uint32Value': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2571): note: see declaration of 'v8::Value::Uint32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(861): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(876): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(877): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(878): warning C4996: 'v8::Value::NumberValue': was declared deprecated [C:\Users\alice\Documents
\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2569): note: see declaration of 'v8::Value::NumberValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(889): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(905): warning C4996: 'v8::Value::IntegerValue': was declared deprecated [C:\Users\alice\Document
s\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2570): note: see declaration of 'v8::Value::IntegerValue'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(915): warning C4996: 'v8::Value::Int32Value': was declared deprecated [C:\Users\alice\Documents
node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2572): note: see declaration of 'v8::Value::Int32Value'
c:\users\alice\documents\node-webgl\node_modules\node-glfw\src\glfw.cc(923): warning C4996: 'v8::String::Utf8Value::Utf8Value': was declared deprecated [C:\Users\alice
\Documents\node-webgl\node_modules\node-glfw\build\glfw.vcxproj]
c:\users\alice.node-gyp\11.11.0\include\node\v8.h(2991): note: see declaration of 'v8::String::Utf8Value::Utf8Value'
gyp ERR! build error
gyp ERR! stack Error: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:262:23)
gyp ERR! stack at ChildProcess.emit (events.js:197:13)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:254:12)
gyp ERR! System Windows_NT 10.0.17763
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\alice\Documents\node-webgl\node_modules\node-glfw
gyp ERR! node -v v11.11.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\alice\AppData\Roaming\npm-cache_logs\2019-03-12T17_52_01_268Z-debug.log

clean install yet example app GL window hangs

Mikaël

I'm on ubuntu 14.04 - an avid WebGL developer (see my http://webgl-3d-animation.herokuapp.com/) and have installed all the prerequisites and have a clean install - even your node-gyp rebuild came back OK - yet when I execute your example

cd node-webgl/test/
node lesson02.js

it creates a GL window which just hangs - I'd like to get this running - is there anything I can do to give more feedback ?

cheers - Scott Stensland

Compilation Issues with Centos 6.5

CentOS (and RHEL most likely) have a GLEW package (1.04) that is missing a number of definitions required by node-wegl for compilation. I've posed the erroroneous output below. My solution was to download and install the latest GLEW version from scratch (1.10).

../src/bindings.cc: In function ‘void init(v8::Handlev8::Object)’:
../src/bindings.cc:367: error: ‘GL_FIXED’ was not declared in this scope
../src/bindings.cc:389: error: ‘GL_MAX_VERTEX_UNIFORM_VECTORS’ was not declared in this scope
../src/bindings.cc:390: error: ‘GL_MAX_VARYING_VECTORS’ was not declared in this scope
../src/bindings.cc:396: error: ‘GL_MAX_FRAGMENT_UNIFORM_VECTORS’ was not declared in this scope
../src/bindings.cc:536: error: ‘GL_IMPLEMENTATION_COLOR_READ_TYPE’ was not declared in this scope
../src/bindings.cc:537: error: ‘GL_IMPLEMENTATION_COLOR_READ_FORMAT’ was not declared in this scope
../src/bindings.cc:545: error: ‘GL_SHADER_COMPILER’ was not declared in this scope
../src/bindings.cc:550: error: ‘GL_SHADER_BINARY_FORMATS’ was not declared in this scope
../src/bindings.cc:551: error: ‘GL_NUM_SHADER_BINARY_FORMATS’ was not declared in this scope
../src/bindings.cc:556: error: ‘GL_LOW_FLOAT’ was not declared in this scope
../src/bindings.cc:557: error: ‘GL_MEDIUM_FLOAT’ was not declared in this scope
../src/bindings.cc:558: error: ‘GL_HIGH_FLOAT’ was not declared in this scope
../src/bindings.cc:559: error: ‘GL_LOW_INT’ was not declared in this scope
../src/bindings.cc:560: error: ‘GL_MEDIUM_INT’ was not declared in this scope
../src/bindings.cc:561: error: ‘GL_HIGH_INT’ was not declared in this scope

Any use for this lib?

Hey, I just whipped up this lib for loading shaders from strings or via xhr. I was wondering if anyone had WebGL bindings for Node's runtime. I've seen an XHR Node module; with that and mine you could have a nice program loader. I'd need to polish up my lib for node, but what are your thoughts?

Antialiasing

There seems to be a lack of support for anti-aliasing. (Would this be better on node-glfw?)

I am testing this on windows 10 with the latest of all the dependencies, all 64-bit.

If this should be working, let me know what I can do to help figure it out. If this is just a lacking from core libraries that we have no control over, let me know. =]

getArrayData doesn't support Arrays, breaks three js support

In three.js if you use MeshStandardMaterial, the code path eventually calls gl.uniform3fv with an array argument. This hits webgl.cc line 49 which looks like

  if(!arg->IsNull()) {
    if(arg->IsArray()) {
      Nan::ThrowError("Not support array type");
      /*
      Local<Array> arr = Local<Array>::Cast(arg);
      if(num) *num=arr->Length();
      data = reinterpret_cast<Type*>(arr->GetIndexedPropertiesExternalArrayData());*/
    }

I see that GetIndexedPropertiesExternalArrayData is now deprecated in node. I found this comment by @mikeseven in the node repo: nodejs/node#2977 (comment)

I assume this is the problem now? In this case is it a big deal to make a copy of the buffer? Is there a good reason this was never replaced with the new API mentioned in that node issue?

windows 8 support

I have tried using:
node (64bit) and node(32bit) and not much success!
My current node version is 0.10.28 ... when I last tried it few months ago I was on 0.8.26, and it ran in windows 8 (with many hacks in between) ... any hints will be appreciated!

version 0.4.3 from npm doesn't match git tag

The "DEPTH_STENCIL" constant is defined in src/bindings.cc of the Git repository (in both master and the 0.4.3 tag), but it is not present in an install via "npm install node-webgl".

GL extensions not found

Hi, found something weird when using examples/lightgl/gpulightmap.js

The app throws "demo requires OES_texture_float or GL_ARB_texture_float"
I ran this:

exts = gl.getSupportedExtensions();
for(var i = 0; i < exts.length; i++) {
  console.log(exts[i]);
  console.log(gl.getExtension(exts[i]));
}

gl.getExtension() fails to get any extension...
Whilst gl.getSupportedExtensions() lists a large list of supported extensions, including GL_ARB_texture_float.

Any ideas?

Thanks, Tim

  • windows 8.1 x64
  • GTX765M
  • node 0.10.33 x64

Installation problem node v4.1.2, Mac OS 10.8.5

Hi! After installing all necessary dependencies, I tried:

sudo npm install node-webgl

But I keep gettings this:

../src/common.h:15:24: fatal error: GLFW/glfw3.h: No such file or directory

But:

ls /usr/local/include/GLFW/
glfw3.h glfw3native.h npm-debug.log

Any ideas, what could go wrong in here? Somehow the node-gyp cannot find the .h file even though it is there. Using node-gyp directly inside the repo clone gives me another error:

../node_modules/nan/nan.h:324:27: error: redefinition of 'template v8::Local Nan::imp::NanEnsureHandleOrPersistent(const v8::Local&)'

Which confuses me even more. Any help would be appreiciated a lot!

newest Three.js compatibilty

Hello, i'm use the three.js v0.90.0 and my node version is v8.9.3.

I can run the example's code successly and show the graph, but when i use three.js, it will happen error.

I try to find the question, at lease...

gl.MAX_VERTEX_UNIFORM_VECTORS
gl.MAX_VARYING_VECTORS
gl.MAX_VERTEX_ATTRIBS

three.js need the three attributes at init, and them is undefined.

I set them to a number temporarily, continue...

Then, the console tell me a new error:

THREE.WebGLProgram: shader error:  0 gl.VALIDATE_STATUS false gl.getProgramInfoLog ERROR: One or more attached shaders not successfully compiled ERROR: 0:52: 'highp' : syntax error: syntax error ERROR: 0:117: 'highp' : syntax error: syntax error

The README let us add the code in fragment shaders:

#ifdef GL_ES
precision highp float;
#endif

I don't know how to add it to the three.js, Is it related to this error?

The node-webgl is an amazing and valuable project, can you add an easy example to display how to run it with newest three.js ?

I hear you're busy in other issue, about this project, has a roadmap or plan ?
:)

Looks like toDataURL() function is disabled or not available in node-webgl

In node.js, using node-webgl library I define a canvas element. and all rendering takes place in that canvas. However, when I use the function canvas.toDataURL(), the error says canvas.toDataURL() as undefined.

Here is the link where I have posted the info in details with errors: [(http://stackoverflow.com/questions/39591877/canvas-todataurl-is-not-a-function-error-in-javascript-code-running-in-node)] ,

Had a doubt, am I missing something or not accessing it properly or the feature is not available now in node-webGL ? Any alternatives for the same to extract the data of canvas defined under library node-webGL ?

Note: But it canvas is defined using require('canvas'), then if some drawing is made in canvas and the function canvas.toDataURL() works under this library, unfortunately WebGL is not supported in node-canvas library.

Thanks & Regards,
Prajwal

Problem running tests

Hello,

I clone the lastest version and I try to run test/glversion.js with that result

$ node test/glversion.js 

/Users/cartucho/Repositories/webgl/node-webgl/lib/platform_glfw.js:75
            GLFW.OpenWindowHint(GLFW.WINDOW_NO_RESIZE, 0);
                 ^
TypeError: Object #<Object> has no method 'OpenWindowHint'
    at Object.platform.createWindow (/Users/cartucho/Repositories/webgl/node-webgl/lib/platform_glfw.js:75:18)
    at Object.platform.createElement (/Users/cartucho/Repositories/webgl/node-webgl/lib/platform_glfw.js:55:22)
    at Object.<anonymous> (/Users/cartucho/Repositories/webgl/node-webgl/test/glversion.js:5:23)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:906:3

I try to change the call to OpenWindowHint to WindowHint and then fail with

/Users/cartucho/Repositories/webgl/node-webgl/lib/platform_glfw.js:83
            if (!GLFW.OpenWindow(width, height,
                      ^
TypeError: Object #<Object> has no method 'OpenWindow'
    at Object.platform.createWindow (/Users/cartucho/Repositories/webgl/node-webgl/lib/platform_glfw.js:83:23)
    at Object.platform.createElement (/Users/cartucho/Repositories/webgl/node-webgl/lib/platform_glfw.js:55:22)
....

After Modify OpenWindow call to CreateWindow and minor dirty changes like:

var kk = GLFW.CreateWindow(width, height, "test");

// make sure GLEW is initialized
WebGL.Init();

//GLFW.SwapBuffers();
GLFW.SwapInterval(0); // Disable VSync (we want to get as high FPS as possible!)

for (var l = 0, ln = resizeListeners.length; l < ln; ++l)
    GLFW.events.addListener('resize', resizeListeners[l]);

var size = GLFW.GetWindowSize(kk);

And now this test runs...
But when try another tests like lesson02.js, it open a 800x800 black window that only can force close to exit.

This tests are over a MacOSX 10.8.5 with a NVIDIA GeForce GTX 660M

Any idea?

Thanks for your support.

Module not found

I am attempting to run this is windows. I had to place the .h and .lib files in their appropriate directories in the Visual Studio include/lib dirs in order to be able to build via either method below. In both cases, the app I am trying to run is wavefront.js from the examples dir, but moved to the top level (next to node_modules) and with the require path adjusted.

First, I tried installing via "npm install node-webgl". After successful build, I tried running the app, and receive the following error:

module.js:356
  Module._extensions[extension](this, filename);
                               ^
Error: The specified module could not be found.
c:\Work\Projects\node-webgl\node_modules\node-webgl\build\Release\webgl.node
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (c:\Work\Projects\node-webgl\node_modules\node-webgl\lib\webgl.js:1:89)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

I then tried cloning this repo. I initialized and updated the submodule, though I am unsure if I need to do anything special with the files inside deps/ besides putting them in the folder as in the first paragraph of this issue. I then ran "npm install" inside the cloned repo. Once trying to run the app, I receive the following error:

c:\Work\Projects\node-webgl\node_modules\node-webgl\node_modules\bindings\bindings.js:83
        throw e
              ^
Error: The specified module could not be found.
c:\Work\Projects\node-webgl\node_modules\node-webgl\build\Release\webgl.node
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at bindings (c:\Work\Projects\node-webgl\node_modules\node-webgl\node_modules\bindings\bindings.js:76:44)
    at Object.<anonymous> (c:\Work\Projects\node-webgl\node_modules\node-webgl\lib\webgl.js:1:108)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)

Any help you can offer would be greatly appreciated.

Cannot find module 'bindings'

Cloned repo today and tried it, but it ended up like this:

cheery@ruttunen:~/node-webgl$ node-gyp rebuild
gyp info it worked if it ends with ok
gyp info using [email protected]
gyp info using [email protected] | linux | x64
gyp info spawn python
gyp info spawn args [ '/usr/local/lib/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'make',
gyp info spawn args   '-I',
gyp info spawn args   '/home/cheery/node-webgl/build/config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/usr/local/lib/node_modules/node-gyp/addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/cheery/.node-gyp/0.10.25/common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=/home/cheery/.node-gyp/0.10.25',
gyp info spawn args   '-Dmodule_root_dir=/home/cheery/node-webgl',
gyp info spawn args   '--depth=.',
gyp info spawn args   '--no-parallel',
gyp info spawn args   '--generator-output',
gyp info spawn args   'build',
gyp info spawn args   '-Goutput_dir=.' ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory `/home/cheery/node-webgl/build'
  CXX(target) Release/obj.target/webgl/src/bindings.o
  CXX(target) Release/obj.target/webgl/src/image.o
  CXX(target) Release/obj.target/webgl/src/webgl.o
  SOLINK_MODULE(target) Release/obj.target/webgl.node
  SOLINK_MODULE(target) Release/obj.target/webgl.node: Finished
  COPY Release/webgl.node
make: Leaving directory `/home/cheery/node-webgl/build'
gyp info ok 
cheery@ruttunen:~/node-webgl$ node test/lesson02.js 

module.js:340
    throw err;
          ^
Error: Cannot find module 'bindings'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object. (/home/cheery/node-webgl/lib/webgl.js:1:89)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
cheery@ruttunen:~/node-webgl$ 

Three.js npm node for node-webcl and node-webgl

Hello Mike,
I have been following your repository for quite a while. I was curious if you can create an npm node for three.js regarding node-webcl and node-webgl compatible. I am also waiting for node-glfw for node v0.12.x.

Thanks you

Waqas

Fail install

v8
::String”的声明
..\src\atb.cc(39): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\glfw.cc(86): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:

MyWorkSpa
ce_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-g
lfw\build\glfw.vcxproj]
..\src\atb.cc(39): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\glfw.cc(86): error C3861: “NewSymbol”: 找不到标识符 [E:MyWorkSpace
GameDev
lope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\g
lfw.vcxproj]
..\src\atb.cc(39): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\glfw.cc(89): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_My
WorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(40): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\glfw.cc(89): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:

MyWorkSpa
ce_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-g
lfw\build\glfw.vcxproj]
..\src\atb.cc(40): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\glfw.cc(89): error C3861: “NewSymbol”: 找不到标识符 [E:MyWorkSpace
GameDev
lope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\g
lfw.vcxproj]
..\src\atb.cc(40): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\glfw.cc(90): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_My
WorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(41): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\glfw.cc(90): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:

MyWorkSpa
ce_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-g
lfw\build\glfw.vcxproj]
..\src\atb.cc(41): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\glfw.cc(90): error C3861: “NewSymbol”: 找不到标识符 [E:MyWorkSpace
GameDev
lope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\g
lfw.vcxproj]
..\src\atb.cc(41): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\glfw.cc(93): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_My
WorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(42): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\glfw.cc(93): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:

MyWorkSpa
ce_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-g
lfw\build\glfw.vcxproj]
..\src\atb.cc(42): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\glfw.cc(93): error C3861: “NewSymbol”: 找不到标识符 [E:MyWorkSpace
GameDev
lope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\g
lfw.vcxproj]
..\src\atb.cc(42): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\glfw.cc(94): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_My
WorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(44): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\glfw.cc(94): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:

MyWorkSpa
ce_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-g
lfw\build\glfw.vcxproj]
..\src\atb.cc(44): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\glfw.cc(94): error C3861: “NewSymbol”: 找不到标识符 [E:MyWorkSpace
GameDev
lope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\g
lfw.vcxproj]
..\src\atb.cc(44): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\glfw.cc(95): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_My
WorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(45): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\glfw.cc(95): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:

MyWorkSpa
ce_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-g
lfw\build\glfw.vcxproj]
..\src\atb.cc(45): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\glfw.cc(95): error C3861: “NewSymbol”: 找不到标识符 [E:MyWorkSpace
GameDev
lope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\g
lfw.vcxproj]
..\src\atb.cc(45): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\glfw.cc(98): error C2664: “v8::Localv8::Array v8::Array::New(v8::Isola

te *,int)”: 无法将参数 1 从“int”转换为“v8::Isolate *” [E:_MyWorkSpace_Gam
eDevlope\Test
\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\glfw.vcxpr
oj]
从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换
..\src\atb.cc(46): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\glfw.cc(100): error C2660: “v8::Object::New”: 函数不接受 0 个参数 [E:

MyWorkSpa
ce_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-g
lfw\build\glfw.vcxproj]
..\src\atb.cc(46): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\glfw.cc(101): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_M
yWorkSpa
ce_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-g
lfw\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(46): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\glfw.cc(101): fatal error C1003: 错误计数超过 100;正在停止编译 [E:_MyWo
rkSpace_Gam
eDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\bui
ld\glfw.vcxproj]
..\src\atb.cc(47): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(47): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\atb.cc(47): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\atb.cc(48): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(48): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\atb.cc(48): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\atb.cc(49): error C2039: “NewSymbol”: 不是“v8::String”的成员 [E:_MyW
orkSpace
_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glf
w\build\glfw.vcxproj]
C:\Users\tommyZZM.node-gyp\0.12.0\deps\v8\include\v8.h(1599) : 参见“
v8
::String”的声明
..\src\atb.cc(49): error C2660: “v8::Integer::New”: 函数不接受 1 个参数 [E:_M
yWorkSpac
e_GameDevlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-gl
fw\build\glfw.vcxproj]
..\src\atb.cc(49): error C3861: “NewSymbol”: 找不到标识符 [E:_MyWorkSpace_G
ameDevl
ope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build\gl
fw.vcxproj]
..\src\atb.cc(49): fatal error C1003: 错误计数超过 100;正在停止编译 [E:_MyWork
Space_GameD
evlope\Test\HelloNodeWebGL\node_modules\node-webgl\node_modules\node-glfw\build
\glfw.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: C:\Program Files (x86)\MSBuild\12.0\bin\msbuild.exe fail
ed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (D:\DigitalMedia\nodejs\node_modules\n
pm\node_modules\node-gyp\lib\build.js:267:23)
gyp ERR! stack at ChildProcess.emit (events.js:110:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:1067
:12)
gyp ERR! System Windows_NT 6.3.9600
gyp ERR! command "node" "D:\DigitalMedia\nodejs\node_modules\npm\node_modul
es\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd E:_MyWorkSpace_GameDevlope\Test\HelloNodeWebGL\node_modules\node-
webgl\node_modules\node-glfw
gyp ERR! node -v v0.12.0
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok
npm ERR! Windows_NT 6.3.9600
npm ERR! argv "D:\DigitalMedia\nodejs\node.exe" "D:\DigitalMedia\nodejs
node_modules\npm\bin\npm-cli.js" "install"
npm ERR! node v0.12.0
npm ERR! npm v2.7.0
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the node-glfw package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get their info via:
npm ERR! npm owner ls node-glfw
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! E:_MyWorkSpace_GameDevlope\Test\HelloNodeWebGL\npm-debug.log

undefined symbol: XRRQueryExtension

When try to run any test or example:
node: symbol lookup error: /usr/local/lib/node_modules/node-glfw/build/Release/glfw.node: undefined symbol: XRRQueryExtension

Blank window

const assert = require("assert").ok;
const EventEmitter = require("events");
const fs = require("fs");
const path = require("path");
const net = require("net");
const glfw = require("node-glfw2");
const SYMS = require("./syms.js").Server;
const WebGL = require("node-webgl");

class Server extends EventEmitter {
	constructor(opts={}) {
		super();
		opts = Object.assign(JSON.parse(fs.readFileSync(path.join(__dirname,"config-defaults.json")).toString()),opts);
		
		this[SYMS["document"]] = WebGL.document();
		
		this[SYMS["canvas"]] = this[SYMS["document"]].createElement("canvas",opts.res[0],opts.res[1]);
		glfw.WindowHint(glfw.RESIZABLE,false);
		if(opts.vsync) glfw.SwapInterval(1);
		else glfw.SwapInterval(0);
		this[SYMS["document"]].setTitle("Droid.JS");
		console.log(this[SYMS["document"]]);
		
		this[SYMS["gl"]] = this[SYMS["canvas"]].getContext("experimental-webgl");
		
		this[SYMS["atb"]] = this[SYMS["document"]].AntTweakBar;
		
		this[SYMS["atb"]].Init();
		this[SYMS["atb"]].Define(" GLOBAL help='Droid.JS Alpha' ");
		this[SYMS["atb"]].WindowSize(opts.res[0],opts.res[1]);
		
		this[SYMS["document"]].requestAnimationFrame(() => this.render(),1000/opts.fps);
		
		this[SYMS["socket"]] = net.createServer(opts.net,() => {});
		this[SYMS["socket"]].listen(opts.net.port);
	}
	destroy() {
		this[SYMS["socket"]].close();
	}
	render() {
		this[SYMS["atb"]].Draw();
	}
}
module.exports = Server;

I'm working on something that requires a server, also I can't get it to not allow resizing and my DE is telling me the window isn't responding.

installation problem on ubuntu 14.04

Here is how I tried to install this package but with no success

vitalije@phenom:/tmp/t$ node --version
v4.2.3
vitalije@phenom:/tmp/t$ npm --version
2.14.7
vitalije@phenom:/tmp/t$ l
node_modules/
vitalije@phenom:/tmp/t$ rm -rf node_modules/
vitalije@phenom:/tmp/t$ node --version
v4.2.3
vitalije@phenom:/tmp/t$ npm --version
2.14.7
vitalije@phenom:/tmp/t$ npm install node-webgl
npm WARN engine [email protected]: wanted: {"node":">=0.6.5 <4.0.0"} (current: {"node":"4.2.3","npm":"2.14.7"})

> [email protected] install /tmp/t/node_modules/node-webgl/node_modules/node-glfw
> node-gyp rebuild

make: Entering directory `/tmp/t/node_modules/node-webgl/node_modules/node-glfw/build'
  CXX(target) Release/obj.target/glfw/src/atb.o
  CXX(target) Release/obj.target/glfw/src/glfw.o
  SOLINK_MODULE(target) Release/obj.target/glfw.node
  COPY Release/glfw.node
make: Leaving directory `/tmp/t/node_modules/node-webgl/node_modules/node-glfw/build'

> [email protected] install /tmp/t/node_modules/node-webgl
> node-gyp rebuild

make: Entering directory `/tmp/t/node_modules/node-webgl/build'
  CXX(target) Release/obj.target/webgl/src/bindings.o
  CXX(target) Release/obj.target/webgl/src/image.o
  CXX(target) Release/obj.target/webgl/src/webgl.o
  SOLINK_MODULE(target) Release/obj.target/webgl.node
  COPY Release/webgl.node
make: Leaving directory `/tmp/t/node_modules/node-webgl/build'
[email protected] node_modules/node-webgl
├── [email protected]
├── [email protected]
└── [email protected]
vitalije@phenom:/tmp/t$ node node_modules/node-webgl/test/lesson02.js 
node: symbol lookup error: /tmp/t/node_modules/node-webgl/node_modules/node-glfw/build/Release/glfw.node: undefined symbol: XIQueryVersion
vitalije@phenom:/tmp/t$

as one can see installation went with just a single warning, but whatever example I tried to run the result is like the above:

node: symbol lookup error: /tmp/t/node_modules/node-webgl/node_modules/node-glfw/build/Release/glfw.node: undefined symbol: XIQueryVersion

What am I doing wrong?

Fail to compile on Linux (Ubuntu 14.04)

Setup:

  • Linux XXX 3.13.0-44-generic #73-Ubuntu SMP Tue Dec 16 00:22:43 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux.
  • gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2

There are two issues:

make: Entering directory `/home/tbh/test/node-webcl/build'
  CXX(target) Release/obj.target/webcl/src/bindings.o
In file included from /usr/include/X11/Xlib.h:44:0,
                 from /usr/include/GL/glx.h:30,
                 from ../src/common.h:74,
                 from ../src/webcl.h:30,
                 from ../src/bindings.cc:27:
../src/common.h:153:3: error: expected identifier before numeric constant
   None=0,
../src/webcl.cc: In function ‘webcl::WebCLObject* webcl::findCLObj(void*, webcl::CLObjType::CLObjType)’:
../src/webcl.cc:58:20: error: ‘nullptr’ was not declared in this scope
   if(!clid) return nullptr;

iojs/nodev0.12 issue with threejs

(pulling this up from #35).

I have been using threejs as modified for node by kabbi (https://github.com/kabbi/three.js). This works great with ubuntu standard node, v0.10.25. kabbi has provided some examples in his three.js project in the examples-nwgl directory that all work well.

i am now trying to move to current node or iojs. iojs 1.6.2, node v012.x. in both cases, the examples fail with the following error:

/home/john/ws/var/release/install/bin/hostjs/node_modules/node-webgl/lib/webgl.js:1004
  return _uniformMatrix4fv(location ? location._ : 0, transpose, value);
         ^
Error: Not enough data for UniformMatrix4fv
    at Error (native)
    at Object.uniformMatrix4fv (/home/john/ws/var/release/install/bin/hostjs/node_modules/node-webgl/lib/webgl.js:1004:10)
    at loadUniformsGeneric (/home/john/ws/var/release/install/bin/hostjs/node_modules/three/three.js:22802:10)
    at setProgram (/home/john/ws/var/release/install/bin/hostjs/node_modules/three/three.js:22248:4)
    at renderBufferDirect (/home/john/ws/var/release/install/bin/hostjs/node_modules/three/three.js:20158:17)
    at renderObjects (/home/john/ws/var/release/install/bin/hostjs/node_modules/three/three.js:21197:11)
    at render (/home/john/ws/var/release/install/bin/hostjs/node_modules/three/three.js:21070:4)
    at render (/home/john/ws/var/release/install/bin/hostjs/example3/example-cube.js:29:11)
    at Object.<anonymous> (/home/john/ws/var/release/install/bin/hostjs/example3/example-cube.js:32:1)

this error is originating from webgl.cc in the NAN_METHOD UniformMatrix4fv, line 377:

NAN_METHOD(UniformMatrix4fv) {
  NanScope();

  GLint location = args[0]->Int32Value();
  GLboolean transpose = args[1]->BooleanValue();
  GLsizei count=0;
  GLfloat* data=getArrayData<GLfloat>(args[2],&count);

  if (count < 16) {
    NanThrowError("Not enough data for UniformMatrix4fv");
  }

it occurs because the uniform matrix does not appear to have enough data. on the javascript side, it is easy to use node-debug to inspect and see that the javascript array does indeed have the requisite 16 elements, but for some reason webgl.cc is not seeing.

the count variable comes from line 374, which is expanded inline by lines 72-89. arg is an object in this case, so num and data are extracted in lines 84/85:

    else if(arg->IsObject()) {
      if(num) *num = arg->ToObject()->GetIndexedPropertiesExternalArrayDataLength();
      data = reinterpret_cast<Type*>(arg->ToObject()->GetIndexedPropertiesExternalArrayData());
    }

this is as far as i have tracked the problem.

now i am a total v8 noob, but in surfing around i see that there have been some changes in external objects in the latest versions of node and iojs. this particular discussion seemed interesting to me nodejs/nan#291, again tho i am pretty ignorant about v8 as of yet. but it seems like this thread may be suggesting a different way to access external objects?

will post more here as i learn more. i have slickedit/gdb hooked up with the c++ side if i can provide any more data

WebGL spec compliance

Add support for WebGLRenderingContext object in a clean JS way: this would require moving C++ code from global namespace to WebGLRenderingContext object.
But it should be transparent to users i.e. no change at JS wrapper level.

Release canvas?

Is there a way to stop/remove a canvas/document/window without closing the node process? I didn't find anything in Document, Canvas, nor Context. We're slowly accumulating dead windows :)

Consider adding a security warning?

WebGL takes pretty extreme steps to prevent data leakage and other security issues.

It clears all memory allocated by GL. It checks for all out of bounds conditions. It also re-writes all shaders to make sure they don't exceed certain limits.

node-webgl seems to do none of this. This seems like a pretty big security issue

  • If user data is passed into node-webgl the server could easily be compromised.

Whether it's user shaders (like if you wanted to render shadertoy images on the server) or even textures and geometry data. If texture sizes are set by the user it could be easy to overwhelm the driver. If user indexed geometry is passed in it would allow reading all of GPU (and possibly CPU) memory by passing in out of range indices.

  • Bugs in server side code could expose user data.

Example: call gl.texImage2D with null then render the texture and call gl.readPixels or just add the texture to a framebuffer and call gl.readPixels. In either case you'll get uninitialized memory the contents of which could be passwords, ssh keys, photos, or other user data.

A bug in your GL code that seems to be working might actually be exposing uninitialized data

Another examples is client side arrays. WebGL doesn't allow them but node-webgl doesn't check which means attributes can read random places in memory.

With enough care it's certainly possible to use node-webgl for some use cases but I'm just wondering should there be some large warning in the README about these issues? I'd expect lots of devs to be unaware of them and just blindly add node-webgl to their project.

Segfault when uploading vertex data

Referencing https://github.com/PAIR-code/deeplearnjs/issues/234, I'm attempting to add node-webgl as a server-side drop-in replacement in deeplearn.js. I've added the (pretty straight-forward) bindings to replace the WebGLRenderContext and extensions, however, I'm getting an error when binding vertexAttrib buffers, not sure why. Commenting out bindVertexBufferToProgramAttribute for clipSpacePos (gpgpu_util.ts:185) will make it -at least not throw errors- but obviously breaks the engine. Per WebGL_and_OpenGL_Differences I've switched the vertex-data to be uploaded into attribute number 0, but without much success. Any ideas/suggestions as to how I should proceed and/or debug?

Relevant branch: https://github.com/arthurjdam/deeplearnjs/tree/feature-headless-gl

Error (not very helpful, since it's just the segfault when drawing elements):

Status: Using GLEW 2.1.0
Status: Using GLEW 2.1.0
Status: Using GLEW 2.1.0
0
Status: Using GLEW 2.1.0
PID 27244 received SIGSEGV for address: 0x0
0   segfault-handler.node               0x00000001037f0168 _ZL16segfault_handleriP9__siginfoPv + 280
1   libsystem_platform.dylib            0x00007fff57b48f5a _sigtramp + 26
2   ???                                 0x0000000000000000 0x0 + 0
3   GLEngine                            0x00007fff3a587436 glDrawElements_Exec + 961
4   webgl.node                          0x0000000103ddb8dc _ZN5webgl12DrawElementsERKN3Nan20FunctionCallbackInfoIN2v85ValueEEE + 196
5   webgl.node                          0x0000000103dd687b _ZN3Nan3impL23FunctionCallbackWrapperERKN2v820FunctionCallbackInfoINS1_5ValueEEE + 136
6   node                                0x00000001001d08a4 _ZN2v88internal25FunctionCallbackArguments4CallEPFvRKNS_20FunctionCallbackInfoINS_5ValueEEEE + 430
7   node                                0x0000000100219e8b _ZN2v88internal12_GLOBAL__N_119HandleApiCallHelperILb0EEENS0_11MaybeHandleINS0_6ObjectEEEPNS0_7IsolateENS0_6HandleINS0_10HeapObjectEEESA_NS8_INS0_20FunctionTemplateInfoEEENS8_IS4_EENS0_16BuiltinArgumentsE + 775
8   node                                0x00000001002195ae _ZN2v88internalL26Builtin_Impl_HandleApiCallENS0_16BuiltinArgumentsEPNS0_7IsolateE + 259
9   ???                                 0x000030b9e4e0463d 0x0 + 53574966986301

glFrontFace missing

I was trying to use three.js with node-webgl, and found that the glFrontFace function doesn't seem to be bound.

I tried adding it myself with

dc2b61e3f1f0:node-webgl blong$ diff src/bindings.cc~ src/bindings.cc
162a163

NODE_SET_METHOD(target, "frontFace", webgl::FrontFace);

dc2b61e3f1f0:node-webgl blong$ diff src/webgl.h~ src/webgl.h
152a153,154

JS_METHOD(FrontFace);

And rebuilt node-webgl. Now when I try to use three.js, I get the following:

dc2b61e3f1f0:2500ad blong$ ./node-7.10/bin/node three-test.js

module.js:480
process.dlopen(filename, module.exports);
^
Error: dlopen(/proj/2500ad/node_modules/node-webgl/build/Release/webgl.node, 1): Symbol not found: __ZN5webgl9FrontFaceERKN2v89ArgumentsE
Referenced from: /proj/2500ad/node_modules/node-webgl/build/Release/webgl.node
Expected in: flat namespace
in /proj/2500ad/node_modules/node-webgl/build/Release/webgl.node
at Object..node (module.js:480:11)
at Module.load (module.js:356:32)
at Function._load (module.js:312:12)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object. (/proj/2500ad/node_modules/node-webgl/lib/webgl.js:1:89)
at Module._compile (module.js:449:26)
at Object..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function._load (module.js:312:12)

Any clues what I'm doing wrong or how to properly get glFrontFace supported in node-webgl?

Can you create a desktop app with this?

I'm looking for an alternative to Electron.

I hate how Chromium disables RequestAnimationFrame on minimized windows and looking to just get my game working inside a canvas element and ship it as just an app. I could convert my ui using html to use webgl instead.. would switching to use this be a good idea?

Thanks

THREE.js

I finally got node-webgl to compile and run. I am now trying to get it to threejs to run.

I firstly had to modify threejs to add "#ifdef GL_ES ... #endif" around the precision definitions, but that wasn't difficult.

Now it is running, opening the gl window, then exiting without errors. You can get my code at https://gist.github.com/HMUDesign/91771713413422db85be

I have narrowed down the problem a bit. It seems some of the calls are causing a crash. In the for loop on line 22385, inside loadUniformsGeneric, Certain of these uniforms simply cause the application to exit.

Any help or thoughts you may have would be greatly appreciated. As a note, all of the examples run fine.

Window shows up then closes

Hi!
I've managed to install the library, I'm using Node.js x64 on Windows. I can't get any of the examples to work, the window shows up and then closes immediately. No error message or nothing. It stops on the line 80 of platform_glfw.js:

            if (!GLFW.OpenWindow(width, height,
                              0, 0, 0, 0, // r,g,b,a bits
                              24, 0, // depth, stencil bits
                              attribs)) {

No more code is executed, so it must fail on the GLFW.OpenWindow call. I have AMD Radeon 6k M with 8.83.6.3-110507a-120463C-HP driver if it helps.

Error in tests

I had some trouble in running examples in node-webgl. I installed node-webgl from here. node-glfw and freeimage are also installed successfully. I am using Windows 7/64bit and node.js4.2.6/64bit.

However if I run the applications in test/lesson02.js, I will receive the following error message.

C:\Program Files\nodejs\node_modules\node-webgl>node test\lesson02.js
C:\Program Files\nodejs\node_modules\node-webgl\node_modules\bindings\bindings.j
s:83
        throw e
        ^

Error: The specified module could not be found.
C:\Program Files\nodejs\node_modules\node-webgl\build\Release\webgl.node
    at Error (native)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at bindings (C:\Program Files\nodejs\node_modules\node-webgl\node_modules\bi
ndings\bindings.js:76:44)
    at Object.<anonymous> (C:\Program Files\nodejs\node_modules\node-webgl\lib\w
ebgl.js:1:108)
    at Module._compile (module.js:434:26)
    at Object.Module._extensions..js (module.js:452:10)
    at Module.load (module.js:355:32)

C:\Program Files\nodejs\node_modules\node-webgl>

Very appreciated if you can give some suggestion of how I could fix it!

key/mouse events broken?

Regression: document events do not always work.

E.g., on lesson08, I cannot get keyboard interactions like 'down' to work. Some demos still respond.

This disabled our eventing code when upgrading from 0.2.1 to head. I'll try some previous versions to narrow down.

This is on a macbook pro, 10.9.4, intel + nvidia

( + @int3h , @mikeseven )

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.