OCULTAR MENU LATERAL >>

Solución al problema "Este navegador no soporta WebGL" en Firefox4


WebGL es una especificación estándar que está siendo desarrollada actualmente para desplegar gráficos en 3D en navegadores web. Permite activar gráficos en 3D acelerados por hardware, sin la necesidad de plug-ins. Esta tecnología es parte del presente y más aun del futuro, ya que podrá permitir que juegos y otras aplicaciones de gran calidad gráfica se puedan usar desde el mismo navegador web sin necesidad de Flash, dando paso a HTML5 y a WebGL.

Hace poco que actualicé a Firefox 4 en todos mis equipos y, en algunos de ellos, me he encontrado que, al cargar páginas con contenido que usa WebGL (por ejemplo ésta), aparecía el siguiente mensaje de error: "Este navegador no soporta WebGL".

Esto ocurre porque el soporte WebGL en ocasiones no es activado por defecto. Como ya dije, WebGL aprovecha la aceleración implementada por hardware, pero si nuestro hardware no tiene implementada dicha aceleración o si el driver de nuestra tarjeta gráfica no es compatible, deberemos instalar un software que haga compatible nuestro equipo con tal tecnología.

Según veo en la web Ubunteate.es, para activar dicho soporte en Ubuntu deberemos hacer lo siguiente:
  1. Instalamos la librería "libosmesa6", la cual permite que los programas al formar imágenes utilicen un buffer externo usando las librerías OpenGL. De ese modo dichas imágenes no son procesadas por el servidor X que utiliza directamente los drivers de nuestra tarjeta gráfica, sino que son procesadas de un modo independiente:
     ~$ sudo apt-get install libosmesa6
  2. A continuación, en Firefox abrimos la web "about:config".
    Esta web contiene las preferencias avanzadas del navegador y es sumamente peligroso (por seguridad, estabilidad,...) cambiar aquello que no debemos. Se mostrará un mensaje advirtiéndolo, pulsaremos ¡Tendré cuidado, lo prometo!.
  3. En la primera columna (Nombre de la preferencia) buscamos "webgl.osmesalib". Una vez allí, rellenamos Valor con "/usr/lib/libOSMesa.so.6".
  4. Reiniciamos Firefox.
Ya tenemos activado el soporte WebGL. Para comprobar que funciona correctamente podemos pasar por ésta web y, si podemos ver e interactuar en la presentación, todo funciona correctamente.


Salu2,
elSant0

ALGUNOS ARTICULOS RELACIONADOS

1comentarios:

ivan dijo...

Tengo un problema con varios objetos, cargados en webgle. Y al utilizar ray.intersectObjects, no encuentra a varios de ellos. (estan a nivel de camara mas a la derecha). Giran con teclas, se mueven con el mouse. al poner el mouse el intersect los ve en otro sitio. Al presionar CTRL + RUEDA DEL MOUSE (zoom), se arregla. Parece que no ha cargado bien los objetos. Que luego se terminan de cargar con el zoom y termina de cargar los objetos. (Se ubican en la pantalla en una posicion mas a la derecha y cambia al doble de tamaño)
Video: https://drive.google.com/file/d/0B_oPu5nzzbVUby0yMmxScUp5aE0/view
Uitilizo para intersectar este codigo (lleno un input con el nombre del objeto):

var vector = new THREE.Vector3( mouse.x, mouse.y, 1 );
projector.unprojectVector( vector, camera );
var ray = new THREE.Raycaster( camera.position, vector.sub( camera.position ).normalize() );
var intersects = ray.intersectObjects( scene.children );
if ( intersects.length > 0 )
{
if ( intersects[ 0 ].object != INTERSECTED )
{
INTERSECTED = intersects[ 0 ].object;
$("#xxx").val(INTERSECTED.name);
}
}
else // there are no intersections
{
INTERSECTED = null;
}
No tengo idea como arreglarlo.

Publicar un comentario

Escribe aquí tus valoraciones, dudas, sugerencias,... Son sólo unos instantes y ayuda a mejorar el blog.