FurMark
Current Version: 1.8.2
»FurMark homepage
»FurMark 1.8.x Submissions
»Benchmark Submissions

GPU Caps Viewer
Current Version: 1.9.0
»GPU Caps Viewer homepage
»GPU DB Submissions

PhysX FluidMark
Current Version: 1.2.0
»FluidMark homepage
»FluidMark 1.2.x Submissions
»Benchmark Submissions

GeeXLab
Current Version: 0.2.0
»GeeXLab homepage
»GeeXLab Overview

GPU Shark
Current Version: 0.2.3
»GPU Shark homepage

TessMark
Current Version: 0.2.0
»TessMark homepage

Blogs
»JeGX's Infamous Lab

 
Bump Mapping avec le GLSL

Par Jérôme 'JeGX' GUINOT
jegx [at] ozone3d [dot] net - The oZone3D Team

Version initiale: 4 Novembre 2005
Mise à jour: 8 Mars 2006
Mise à jour: 30 Décembre 2006




[ Index ]

Introduction | Page 2 | Page 3 | Page 4

»Next Page







1 - Introduction

2 - Equations d'éclairage

3 - L'espace tangent

4 - Le shader de bump mapping

5 - Downloads




1 - Introduction

Le bump mapping fait partie des techniques d'éclairage par pixel c'est à dire que tous les calculs d'éclairage (application des équations de la lumière) sont effectués pour chaque pixel. La puissance des processeurs graphiques actuels (ou gpu) nous permet d'atteindre cette précision tout en conservant des framerates acceptables.

En effet, la démo qui accompagne ce tutorial nous montre une sphère rendu en simple texturing avec éclairage par vertex (torus_simple_mapping_test.xml) et la même sphère rendue avec la technique du bump mapping (torus_bump_mapping_test.xml). Dans le premier cas, le FPS se situe autour des 900 (valeur sur ma machine de dev, avec une GF7800GT) et dans le second cas, le FPS chute aux environs de 500 mais avec une qualité de rendu largement supèrieure comme le montre les images suivantes:


fig.1 - Rendu en simple texturing avec éclairage par vertex.



fig.2 - Rendu en bump mapping avec éclairage par pixel.

Mais attention, ces différences de performances s'expliquent pour deux raisons: la première est que le bump mapping est par nature une technique multitexturing. Dans notre cas, 2 textures sont utilisées pour l'effet bump. Accéder à plusieurs textures est plus pénalisant qu'à une. La seconde raison est que tous les calculs d'éclairages sont réalisés pour chaque pixel.

Ceci étant dit, passons à l'étude de la technique du bump mapping. Le principal objectif du bump mapping est de simuler du relief sur une géométrie plane. Cela permet de rendre à moindre coût des objets d'apparence très détaillés. La technique du bump mapping est toute simple puisqu'elle consiste à utiliser un vecteur normal déformé au niveau du pixel en cours de traitement. Mais avant d'entrer dans les détails du code, il d'abord avoir en tête les équations de la lumières que nous allons implémenter.





[ Index ]

Introduction | Page 2 | Page 3 | Page 4

»Next Page







Langue:

3D Graphics Search Engine:

The Geeks Of 3D





Geeks3D's Articles
»GPU Memory Speed Demystified

»Multi-Threading Programming Resources

»GeForce and Radeon OpenCL Overview

»How to Get your Multi-core CPU Busy at 100%

»How To Make a VGA Dummy Plug

»Night Vision Post Processing Filter



Geeks3D latest news

Demoniak3D
Current Version: 1.23.0
»Demoniak3D
»Download
»Libraries and Plugins
»Demos
»Online Help - Reference Guide
»Codes Samples


Misc
»Texture DataPack #1
»Asus Silent Knight CPU Cooler
Page generated in 0.057706832885742 seconds.