OpenGL["noël"]

OpenGL["noël"]

  • Intro et SDK
  • Bronze
  • Silver
  • Gold
  • Blog
  • OpenGL Documentation
  • OpenGL Wiki
  • GitHub
  • My glTF Viewer Tutorial

›3D - La pratique

3D - La théorie

  • Introduction
  • La Normal Matrix
  • Un exemple de Vertex Shader pour la 3D
  • La bibliothèque glm

3D - La pratique

  • Introduction
  • Les classes Sphere et Cone
  • Dessiner une sphere
  • Dessiner une lune
  • Dessiner la terre
  • Multi-texturing
  • Utiliser plusieurs shaders

Gestion de la caméra

  • Introduction
  • Trackball Camera
  • Freefly Camera

Put the lights on !

  • Introduction
  • Directional Light
  • Point Light
  • Aller plus loin

Projet(s)

  • Projet: IM(A)ineCraft

Dessiner la terre

Nous allons utiliser des textures pour donner à la planète l'apparence de la terre. La classe glimac::Sphere calcule automatiquement des coordonnées de textures qui sont reçuent par le shader. Il suffit donc de charger et binder correctement une texture de terre puis d'y accéder correctement depuis le fragment shader pour avoir une apparence correcte.

Téléchargez les texture EarthMap.jpg et MoonMap.jpg et placez les dans le répertoire textures de votre répertoire de TP.

Créez un nouveau shader tex3D.fs.glsl. Dans celui ci, créez une variable uniforme de type sampler2D et utilisez les coordonnées de texture en entrée pour obtenir la couleur de sortie en lisant dans la texture. Au besoin relisez le TP sur les textures pour vous aider.

Dans le code de l'application chargez la texture EartMap.jpg. Créez un texture object OpenGL à partir de l'image SDL et bindez la correctement pour qu'elle soit affichée lors du rendu. Testez le programme. Faites ensuite en sorte que la terre tourne sur elle même, mais pas les lunes !

Un problème apparait normalement: vos lunes ont également l'apparence de la terre. Afin de modifier cela, il suffit de modifier la texture bindée avant de dessiner les lunes. Chargez la texture MoonMap.jpg, créez un texture object OpenGL associé et utilisez ce dernier pour dessiner les lunes.

Terre

← Dessiner une luneMulti-texturing →
OpenGL["noël"]
About Me
Personal websiteGithub
About This Website
BlogopenglnoelPowered by Docusaurus
About OpenGL
Documentation (docs.gl)Wiki
Copyright © 2021 Laurent NOEL