french english

RSS 1.0 
 
 Login 
 Password 
 Créer un compte 
 
07-06-11 / 01:41 : WebGL : optimisations / composition (cjed)
Le moteur de composition implémenté actuellement dans les navigateurs proposant WebGL utilise le CPU, afin de pouvoir ajouter des éléments HTML sur le canvas 3D (fonctionnalité présente dans la spécification) :
WebGL is essentially another rendering context on the canvas element, so it can be cleanly combined with HTML and other web content that is layered on top or underneath the 3D content.

Cela explique les performances non optimales (tranfert de données du GPU vers le CPU, puis du CPU vers le GPU). Les procédés d'optimisation habituels (envoi de commandes OpenGL ES via batch, utilisation de fonctions shaders - GLSL - exécutées directement sur le GPU) ne sont donc pas suffisants.

Pour une page web on pourrait à priori utiliser des moteurs de composition distincts, les vues WebGL étant supposées être isolées des autres éléments HTML. C'est le cas par exemple pour les applications 3D (rendu OpenGL dans une vue dédiée) ou les jeux en mode fenêtre, ou encore les versions récentes du plugin Flash.
Cependant Flash utilise un element embed, géré de manière particulière (il avait été défini pour permettre l'inclusion d'éléments non standards), alors que l'élément webGL est considéré de même niveau que les autres éléments HTML, et donc dans le même container (correspondant à la page HTML), la WebView Cocoa de WebKit sous MacOSX.

L'accélération matérielle est déjà gérée pour les CSS Effects/CSS3 transitions et le tag video, mais elle requiert peut être également une composition logicielle intermédiaire (ou alors la spécification ne précise pas la possibilité d'y ajouter d'autres éléments HTML).
Commentaires
Poster un commentaire 
  
    
  image de securisation du formulaire


  
      (sera ajouté après validation)