# PRIM_NORMAL

*LSL constant*

```lsl
integer PRIM_NORMAL = 37;
```

Prim parameter to get or set the Blinn-Phong normal map texture settings of a face. Requires face, texture, repeats, offsets, and rotation_in_radians arguments.

Constant groups: [PrimParam](/constants/groups/PrimParam/), [PrimParamGet](/constants/groups/PrimParamGet/)

Used to get or set the [Blinn-Phong](https://wiki.secondlife.com/wiki/PBR_Materials#nomenclature-changes) normal map texture settings of a prim's `face`.

## Caveats

- **repeats** is not only used to set the number of repeats but the sign of the individual components is also used to set the "Flip" attribute.
- **offsets** and **rotation_in_radians** are limited to positive values only, unlike [PRIM_TEXTURE](/constants/PRIM_TEXTURE/) and [GLTF Overrides](https://wiki.secondlife.com/wiki/GLTF_Overrides). To convert a negative offset to positive, add 1, and to convert a negative rotation to positive, add [TWO_PI](/constants/TWO_PI/).
- To clear the normal map parameters from the face (and possibly remove the material), set **texture** to [NULL_KEY](/constants/NULL_KEY/) (the other parameters must be supplied in this case but will be ignored).
- Note that whenever any face in a linkset contains a material (i.e. has a non-default [PRIM_NORMAL](/constants/PRIM_NORMAL/), [PRIM_SPECULAR](/constants/PRIM_SPECULAR/), or [PRIM_ALPHA_MODE](/constants/PRIM_ALPHA_MODE/)), the linkset will use the [new accounting system](http://community.secondlife.com/t5/English-Knowledge-Base/Calculating-land-impact/ta-p/974163).
- In the [default](/constants/PRIM_TEXGEN_DEFAULT/) [texture mapping](/constants/PRIM_TEXGEN/) **tg_type** the [texture](/constants/PRIM_NORMAL/) **repeats** units are in texture repeats per face. In the [planar](/constants/PRIM_TEXGEN_PLANAR/) texture mapping mode the texture **repeats** units are in texture repeats per half meter. This is in contrast to the in-world editing tool, in which the planar texture scaling units are repeats per meter.

## See also

### Functions

- [llGetPrimitiveParams](/functions/llGetPrimitiveParams/)

---

*Source: [PRIM NORMAL](https://wiki.secondlife.com/wiki/PRIM_NORMAL) on the Second Life Wiki. Content from the Second Life Wiki articles PRIM NORMAL (revision 1216871, 2024-07-02) and Template:LSL PrimitiveParam Categorize (revision 1180644, 2013-08-09), CC BY-SA 3.0.*

---

From lsl.dev: https://lsl.dev/constants/PRIM_NORMAL/
