# Introduction

Blinn–Phong reflection model is a very famous model for 3D computer graphics. It innovates on the basis of the Feng model, which significantly improves the rendering efficiency and provides the basis for a variety of reflection models afterwards. The model is calculated by interpolation to produce a relatively smooth surface reflection effect.

## Mathematical

Blinn–Phong abstract the reflection by following values:

$L:$ Light Direction

$V:$ View Direction(Camera Direction)

$N:$ Normal Direction of the surface

$R:$ Reflect Direction Symmetric with L about N

$H:$ Half vector between V and L. That is mean:

$H = \frac{L+V}{\lVert L+V\rVert}$Ultimately, the model uses the magnitude of the angle between N and H to determine the reflection intensity. Combined with the Lambertian diffusion model, we can get a very good result as below.

## Implementation

You can upload your own OBJ model and texture to see the results.