Su üzerinde yüzen bir nesnenin simülasyonu


9

Yukarıdan aşağıya balık tutma oyunu üzerinde çalışıyorum. Gölün etrafında hareket eden tekne ile ilgili bazı fizik ve çarpışma tespiti yapmak istiyorum. Ana motordan veya trol motorundan itme kuvveti, rüzgarın nesne üzerindeki etkisi ve suyun nesne üzerindeki sürüklenmesini uygulamak istiyorum.

Farseer fizik motoruna bakıyordum, ancak fizik motoru kullanarak herhangi bir deneyime sahip değilim, farseer'in bu tür şeyler için uygun olduğundan emin değilim (Demoların çoğu yerçekimine dikey bir uygulama gibi görünüyor yukarı / aşağı tip model).

Fars motoru uygun mu? veya farklı bir motor daha uygun olur mu?

Yanıtlar:


5

Mermi ile böyle bir şey yapıyorum , ama aynı teknik herhangi bir fizik motorunda kullanılabilir. Yüzdürme, vücuda hayali şamandıraların ayrı noktalarda yüzeyin altındaki derinliklerine göre bir kuvvet uygulayarak modellenir.

Zaman çizelgesinde her bir şamandıra, su seviyesini pozisyonlarında test eder, ardından teknenin rijit gövdesine, tekneye göre pozisyonlarında bir kuvvet uygular. Her şamandırayı teknenin yönüne bakıldığında daima dikey olan bir silindir olarak hayal ediyorum. Kuvvet, hacimleri tarafından tanımlanan bir maksimum değere kadar, ne kadar derinlere daldıklarıyla orantılıdır.

Şu anda teknenin sadece 4 yüzen var - yay, kıç, liman ve sancak. Hacimlerini manuel olarak, yer çekimine karşı koymak için yeterli gücü sağlayacak şekilde ayarladım ve ardından teknenin hareket şeklini değiştirmek için pozisyonları ve silindir uzunluklarını ayarladım. Bir şekilde silindirleri katı vücut hacmine doldurarak şamandıralar üretmek için belirsiz bir fikrim var, ama bu gelecek için bir şey.

Youtube'da dalgalarla seyreden bir teknenin kısa bir demosu burada .


0

Farseer fiziği her türlü kuvvet ve intertia uygulamasını destekler, bu bir problem olmazdı, Farseer zaten sıvı sularını (su için) destekliyorsa, ancak destekleniyorsa, tamam olmalı. (Ayrıca Farseer'ın bir 2D fizik motoru olduğunu unutmayın)


Sanırım Farseer'in (3.3) bir sonraki sürümünde sıvılar için destek ekliyorlar
Farseer'in ekliyorlar brainydexter
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.