All Projects → chicio → Spectral Brdf Explorer

chicio / Spectral Brdf Explorer

Licence: mit
⚡️💻 OpenGL application inspired by Walt Disney Animation Studios BRDF Viewer. A BRDF Viewer that support standard RGB and spectral data (tristimulus values) color calculation.

Projects that are alternatives of or similar to Spectral Brdf Explorer

Glove
GLOVE (GL Over Vulkan) is a cross-platform software library that acts as an intermediate layer between an OpenGL application and Vulkan
Stars: ✭ 394 (+994.44%)
Mutual labels:  computer-graphics, opengles
Nabla
OpenGL/OpenGL ES/Vulkan/CUDA/OptiX Modular Rendering Framework for PC/Linux/Android
Stars: ✭ 235 (+552.78%)
Mutual labels:  computer-graphics, opengles
Materialx
MaterialX is an open standard for transfer of rich material and look-development content between applications and renderers.
Stars: ✭ 679 (+1786.11%)
Mutual labels:  computer-graphics
R1b
A thermal-printer-oriented, 1-bit graphics rasterizer for 2D and 3D
Stars: ✭ 29 (-19.44%)
Mutual labels:  computer-graphics
Fssgi
Exploratory Project on Fast Screen Space Global Illumination
Stars: ✭ 22 (-38.89%)
Mutual labels:  computer-graphics
Context Encoder
[CVPR 2016] Unsupervised Feature Learning by Image Inpainting using GANs
Stars: ✭ 731 (+1930.56%)
Mutual labels:  computer-graphics
Geometric Textures
Stars: ✭ 27 (-25%)
Mutual labels:  computer-graphics
Antons opengl tutorials book
Anton's OpenGL 4 Tutorials book - Demo Code
Stars: ✭ 668 (+1755.56%)
Mutual labels:  computer-graphics
Redner
Differentiable rendering without approximation.
Stars: ✭ 964 (+2577.78%)
Mutual labels:  computer-graphics
Anime4kcpp
A high performance anime upscaler
Stars: ✭ 887 (+2363.89%)
Mutual labels:  computer-graphics
Shapesinopengles2.0
Create basic shapes in opnegles2. And for abstraction purpose, its a class implementation using VBO's to create basic shapes in Open GLES2.0
Stars: ✭ 20 (-44.44%)
Mutual labels:  opengles
Contrastive Unpaired Translation
Contrastive unpaired image-to-image translation, faster and lighter training than cyclegan (ECCV 2020, in PyTorch)
Stars: ✭ 822 (+2183.33%)
Mutual labels:  computer-graphics
Cgmath
A linear algebra and mathematics library for computer graphics.
Stars: ✭ 773 (+2047.22%)
Mutual labels:  computer-graphics
Scannet
Stars: ✭ 860 (+2288.89%)
Mutual labels:  computer-graphics
Softras
Project page of paper "Soft Rasterizer: A Differentiable Renderer for Image-based 3D Reasoning"
Stars: ✭ 715 (+1886.11%)
Mutual labels:  computer-graphics
Computeshader Unity Macos
Stars: ✭ 31 (-13.89%)
Mutual labels:  computer-graphics
Mp4composer Android
This library generate an Mp4 movie using Android MediaCodec API and apply filter, scale, trim, transcode, crop, timeScale, mute and rotate Mp4.
Stars: ✭ 674 (+1772.22%)
Mutual labels:  opengles
Ndk opengles 3 0
Android OpenGL ES 3.0 从入门到精通系统性学习教程
Stars: ✭ 786 (+2083.33%)
Mutual labels:  opengles
Catpapers
Cool vision, learning, and graphics papers on Cats!
Stars: ✭ 918 (+2450%)
Mutual labels:  computer-graphics
Awesome Creative Coding
Creative Coding: Generative Art, Data visualization, Interaction Design, Resources.
Stars: ✭ 8,696 (+24055.56%)
Mutual labels:  computer-graphics

Spectral BRDF Explorer

Build iOS GitHub license Supported platform

OpenGL ES application inspired by Walt Animation Disney Studios BRDF Viewer. A simple application thats shows some of the most famous lighting model used in computer graphics and that supports color calculation using RGB and spectral data of lights and object surfaces.


Introduction

In computer graphics usually color calculation is usually done using RGB colors. As a consequence of the fact that light is a subset of the entire electromagnetic spectrum, color in rendering can be computed using spectral distribution data, the tristimulus values and the correlated CIE XYZ color space (Kang, 2007 [1]). This color space was created by the main authority on color and illumination: International Commission on Illumination (CIE). The formulas that define the tristimulus values are (Kang, 2007 [1]):

In this way it is possible to render scenes with high color fidelity, that could show physical phenomenons like metamerism, impossible to obtain with standard RGB data.


Overview

Spectral BRDF Explorer is an OpenGL ES application for iOS and Android devices that support multiple lighting models and color calculation using spectral data of lights and object. It supports 5 lighting models:

  • Phong [2]
  • Blinn-phong [3]
  • Lambertian
  • Oren-Nayar [4]
  • Cook-torrance [5]

All the lighting model above are implemented in specific fragment shader in two version: a RGB version and a spectral one. To show this lighting models I created two scenes, each one with support for RGB or Spectral colors.
The scenes support also other computer graphics technique (not strictly related to the spectral data calculation):

  • shadow mapping
  • skybox (cube map texture)

Scenes

Scene 1

  • RGB data
  • all lighting models
  • Skybox and shadow mapping

Scene 2

  • Spectral data
    • Illuminant D65 [6] and Macbeth color checker [7] spectral data
  • all lighting models
  • Skybox and shadow mapping


Other projects

For other information about color calculation in computer graphics see my thesis project Spectral Clara Lux Tracer: Physically based ray tracer with multiple shading models support and Color Rendering Index (CRI) evaluation.


References

[1] H. R. Kang, "Tristimulus specification," in Computation color technology, Bellingham, Washington: SPIE Publications, 2006, ch. 1, pp. 1-16

[2] B. T. Phong, “Illumination of Computer-Generated Images,” Communications of the ACM, vol. 18, no. 6, pp. 311-317, 1975.

[3] J. Blinn, “Models of light reflection for computer synthesized pictures,” in SIGGRAPH '77, San Jose, 1977, pp. 192-198.

[4] M. Oren and K. S. Nayar, "Generalization of Lambert’s Reflectance Model," in SIGGRAPH '94, Orlando, 1994, pp. 239-246.

[5] R. Cook and K. Torrance, "A reflectance model for computer graphics" in SIGGRAPH '81, vol. 15, no. 3, pp. 301–316, 1981.

[6] Wikipedia [Online]. Available: https://en.wikipedia.org/wiki/Illuminant_D65.

[7] D. Pascale, “RGB coordinates of the Macbeth ColorChecker,” The BabelColor Company, 1 June 2006. [Online]. Available: http://www.babelcolor.com.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].