Parallax occlusion mapping
Parallax Occlusion Mapping (POM)
Parallax occlusion mapping (POM) is an enhancement of the parallax mapping technique. Parallax occlusion mapping is used to procedurally create 3D definition in textured surfaces, using a displacement map (similar to a topography map) instead of through the generation of new geometry.[1] This allows developers of 3D rendering applications to add 3D complexity in textures, which correctly change relative to perspective and with self occlusion in real time (self-shadowing is additionally possible), without sacrificing the processor cycles required to create the same effect with geometry calculations.[2]
From Wikipedia:
https://en.wikipedia.org/wiki/Parallax_occlusion_mapping
Normal Map VS Relief Map
The results of Normal Map will appear too flat when viewed from certain angles. Data costs must always be considered during real-time rendering, so Relief Mapping is extended. However, Relief Mapping will still have some flaws at special angles.
The main steps of POM:
The height information provided by the Height Map, and the vector derived from the pixel depth and camera position. Perform linear collision detection from the current UV and Height Map. When a collision is detected, the current offset is returned, and the sampled UV is added to this Offset, which means using reverse Height Map tracking. Generally, POM is used on flat surfaces such as concrete roads
Create Material
Add Parallax Occlusion Mapping node
Height Map into Material, but it could not connect into Heightmap texture
Must change to Texture object
Right click > Converts to Texture Object and connect it
Scalar Parameter
Three Options to get scalar parameter
Option 1:
Option 2:
1.Keyboard, Press 1 and left click mouse to get a node
2.At the node, right click and Convert to Parameter
Option 3:
Keyboard, Press S and left click mouse to get a node
Default:
*Height rate: 0.04
*Min Stepts: 8
*Max Stepts: 16
*Ref Plane: 0.2
Heightmap channel (V4)
Search Constant4Vector
Constant4Vector:
R:1, G:0 , B:0, A:0
Render shadows (occlusion mapping) : StaticBool (True)
Light Vector: SkyAtmosphereLightDirection
Shadow stepts: 32
Group
Group , key group name. Put all parameters into this group
Take Basic Color, roughness, normal map into material
Due to POM already generate a shadow mask, take a Basic color to use Lerp to process the mask
Pixel Depth offset connect into Pixel Depth offset
Final Material
Material Instance: Adjust properties
Create Material Instance
Material > Right Click > Create Material Instance
Material Instance: Adjust properties
Add a new floor, add the material, check the effect, and adjust the material properties.
1.Create Plane
Shapes > Plane
2.Crabe Material Instance into plane
Shadow:
Select plane > detials >cast shdow : Turn off
Youtube Tutorial:
pebbles texture download:
教學材質球和文件下載 / Material and Document Download:
贊助 / Support Me
BuyMeAcoffee: https://www.buymeacoffee.com/lutopialab
Patreon: https://www.patreon.com/LutopiaLab/
Comments