# How to render geometric normals?

When we import a mesh into Blender, we can get a lot of information, and normal is one of the properties.

The Normal in Render Layers in the Compositing is connected to File Output, and export in exr format:

We then form a point cloud with normal (without faces). The result is:

and the correct normal should be:

And we also found that the length of the normal is not equal to one, so how to render the numerically accurate normal, and what's the meaning of the Normal in Render Layers? In addition, what is the difference between normals obtained in "Shading" and "Compositing"?

Here we provide data and code for the test:

• step 1: /home/lab9/Installs/blender-2.92.0-linux64/blender --background --python /home/lab9/Documents/blender_render/blender_0_render.py -- 0 1 1 "test"

• step 2: python blender_2_postprocess.py

• step 3: python test.py

Please pay attention to modify the path_pfx in the file.

And the colored point cloud is (the rightmost is correct):