3 puan yazan GN⁺ 2024-02-29 | 1 yorum | WhatsApp'ta paylaş

Rapier'e giriş

  • Rapier, Rust programlama diliyle yazılmış 2D ve 3D fizik motorları paketidir.
  • Gerçek zamanlı fiziğe ihtiyaç duyan video oyunları, animasyon ve robotik gibi uygulamaları hedefler.
  • Hızlı ve kararlıdır; isteğe bağlı olarak platformlar arası deterministik davranışı destekler.
  • Katı cisim çarpışmaları ve kuvvetler, eklem kısıtları, temas olayları ve sensörler, anlık görüntü özellikleri, isteğe bağlı platformlar arası deterministik davranış ve JavaScript binding'leri gibi özellikler sunar.
  • Rapier, Apache 2.0 lisansı altında ücretsiz olarak sunulur ve açık kaynak şirketi Dimforge tarafından geliştirilmektedir.
  • GitHub Sponsors üzerinden sponsorluk sağlayarak destek olunabilir.

GN⁺'un görüşü

  • Rapier, Rust'ın güvenlik ve performansından yararlanarak gerçek zamanlı fizik simülasyonuna ihtiyaç duyan çeşitli alanlar için uygun bir çözüm olabilir. Özellikle oyun geliştirme veya robot simülasyonu kullanımında öne çıkması beklenebilir.
  • Açık kaynak olarak sunulduğu için topluluk desteğiyle sürekli geliştirilme potansiyeline sahiptir; kullanıcıların doğrudan özellik eklemesi veya optimizasyon yapması açısından da avantajlıdır.
  • Rust tabanlı bir fizik motoru, bellek güvenliği ve eşzamanlılık işleme konusunda avantajlar sunar; ancak Rust dilinin öğrenme eğrisi nispeten yüksek olduğundan, benimsemeyi düşünen geliştiriciler veya ekipler bunu göz önünde bulundurmalıdır.
  • Rapier'e benzer işlevler sunan diğer fizik motorları arasında Bullet, PhysX ve Havok bulunur; bunların her birinin özelliklerini ve performansını karşılaştırarak projenin ihtiyaçlarına uygun motoru seçmek önemlidir.
  • Rust tabanlı bir fizik motoru seçmenin getirdiği avantaj performans ve kararlılık olsa da, yaygın olarak kullanılan mevcut C++ tabanlı fizik motorlarına kıyasla topluluk desteği veya kaynaklar nispeten daha sınırlı olabilir.

1 yorum

 
GN⁺ 2024-02-29
Hacker News görüşleri
  • Rapier fizik motorunu kullanarak çevrimiçi çok oyunculu bir oyun geliştiren bir kullanıcı var. Henüz tek oyunculu mod yok, ancak Rust diliyle uygulanmış API’nin oldukça sağlam olduğunu düşünüyor.

    • Oyunda oyuncular sırayla kurtçukları karşı takımın üzerine çarptırarak tepeyi ele geçirmeye çalışıyor.
    • Oyunun ve fizik/oyun mantığı kaynak kodunun çevrimiçi olarak incelenebileceğini belirtiyor.
    • Geliştirme deneyimi hakkında bir yazı hazırlamayı planlıyor.
  • Geometric Algebra üzerine birkaç ay boyunca derinlemesine çalışan bir kullanıcı var; bunun çeşitli geometri türlerinde sezgisel ve özlü bir çalışma biçimi sunabileceğini düşünüyor.

    • Geometric Algebra’yı fizik motorunun temeli olarak kullanmanın iyi bir fikir olup olmadığını merak ediyor.
    • İlgili birkaç Rust kütüphanesi var, ancak henüz fazla ilgi görmüş değiller.
  • Bevy eklentisi için bir rehber yazan bir kullanıcı var ve Bevy XPBD hakkında da yazmış.

    • Bevy XPBD’nin Bevy ekosisteminde ilginç bir alternatif olduğunu söylüyor.
  • Bir kullanıcı, Dimforge’un nalgebra ve Rust kullanarak robotik alanında Eigen ve C++’ın yerini alabilmesini umuyor.

  • Onlarca yıl önce rijit cisim fizik motoru geliştirmiş deneyime sahip bir kullanıcı, nesnelerin zemine batmasını önlemek için DAG kullanmanın o dönemde en iyi çözüm olduğunu hatırlıyor.

    • Bu sorunun günümüzde çözülüp çözülmediğini merak ediyor.
  • Bir kullanıcı, Rust ile çok sayıda oyun motoru yapıldığı ama gerçek oyunların çok az geliştirildiği yönündeki klişenin doğrulandığını düşünüyor.

  • Rapier kullanarak bir web demosu yapan bir kullanıcı var; bunun hem sunucu tarafında hem istemci tarafında çalışabilmesini ve istemci tarafı tahmin ile düzeltme uygulanabilmesini seviyor.

    • İyi dokümantasyona sahip olması, güncel olması ve paket boyutunun küçük olması gibi avantajlardan söz ediyor.
  • Bir kullanıcı, Rapier’in JavaScript birlikte çalışabilirliğinin çok iyi olduğunu söylüyor.

  • Rapier kullanarak basit bir web oyunu yapan bir kullanıcı var; hileyi önlemek için fizik hesaplamalarını ve kazanma/kaybetme durumunu sunucuda hesaplıyor.

    • Oyunun, "Ice Cold Beer" adlı eski bir Taito elektronik arcade oyununa saygı duruşu niteliğinde olduğunu belirtiyor.