1 | /**
|
---|
2 | * @author alteredq / http://alteredqualia.com/
|
---|
3 | * @author mr.doob / http://mrdoob.com/
|
---|
4 | */
|
---|
5 |
|
---|
6 | Detector = {
|
---|
7 |
|
---|
8 | canvas : !! window.CanvasRenderingContext2D,
|
---|
9 | webgl : ( function () { try { return !! window.WebGLRenderingContext && !! document.createElement( 'canvas' ).getContext( 'experimental-webgl' ); } catch( e ) { return false; } } )(),
|
---|
10 | workers : !! window.Worker,
|
---|
11 | fileapi : window.File && window.FileReader && window.FileList && window.Blob,
|
---|
12 |
|
---|
13 | getWebGLErrorMessage : function () {
|
---|
14 |
|
---|
15 | var domElement = document.createElement( 'div' );
|
---|
16 |
|
---|
17 | domElement.style.fontFamily = 'monospace';
|
---|
18 | domElement.style.fontSize = '13px';
|
---|
19 | domElement.style.textAlign = 'center';
|
---|
20 | domElement.style.background = '#eee';
|
---|
21 | domElement.style.color = '#000';
|
---|
22 | domElement.style.padding = '1em';
|
---|
23 | domElement.style.width = '475px';
|
---|
24 | domElement.style.margin = '5em auto 0';
|
---|
25 |
|
---|
26 | if ( ! this.webgl ) {
|
---|
27 |
|
---|
28 | domElement.innerHTML = window.WebGLRenderingContext ? [
|
---|
29 | 'Sorry, your graphics card doesn\'t support <a href="http://khronos.org/webgl/wiki/Getting_a_WebGL_Implementation">WebGL</a>'
|
---|
30 | ].join( '\n' ) : [
|
---|
31 | 'Sorry, your browser doesn\'t support <a href="http://khronos.org/webgl/wiki/Getting_a_WebGL_Implementation">WebGL</a><br/>',
|
---|
32 | 'Please try with',
|
---|
33 | '<a href="http://www.google.com/chrome">Chrome</a>, ',
|
---|
34 | '<a href="http://www.mozilla.com/en-US/firefox/new/">Firefox 4</a> or',
|
---|
35 | '<a href="http://nightly.webkit.org/">Webkit Nightly (Mac)</a>'
|
---|
36 | ].join( '\n' );
|
---|
37 |
|
---|
38 | }
|
---|
39 |
|
---|
40 | return domElement;
|
---|
41 |
|
---|
42 | },
|
---|
43 |
|
---|
44 | addGetWebGLMessage : function ( parameters ) {
|
---|
45 |
|
---|
46 | var parent, id, domElement;
|
---|
47 |
|
---|
48 | parameters = parameters || {};
|
---|
49 |
|
---|
50 | parent = parameters.parent !== undefined ? parameters.parent : document.body;
|
---|
51 | id = parameters.id !== undefined ? parameters.id : 'oldie';
|
---|
52 |
|
---|
53 | domElement = Detector.getWebGLErrorMessage();
|
---|
54 | domElement.id = id;
|
---|
55 |
|
---|
56 | parent.appendChild( domElement );
|
---|
57 |
|
---|
58 | }
|
---|
59 |
|
---|
60 | };
|
---|