Parallax mapping ("parallax mapping", også kendt som offset mapping , per-pixel forskydning mapping eller virtuel forskydning mapping ) er en softwareteknik (metode) i tredimensionel computergrafik , en forbedret version af bump mapping eller normale kortlægningsteknikker . Parallaxmapping bruges til proceduremæssigt at skabe en 3D-beskrivelse af en tekstureret overflade ved hjælp af forskydningskort (ikke at forveksle med forskydningskortlægning ).) i stedet for at generere ny geometri direkte. "Parallax mapping"-teknikken kan groft kaldes " 2.5D ", da den giver dig mulighed for at tilføje tredimensionel kompleksitet til teksturer uden at skabe rigtige tredimensionelle grafiske strukturer. For eksempel vil teksturen af en stenmur have en visuel tredimensionalitet, selvom den faktisk vil være geometrisk flad. Parallaxe kortlægning blev introduceret af Tomomichi Kaneko i 2001 [ 1] . Parallaxmapping udføres fuldt ud på grafikkortets grafikprocessorer som en pixel shader .
Parallaksekortlægning udføres ved at flytte teksturkoordinaterne, så overfladen fremstår 3D [2] . Den største forskel mellem parallakse-kortlægning og forskydningskortlægning er, at alle beregninger i den er per-pixel, ikke per-vertex. Ideen med metoden er at returnere teksturkoordinaterne for det punkt, hvor synsvektoren skærer overfladen. Dette kræver ray tracing til højdekortet, men hvis det ikke varierer for meget ("smooth" eller "smooth"), så kan du klare dig med en tilnærmelse uden at bruge ray tracing. Hvis ray tracing bruges i parallakse kortlægning, så kaldes denne mulighed " Parallax occlusion mapping ".
Således er parallakse kortlægning god til overflader med jævnt skiftende højder, uden kryds og store forskydninger. Sådan en simpel algoritme adskiller sig fra normal kortlægning i kun tre pixel shader-instruktioner: to matematiske instruktioner og en ekstra teksturhentning. Når en ny teksturkoordinat er blevet beregnet, bruges den yderligere til at læse andre teksturlag: basistekstur, normal kort osv. Denne parallakse kortlægningsmetode på moderne GPU'er er næsten lige så effektiv som almindelig teksturkortlægning, og resultatet er mere realistisk overflade kortlægning sammenlignet med simpel normal kortlægning.