| Titre : | The Alchemy Screen Space Ambient Obscurance |
| Auteurs : | Younes Rouabeh, Auteur ; Abdelmoumen Zerari, Directeur de thèse |
| Type de document : | Monographie imprimée |
| Editeur : | Biskra [Algérie] : Faculté des Sciences Exactes et des Sciences de la Nature et de la Vie, Université Mohamed Khider, 2018 |
| Format : | 1 vol. (92 p.) / 30 cm |
| Langues: | Anglais |
| Mots-clés: | global illumination,ambient obscurance,ambient occlusion,soft shadows,screen space,filtering,sampling,real-time |
| Résumé : |
Achieving a global illumination in real time has always been the interest of com-puter graphics where the need for approximations for rendering realistic scenes tak-ing into account all kinds of interactions between light sources and objects of the scene or objects between themselves. We are interested in one of the methods used to approximate the global illumination which is the ambient occlusion that gener-ates soft shadows in places with low light contribution to improve the realism of the scene. Although it has excellent results for approximating global illumination, it is not practical to use when real time is required because it depends on geometry in its calculations. Alchemy Ambient Obscurance Method on the other hand is considered to be one of several solutions for approximating ambient obscurance which is an extended ver-sion of ambient occlusion using screen space. This method has effective results in real time, it causes a low performance, gives noisy results without speaking about ignorance of the important contributions of the scene. The goal of this project is to implement the original Alchemy Ambient Obscu-rance Technique, to improve performance by using different filtering techniques rather than the original and to improve the samples by performing a comparative study between the different techniques of sampling to produce realistic and accept-able results. |
| Sommaire : |
Contents General Introduction 1 Background 1.1 Introduction 1.2 Illumination 1 Local Illumination Local Reflection Types 4 Ambient Reflection Diffuse Reflection Specular Reflection Local Illumination Techniques 7 1.2.1.2.1 Phong Illumination Model 7 1.2.1.2.2 Phong Blinn Illumination Model 8 1.2.2 Global Illumination 8 1.3 Rendering Equation 9 1.3.1 Solid Angle 9 1.3.2 Radiance 11 1.3.3 Irradiance 11 1.3.4 Bidirectional Reflectance Distribution Function 12 1.3.5 Rendering Equation Foundation 13 1.3.6 Global Illumination Techniques 14 1.3.6.1 Radiosity 14 1.3.6.2 Path Tracing 15 1.4 Monte Carlo Integration 15 1.4.1 Probabilites Theory Basics 16 1.4.2 Monte Carlo Estimator 17 1.4.3 Convergence rates 17 1.4.3.1 Importance Sampling 18 1.4.3.2 Distributions Techniques 18 1.5 Global Illumination Approximation Techniques 19 1.5.1 Instant Radiosity 19 1.5.2 Reflective Shadow Maps 20 1.5.3 Imperfect Shadow Maps 21 1.5.4 Ambient Occlusion 22 1.5.5 Comparison 22 1.6 Conclusion 23 2 Screen Space Ambient Occlusion 2.1 Introduction 2.2 Ambient Occlusion 2.3 Ambient Obscurance 2.4 Real-Time Ambient Occlusion Methods 24 2.4.1 Object Based Methods 27 2.4.1.1 Ambient Occlusion Fields 27 2.4.1.2 Fast Precomputed Ambient Occlusion for Shad-ows Proximity 28 2.4.2 Point Based Methods 28 2.4.2.1 Dynamic Ambient Occlusion and Indirect Lighting 28 2.4.2.2 Hardware Accelerated Ambient Occlusion Com-putation 28 2.4.3 Screen Space Based Methods 29 2.4.3.1 Screen Space Ambient Occlusion 30 2.4.3.2 Screen Space Directional Occlusion 30 2.4.4 Comparison 31 2.5 Ambient Occlusion in Screen Space 32 2.5.1 Definition 32 2.5.2 Screen Space Ambient Occlusion Techniques 33 2.5.2.1 Crytek Ambient Occlusion 33 2.5.2.2 StarCraft 2 Ambient Occlusion 34 2.5.2.3 Horizon Based Ambient Occlusion 34 2.5.2.4 Volumetric Obscurance 35 2.5.2.5 The Alchemy Ambient Obscurance 36 2.5.2.6 Comparison 38 2.6 Filtering Techniques 38 2.6.1 Anisotropic Filter 39 2.6.2 Anti-Aliasing 39 2.6.3 Gaussian Filter 40 2.6.4 Bilateral Filter 41 2.6.5 Comparison 42 2.7 Conclusion 43 3 GPUs and OpenGL Evolution 45 3.1 Introduction 45 3.2 GPUs versus CPUs 45 3.3 Acceleration Using GPUs 46 3.4 GPUs Evolution 46 3.5 GPU Architecture 47 3.5.1 Material Components 47 3.5.2 Shaders 47 3.5.3 Graphic Pipeline 48 3.5.4 Graphic Pipeline Evolution 49 3.6 GPUs Programming Languages 50 3.6.1 OpenGL Shading Language (GLSL) 51 3.6.2 High Level Shading Language (HLSL) 51 3.7 3.6.3 C for Graphics (CG) OpenGL Evolution 3.7.1 Compatibility profile 3.7.2 Core profile 3.7.3 Structures for Shader Programming 51 3.7.3.1 Vertex Buffer Object (VBO) 53 3.7.3.2 Element Buffer Object (EBO) 54 3.7.3.3 Vertex Array Object (VAO) 54 3.7.3.4 Frame Buffer Object (FBO) 54 3.7.3.5 G-Buffer 55 3.8 Conclusion 56 4 Results and Implementations 57 4.1 Introduction 57 4.2 Project Description and Objectives 57 4.3 General Design 57 4.3.1 Geometry Input 58 4.3.2 G-Buffer Calculation 59 4.3.3 Samples Creation 60 4.3.4 AlchemySSAO Calculation 62 4.3.5 Filter Applying 63 4.3.6 Illumination 64 4.4 Realization 64 4.4.1 Used Softwares and Materials 64 4.4.1.1 Materials 64 4.4.1.2 Softwares and APIs 65 4.4.1.2.1 Softwares 65 4.4.1.2.2 APIs 65 4.4.2 Application Structure 65 4.4.2.1 First Shader: G-Buffer 66 4.4.2.2 Second Shader: AlchemySSAO Calculation 66 4.4.2.2.1 Display Screen Subdivision 66 4.4.2.2.2 Sampling Core 66 4.4.2.2.3 AlchemySSAO factor Calculation 67 4.4.2.3 Third Shader: Filtering 67 4.4.2.4 Fourth Shader: Illumination 68 4.4.2.5 Additional Shader: Text render 68 4.5 Results 70 4.5.1 Metrics 70 4.5.2 G-Buffer Implementation 71 4.5.3 AlchemySSAO Results 71 4.5.4 Sampling Core 73 4.5.5 Sampling Distribution Techniques 74 4.5.6 Filtering Techniques 80 4.5.6.1 Bilateral Filter 80 4.5.6.2 Gaussian Filter 81 4.5.6.3 4x4 blur Filter 83 4.5.7 Filters comparison 83 4.5.8 Scene Illumination 84 4.5.9 Text render 85 4.5.10 Results Discussion 86 4.5.11 Conclusion 87 General Conclusion 88 References 89 |
Disponibilité (1)
| Cote | Support | Localisation | Statut |
|---|---|---|---|
| MINF/350 | Mémoire master | bibliothèque sciences exactes | Consultable |



