123456789101112131415161718192021222324252627282930313233343536373839404142 |
- // Grab the WebGL extensions currently supported and add to the Modernizr.webgl object
- // spec: www.khronos.org/registry/webgl/specs/latest/#5.13.14
- // based on code from ilmari heikkinen
- // code.google.com/p/graphics-detect/source/browse/js/detect.js
- (function(){
- if (!Modernizr.webgl) return;
- var canvas, ctx, exts;
- try {
- canvas = document.createElement('canvas');
- ctx = canvas.getContext('webgl') || canvas.getContext('experimental-webgl');
- exts = ctx.getSupportedExtensions();
- }
- catch (e) {
- return;
- }
- if (ctx === undefined) {
- Modernizr.webgl = new Boolean(false);
- }
- else {
- Modernizr.webgl = new Boolean(true);
- }
- for (var i = -1, len = exts.length; ++i < len; ){
- Modernizr.webgl[exts[i]] = true;
- }
- // hack for addressing modernizr testsuite failures. sorry.
- if (window.TEST && TEST.audvid){
- TEST.audvid.push('webgl');
- }
- canvas = undefined;
- })();
|