Saya membaca beberapa info tentang simulasi fisika dan menemukan solusi yang memungkinkan. Ia bekerja dengan memecah setiap fisika-langkah menjadi tiga fase:
1. Pra-Langkah:
Setiap langkah fisika, sebuah jendela menciptakan empat transformasi, dua untuk setiap sisi koneksi:
- transformasi input yang mengubah posisi objek, kecepatan (dan mungkin ukuran dan berat) menjadi sistem koordinat tujuan dan
- transformasi keluaran yang mengubah kekuatan kembali ke sistem asli objek.
(Jendela statis hanya perlu melakukan ini sekali.)
Selain itu, objek dalam setiap sistem koordinat dibagi menjadi tiga kelompok:
Pengelompokan Fisika http://content.wuala.com/contents/Tamschi/Stack%20Exchange/WindowGrouping.png
Objek di depan jendela (hijau).
Suatu objek juga dihitung terhadap grup ini jika ia memotong bidang jendela atau kemungkinan melintasinya dari belakang jendela (tidak ditampilkan).
Objek yang memotong jendela atau mungkin memotongnya dalam langkah fisika ini (oranye).
Objek di belakang jendela (biru). Jika suatu benda terbang ke arah sisi belakang jendela, itu masih ditandai sebagai anggota kelompok tiga.
Pengelompokan dapat disederhanakan jika jendela berada di perbatasan simulasi.
2. Langkah Utama:
Fisika sebagian besar dihitung seperti biasa, dengan beberapa pengecualian:
Objek dari kelompok kedua tidak pernah bertabrakan dengan yang dari kelompok ketiga dan sebaliknya.
Transformasi input jendela digunakan pada objek dari kelompok kedua dan hasilnya dievaluasi terhadap objek depan dan berpotongan dari sistem tujuan. Gaya yang dihasilkan ditransformasikan menggunakan transformasi keluaran dan diterapkan ke objek asli.
(Jika objek terkena selama perhitungan, itu harus dikelompokkan ulang!)
3. Pasca Langkah:
Jika suatu objek dari grup kedua telah melewati jendela, ia dipindahkan ke sistem tujuan menggunakan transformasi input.
Pikiran Tambahan:
Jika transformasi dipertahankan setelah menghitung fisika, mereka dapat digunakan untuk mempercepat rendering dan untuk perhitungan AI lebih mudah. Pengelompokan dapat digunakan untuk menghapus clip-pesawat dari proses rendering.
Kelemahan dari solusi ini adalah bahwa windows harus ditambahkan langsung ke mesin fisika.