Kolízia#
Môžete použiť dva rôzne typy kolízií: kolízie medzi rôznymi objektmi a vnútorné kolízie. Hneď na začiatku by sme si mali ujasniť jednu vec - primárnym cieľom výpočtu kolízie sú vrcholy mäkkého telesa. Ak teda máte príliš málo vrcholov, uskutoční sa príliš málo kolízií. Sekundárne môžete na zlepšenie výpočtu kolízií použiť hrany a plôšky.
Kolízie s inými objektmi#
Na to, aby sa mäkké teleso zrazilo s iným objektom, je potrebné splniť niekoľko podmienok:
Ak je nastavená možnosť Kolekcia kolízií, objekt musí patriť do kolekcie.
Objekt kolízie musí byť povrchová sieť objektu.
Na karte Fyzika musíte pre objekt kolízie aktivovať funkciu Kolízia. Kolízny objekt môže byť aj mäkké teleso.
Príklady#
Kocka mäkkého telesa, ktorá sa zrazí s rovinou (obr. Kolízia mäkkého telesa kocky s rovinou.), funguje celkom dobre, ale rovina mäkkého telesa prepadne priamo cez kocku, s ktorou má vytvoriť kolíziu (obr. Kolízia mäkkého telesa roviny s kockou, takže nedôjde k žiadnej interakcii.).
Prečo je to tak? Pretože predvolená metóda výpočtu kontroluje iba to, či štyri vrcholy mäkkého telesa roviny narážajú na kocku, keď je rovina ťahaná gravitáciou nadol. Môžete aktivovať funkciu Kolízia: Plôšky (na paneli Hrany mäkkého telesa), aby ste namiesto toho aktivovali kolíziu medzi plôškou roviny a objektom, ale tento typ výpočtu trvá oveľa dlhšie.
Pozrime sa bližšie na výpočet kolízie, aby ste si mohli urobiť predstavu o tom, ako by sme ho mohli optimalizovať.
Výpočet kolízií#
Simulácie mäkkých telies sa štandardne vykonávajú na základe jednotlivých vrcholov. Ak vrcholy mäkkého telesa nevytvárajú kolízie s objektom kolízie, medzi týmito dvoma objektami nedôjde k interakcii.
Na videu nižšie môžete vidieť kolíziu vrcholov s rovinou. Ak vrchol prenikne do zóny medzi Vonkajšia a Vnútorná, je odpudzovaný silou v smere normály plôšky. Poloha, v ktorej vrchol nakoniec skončí, závisí od síl, ktoré naň pôsobia. V príklade (prvý vrchol vľavo na videu nižšie) sa gravitačná a odpudivá sila plôšky vyrovnávajú. Rýchlosť, akou je vrchol vytiahnutý zo zóny kolízie, je ovplyvnená parametrom Pridusenie v nastaveniach Mäkké teleso na paneli Riešiteľ.
Viď aj
Stiahnite si blend-súbor.
Teraz sa pozrieme, čo sa stane, ak vrcholy zaťažíme a necháme ich cestovať vyššou rýchlosťou. Na videu vyššie môžete vidieť vrcholy pohybujúce sa rôznymi rýchlosťami. Dva úplne vpravo (piaty a šiesty) cestujú tak rýchlo, že prechádzajú priamo cez zónu kolízie (je to spôsobené predvolenou presnosťou riešiteľa, ktorú môžeme neskôr opraviť). Všimnite si, že štvrtý vrchol sa tiež pohybuje pomerne rýchlo, a pretože je ťažší, porušuje vnútornú zónu. Prvé tri vrcholy vytvárajú kolíziu správne.
Kolíziu môžete nastaviť tak, aby sa do výpočtu kolízie zahrnuli aj hrany a rovné plôšky a to v nastaveniach Mäkké teleso na paneli Hrany možnosťou Kolízia Plôšky a Hrana kolízie. Kolízia sa potom vypočíta inak. Kontroluje sa, či hrana alebo plôška pretína objekt kolízie, kolízne zóny sa nepoužívajú.
Dobré kolízie#
Ak sa kolízia, ktorú ste nastavili, chová správne, môžete vyskúšať nasledovné:
Objekt mäkkého telesa musí mať viac delení ako objekt kolízie. Do objektu mäkkého telesa pridajte rezy slučkou v strategických oblastiach, o ktorých viete, že sa s najväčšou pravdepodobnosťou pri kolízii vyskytnú.
Skontrolujte smer normálov plôšok.
Ak má kolízny objekt ostré hroty, môžu preniknúť do mäkkého telesa.
Rozlíšenie riešiteľa musí zodpovedať rýchlosti, ktorou sa pohybujú vrcholy mäkkého telesa. Znížte parameter Limit chyby a opatrne zvýšte Minimálny krok.
Vonkajšia a Vnútorná by mali byť dostatočne veľké, ale zóny protiľahlých plôšok by sa nemali prekrývať, inak by ste mali sily v opačných smeroch.
Ak používate veľké sily, mali by ste použiť veľké zóny.
Ak máte problémy s odpudzovanými vrcholmi, nastavte Pridusiť na dostatočne vysokú hodnotu (v prípade potreby až nahor).
Kolidujúce plôšky sa ťažko kontrolujú a vyžadujú dlhý čas výpočtu. Snažte sa ich nepoužívať.
Často je lepšie vytvoriť zjednodušenú povrchovú sieť, ktorá sa použije ako kolízny objekt, čo však môže byť ťažké, ak používate animovanú sieť.
Vlastné kolízie#
Informácie o vlastnej kolízii nájdete v nastaveniach Vlastná kolízia.