Hej zkov82,
Jeg kan godt lægge ud med at sige at det ikke er et simpelt projekt i har lagt jer ud i. Jeg kender til bacholar og eksamensprojekter som har haft med dette emne at gøre. Meeen, derfor kan i jo godt alligevel få implementeret noget som virker.
Nu når du siger i har lavet opgaver med partikelsystemer og simulering af vand går jeg ud fra det er en realtime engine i bygger videre på. Jeg kommer derfor med pointers som tager udgangspunkt i realtime-rendering.
Jeg ser 3 problemstillinger:
1) Finde ud hvilke facets der kolliderer, med hvad de kolliderer og hvor på facet-fladen kollideringen opstår (for at få den korrekte rotation).
2) Hvordan deformiteten skal udregnes. Altså hvor meget kraft rammer de med, hvor tunge er polygonerne og objektet de rammer, hvad er kontra-kraften og hvad med glidningsmodstand osv osv.
3) Definere soft-spots på bil-objektet. Altså steder hvor ting kan knække af. Dvs. i deler bilen op i flere objekter hvor bindingen mellem objekterne er svag. Så hvis kraften er stor nok slynges disse objekter fra hinanden.
Punkt 2 og 3 kan man slække på alt efter hvor flot eller realistisk effekt man vil opnå.
Det er mere punkt 1 som jeg tror i skal koncentrere jer om. Hvordan finder i ud af hvilke trekanter (eller polygoner) der kolliderer med det andet objekt? Jeg går ud fra at bilen skal kunne deformeres? Men skal det objekt bilen rammer også deformeres? eller er det et statisk solidt objekt?
Hvis i bare tester alle polygoner/trekanter i bilen for skæringer med kollisionsobjektet, kommer det aldrig til at køre i realtime. I skal ud og kigge på rumlige-datastrukturer (Spatial datastructures) som jeres objekt-filer loades ind i fra start af. I udfører så en kollisionstest mellem de to rumlige-datastrukturer og finder præcis de polygoner/trekanter som er involveret i kollisionen. Disse testes herefter for skæringer hvor de præcise skæringspunkter udregnes.
Når dette er gjort kan i tænke over punkt 2 og 3. :) For lige at give jer et paper med på vejen som har lidt af det hele, kan jeg referere til dette:
http://zach.in.tu-clausthal.de/papers/deform_colldet_cgf.pdfOgså en hel anden ting. Hvad er det for en uddannelse? Jeg har selv haft lignende kurser (hvor vi lavede partikelsystemer, kollisioner, vand, terrain-rendering, billboards osv osv) under min studietid. Der skulle muligvis ikke være en Niels Jørgen inkluderet som lektor?
Mvh.
- Snap :)