Leksykon IT › Programowanie › Dekompozycja wypukła

Dekompozycja wypukła

Programowanie Svenska → Zaktualizowano: 2026-10-24

Podział wklęsłej siatki na zbiór wypukłych kawałków, tak by silnik fizyki mógł szybko sprawdzać z nią kolizje.

Algorytmy kolizji, takie jak GJK i SAT, zakładają kształty wypukłe — miska, krzesło czy litera alfabetu są wklęsłe i to założenie łamią. Rozwiązaniem jest zastąpienie wklęsłego kształtu kilkoma wypukłymi otoczkami, które razem z grubsza go wypełniają. Dokładna dekompozycja daje matematycznie poprawny, lecz absurdalnie liczny zestaw kawałków, więc silniki zadowalają się przybliżoną dekompozycją w zadanej tolerancji wklęsłości.

Standardowym narzędziem jest V-HACD (Khaled Mamou, około 2011): woksteluje siatkę i zachłannie scala skupiska w ograniczoną liczbę otoczek wypukłych. Występuje w Bullecie, Unity i Unreal. Kompromis jest prosty — mniej otoczek to szybsza, ale mniej dokładna kolizja, więcej otoczek to wierniejszy kształt za wyższą cenę.

← Wróć do leksykonu