SlideShare une entreprise Scribd logo
1  sur  14
WebGL
Présentée par:
Mouna Maazoun
Plan
 Introduction
 FandamentauxWebGL
 Avantage et inconvénientWebGL
 Conclusion
Introduction
 WebGL (Web Graphics Library) est une norme pour les graphismes
3D sur leWeb, il est conçu dans le but de rendre les graphiques 2D
et des graphiques 3D interactifs.
 Il est dérivé de la bibliothèque ES 2.0 d'OpenGL qui est un faible
niveauAPI 3D pour les téléphones et autres appareils mobiles.
Introduction
 WebGL est une API JavaScript qui peut être utilisé avec HTML5.
HTML5 a plusieurs fonctionnalités pour soutenir des graphismes
3D tels que Canvas 2D,WebGL, SVG, CSS 3D et transforme SMIL.
 OpenGL (Open Graphics Library) est multi-langue,API multi-
plateforme pour les graphiques 2D et 3D. Il est un ensemble de
commandes. OpenGL4.5 est la dernière version d'OpenGL. Le
tableau suivant présente un ensemble de technologies liées à
OpenGL.
Fondamentaux
WebGL
 Dans les univers en 3D nous avons habituellement à spécifier
quelque-un des éléments suivants:
 Une scène
 Un moteur de rendu
 Une caméra
 Un objet ou deux (lié à un rendu)
Fondamentaux
WebGL
 Initialiser la scène
var renderer = new THREE.WebGLRenderer();
var camera = new THREE.Camera(
VIEW_ANGLE,
ASPECT,
NEAR,
FAR
);
var scene = new THREE.Scene();
// la caméra est positionée par défaut à (0,0,0) reculons un peu
camera.position.z = 300;
// initialiser le renderer
renderer.setSize(WIDTH, HEIGHT);
Fondamentaux
WebGL
 Créer objet (Sphere)
var sphere = new THREE.Mesh(
new THREE.SphereGeometry(radius,
segments,
rings
),
sphereMaterial
);
// ajoutons la sphère à la scène
scene.addChild(sphere);
Fondamentaux
WebGL
 Les lumières
// créons une source de lumière ponctuelle
var pointLight = new THREE.PointLight( 0xFFFFFF );
// on la positionne
pointLight.position.x = 10;
pointLight.position.y = 50;
pointLight.position.z = 130;
// ajoutons la à la scène finale
scene.addLight(pointLight);
Fondamentaux
WebGL
 Le rendu final
renderer.render(scene, camera);
Avantage et
inconvénient
WebGL
Avantages
 Les applicationsWebGL sont écrits en JavaScript.
 L'utilisation de ces applications, vous pouvez interagir directement
avec d'autres éléments du document HTML.
 Vous pouvez également utiliser d' autres bibliothèques
JavaScript (eg JQuery) et les technologies HTML pour enrichir
l'applicationWebGL.
 WebGL prend également en charge les navigateurs mobiles tels
que Safari iOS, le navigateurAndroid et Chrome pour Android.
 Open source
 Vous pouvez accéder au code source de la bibliothèque et de
comprendre comment il fonctionne et comment il a été mis au
point.
Avantage et
inconvénient
WebGL
Avantages
 JavaScript est une composante demi-programmation et demi-
HTML.
 Pour exécuter ce script, il n'y a pas besoin de compiler le fichier
 vous pouvez ouvrir directement le fichier en utilisant l'un des
navigateurs et vérifier le résultat.
 Les applicationsWebGL sont développées en utilisant JavaScript, il
n'y a pas besoin de compiler des applicationsWebGL ainsi.
 JavaScript supporte la gestion automatique de la mémoire.
 Il n'y a pas besoin d'allocation manuelle de la mémoire.
 WebGL hérite de cette fonctionnalité de JavaScript.
 DepuisWebGL est intégré dans HTML 5, il n'y a pas besoin de
configuration supplémentaire.
 Pour écrire une applicationWebGL, tout ce dont vous avez besoin
est un éditeur de texte et un navigateur Web.
Avantage et
inconvénient
WebGL
Inconvénients
 La configuration Hardware requise est importante, notamment au
niveau de la carte graphique.
 Certains pilotes de carte graphique sont bloqués car la
compatibilité n'a pas été assurée
 WebGL est basée sur OpenGL ES2.0 Certaines fonctionnalités
d'OpenGL y sont absentes, dont :
 Le selection Buffer
 Les textures 3D
 Les shaders :WebGL n'utilise que le vertex shader et le fragment
shader. On ne peut pas modifier le geometry shader
Conclusion
La 3D native dans les navigateurs est quelque chose de très
fun et en utilisant un moteur commeThree.js cela évitera bien des
maux de tête et permettra de réaliser sérieusement pleins de trucs
qui le seront moins.
Merci pour votre attention

Contenu connexe

Tendances

Angular 6, CLI 6, Material 6 (french)
Angular 6, CLI 6, Material 6 (french)Angular 6, CLI 6, Material 6 (french)
Angular 6, CLI 6, Material 6 (french)Laurent Duveau
 
Introduction à Angular 2
Introduction à Angular 2Introduction à Angular 2
Introduction à Angular 2Laurent Duveau
 
Apéro techno node.js + AngularJS @Omnilog 2014
Apéro techno node.js + AngularJS @Omnilog 2014Apéro techno node.js + AngularJS @Omnilog 2014
Apéro techno node.js + AngularJS @Omnilog 2014Yves-Emmanuel Jutard
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogySacha Leprêtre
 

Tendances (8)

Angular 6, CLI 6, Material 6 (french)
Angular 6, CLI 6, Material 6 (french)Angular 6, CLI 6, Material 6 (french)
Angular 6, CLI 6, Material 6 (french)
 
Introduction à Angular 2
Introduction à Angular 2Introduction à Angular 2
Introduction à Angular 2
 
Apéro techno node.js + AngularJS @Omnilog 2014
Apéro techno node.js + AngularJS @Omnilog 2014Apéro techno node.js + AngularJS @Omnilog 2014
Apéro techno node.js + AngularJS @Omnilog 2014
 
Intro à angular
Intro à angularIntro à angular
Intro à angular
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
 
Java Server Faces - Beyond
Java Server Faces - BeyondJava Server Faces - Beyond
Java Server Faces - Beyond
 
Introduction à Vaadin
Introduction à VaadinIntroduction à Vaadin
Introduction à Vaadin
 
Retour d'experience projet AngularJS
Retour d'experience projet AngularJSRetour d'experience projet AngularJS
Retour d'experience projet AngularJS
 

Similaire à Web gl

Angular développer des applications .pdf
Angular développer des applications .pdfAngular développer des applications .pdf
Angular développer des applications .pdfimenhamada17
 
Oracle Developer adf
Oracle Developer adfOracle Developer adf
Oracle Developer adfBacely YoroBi
 
Gadc 2012 meetup & workshop
Gadc 2012 meetup & workshopGadc 2012 meetup & workshop
Gadc 2012 meetup & workshopTiyab K.
 
Introduction à GWT - GTI780 & MTI780 - ETS - A08
Introduction à GWT - GTI780 & MTI780 - ETS - A08Introduction à GWT - GTI780 & MTI780 - ETS - A08
Introduction à GWT - GTI780 & MTI780 - ETS - A08Claude Coulombe
 
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdfComment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdfGDG Bujumbura
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 Horacio Gonzalez
 
Newlook Suite - for IBM partners - FR
Newlook Suite - for IBM partners - FRNewlook Suite - for IBM partners - FR
Newlook Suite - for IBM partners - FRFresche Solutions
 
Scub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreScub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreStéphane Traumat
 
Connected Developper Ep2 (20 04-2013)
Connected Developper Ep2 (20 04-2013)Connected Developper Ep2 (20 04-2013)
Connected Developper Ep2 (20 04-2013)Badr Hakkari
 
GWT Principes & Techniques
GWT Principes & TechniquesGWT Principes & Techniques
GWT Principes & TechniquesRachid NID SAID
 
developpement web framework cms developpement brute
developpement web framework cms developpement brutedeveloppement web framework cms developpement brute
developpement web framework cms developpement bruteYounesOuladSayad1
 
Presentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationPresentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationStéphane Traumat
 

Similaire à Web gl (20)

Angular développer des applications .pdf
Angular développer des applications .pdfAngular développer des applications .pdf
Angular développer des applications .pdf
 
jQuery vs AngularJS
jQuery vs AngularJS jQuery vs AngularJS
jQuery vs AngularJS
 
Oracle Developer adf
Oracle Developer adfOracle Developer adf
Oracle Developer adf
 
Gdd07 Gwt Dig
Gdd07 Gwt DigGdd07 Gwt Dig
Gdd07 Gwt Dig
 
TP GWT JDEV 2015
TP GWT JDEV 2015TP GWT JDEV 2015
TP GWT JDEV 2015
 
Gadc 2012 meetup & workshop
Gadc 2012 meetup & workshopGadc 2012 meetup & workshop
Gadc 2012 meetup & workshop
 
Architecture .net
Architecture  .netArchitecture  .net
Architecture .net
 
Windev
WindevWindev
Windev
 
Introduction à GWT - GTI780 & MTI780 - ETS - A08
Introduction à GWT - GTI780 & MTI780 - ETS - A08Introduction à GWT - GTI780 & MTI780 - ETS - A08
Introduction à GWT - GTI780 & MTI780 - ETS - A08
 
Jquery Mobile vs Twitter Bootstrap
Jquery Mobile vs Twitter BootstrapJquery Mobile vs Twitter Bootstrap
Jquery Mobile vs Twitter Bootstrap
 
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdfComment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
 
Support cours angular
Support cours angularSupport cours angular
Support cours angular
 
Gwt final
Gwt finalGwt final
Gwt final
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
 
Newlook Suite - for IBM partners - FR
Newlook Suite - for IBM partners - FRNewlook Suite - for IBM partners - FR
Newlook Suite - for IBM partners - FR
 
Scub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreScub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libre
 
Connected Developper Ep2 (20 04-2013)
Connected Developper Ep2 (20 04-2013)Connected Developper Ep2 (20 04-2013)
Connected Developper Ep2 (20 04-2013)
 
GWT Principes & Techniques
GWT Principes & TechniquesGWT Principes & Techniques
GWT Principes & Techniques
 
developpement web framework cms developpement brute
developpement web framework cms developpement brutedeveloppement web framework cms developpement brute
developpement web framework cms developpement brute
 
Presentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationPresentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub Foundation
 

Plus de Mouna Maazoun

harcélement au travail
harcélement au travail harcélement au travail
harcélement au travail Mouna Maazoun
 
les style d'architecture
les style d'architecture les style d'architecture
les style d'architecture Mouna Maazoun
 
Cloud computing et calcul haute performance
Cloud computing et calcul haute performanceCloud computing et calcul haute performance
Cloud computing et calcul haute performanceMouna Maazoun
 
La loi de l’information: fichier et liberté
La loi de l’information: fichier et liberté La loi de l’information: fichier et liberté
La loi de l’information: fichier et liberté Mouna Maazoun
 

Plus de Mouna Maazoun (6)

harcélement au travail
harcélement au travail harcélement au travail
harcélement au travail
 
les style d'architecture
les style d'architecture les style d'architecture
les style d'architecture
 
Cloud computing et calcul haute performance
Cloud computing et calcul haute performanceCloud computing et calcul haute performance
Cloud computing et calcul haute performance
 
La loi de l’information: fichier et liberté
La loi de l’information: fichier et liberté La loi de l’information: fichier et liberté
La loi de l’information: fichier et liberté
 
routage Ad hoc ZRP
routage Ad hoc ZRProutage Ad hoc ZRP
routage Ad hoc ZRP
 
E business
E businessE business
E business
 

Web gl

  • 2. Plan  Introduction  FandamentauxWebGL  Avantage et inconvénientWebGL  Conclusion
  • 3. Introduction  WebGL (Web Graphics Library) est une norme pour les graphismes 3D sur leWeb, il est conçu dans le but de rendre les graphiques 2D et des graphiques 3D interactifs.  Il est dérivé de la bibliothèque ES 2.0 d'OpenGL qui est un faible niveauAPI 3D pour les téléphones et autres appareils mobiles.
  • 4. Introduction  WebGL est une API JavaScript qui peut être utilisé avec HTML5. HTML5 a plusieurs fonctionnalités pour soutenir des graphismes 3D tels que Canvas 2D,WebGL, SVG, CSS 3D et transforme SMIL.  OpenGL (Open Graphics Library) est multi-langue,API multi- plateforme pour les graphiques 2D et 3D. Il est un ensemble de commandes. OpenGL4.5 est la dernière version d'OpenGL. Le tableau suivant présente un ensemble de technologies liées à OpenGL.
  • 5. Fondamentaux WebGL  Dans les univers en 3D nous avons habituellement à spécifier quelque-un des éléments suivants:  Une scène  Un moteur de rendu  Une caméra  Un objet ou deux (lié à un rendu)
  • 6. Fondamentaux WebGL  Initialiser la scène var renderer = new THREE.WebGLRenderer(); var camera = new THREE.Camera( VIEW_ANGLE, ASPECT, NEAR, FAR ); var scene = new THREE.Scene(); // la caméra est positionée par défaut à (0,0,0) reculons un peu camera.position.z = 300; // initialiser le renderer renderer.setSize(WIDTH, HEIGHT);
  • 7. Fondamentaux WebGL  Créer objet (Sphere) var sphere = new THREE.Mesh( new THREE.SphereGeometry(radius, segments, rings ), sphereMaterial ); // ajoutons la sphère à la scène scene.addChild(sphere);
  • 8. Fondamentaux WebGL  Les lumières // créons une source de lumière ponctuelle var pointLight = new THREE.PointLight( 0xFFFFFF ); // on la positionne pointLight.position.x = 10; pointLight.position.y = 50; pointLight.position.z = 130; // ajoutons la à la scène finale scene.addLight(pointLight);
  • 9. Fondamentaux WebGL  Le rendu final renderer.render(scene, camera);
  • 10. Avantage et inconvénient WebGL Avantages  Les applicationsWebGL sont écrits en JavaScript.  L'utilisation de ces applications, vous pouvez interagir directement avec d'autres éléments du document HTML.  Vous pouvez également utiliser d' autres bibliothèques JavaScript (eg JQuery) et les technologies HTML pour enrichir l'applicationWebGL.  WebGL prend également en charge les navigateurs mobiles tels que Safari iOS, le navigateurAndroid et Chrome pour Android.  Open source  Vous pouvez accéder au code source de la bibliothèque et de comprendre comment il fonctionne et comment il a été mis au point.
  • 11. Avantage et inconvénient WebGL Avantages  JavaScript est une composante demi-programmation et demi- HTML.  Pour exécuter ce script, il n'y a pas besoin de compiler le fichier  vous pouvez ouvrir directement le fichier en utilisant l'un des navigateurs et vérifier le résultat.  Les applicationsWebGL sont développées en utilisant JavaScript, il n'y a pas besoin de compiler des applicationsWebGL ainsi.  JavaScript supporte la gestion automatique de la mémoire.  Il n'y a pas besoin d'allocation manuelle de la mémoire.  WebGL hérite de cette fonctionnalité de JavaScript.  DepuisWebGL est intégré dans HTML 5, il n'y a pas besoin de configuration supplémentaire.  Pour écrire une applicationWebGL, tout ce dont vous avez besoin est un éditeur de texte et un navigateur Web.
  • 12. Avantage et inconvénient WebGL Inconvénients  La configuration Hardware requise est importante, notamment au niveau de la carte graphique.  Certains pilotes de carte graphique sont bloqués car la compatibilité n'a pas été assurée  WebGL est basée sur OpenGL ES2.0 Certaines fonctionnalités d'OpenGL y sont absentes, dont :  Le selection Buffer  Les textures 3D  Les shaders :WebGL n'utilise que le vertex shader et le fragment shader. On ne peut pas modifier le geometry shader
  • 13. Conclusion La 3D native dans les navigateurs est quelque chose de très fun et en utilisant un moteur commeThree.js cela évitera bien des maux de tête et permettra de réaliser sérieusement pleins de trucs qui le seront moins.
  • 14. Merci pour votre attention