Adından da anlaşılacağı gibi, bir MassFX kısıtlaması (veya “eklem”), simülasyondaki rijit cisimlerin hareketini kısıtlar. Gerçek dünyadaki kısıtlamalara örnek olarak menteşeler, çiviler, halatlar ve akslar verilebilir.

Tüm kısıtlama ön ayarları, aynı ayarlara sahip aynı türde yardımcı nesne oluşturur. Menteşe ve Bilyalı Soket gibi farklı kısıtlama türleri, ortaya çıkan kısıtlama için bazı kullanışlı varsayılan değerler belirler.
Kısıtlama yardımcı nesnesi , iki rijit cismi birbirine bağlayabilir veya tek bir rijit cismi küresel uzayda sabit bir konuma sabitleyebilir. Kısıtlama hiyerarşik bir ilişki oluşturur: Çocuk nesne dinamik bir rijit cisim olmalıdır, ebeveyn nesne ise dinamik, kinematik veya hiçbir şey (küresel uzaya sabitlemek için) olabilir.
Varsayılan olarak, bir kısıtlama “kırılamaz”dır: Ona ne kadar güçlü kuvvetler uygularsanız uygulayın veya sınırlarını ne kadar ihlal etmesine neden olursanız olun, geçerliliğini koruyacak ve katı cisimleri istenen aralığa geri getirmeye çalışacaktır. Bununla birlikte, kısıtlamayı, bağımsız kuvvet ve tork sınırlarıyla kırılabilir hale getirebilirsiniz; bu sınırların ötesinde kısıtlama devre dışı kalır ve simülasyona artık uygulanmaz.
Ebeveyn ve Çocuk Nesneleri #
Çoğu kısıtlama, iki rijit cismi birbirine bağlar. Kısıtlama, ebeveyn rijit cismin çocuğu olarak onunla birlikte hareket eder ve döner; aynı zamanda çocuk cismin ebeveyni olarak da çocuk cisme ebeveyn cismin hareketini iletir. Örneğin, bir simülasyonda, bir araba ve kapısının modelleri, araba ebeveyn, kapı ise çocuk olmak üzere bir menteşe kısıtlamasıyla birbirine bağlanabilir. Kapının ne kadar açılıp kapanabileceğine dair sınırlar, araba döndükçe değişmez, bunun yerine arabanın yönelimine göre değişir.
İki dinamik rijit cisim arasındaki bir kısıtlama, gerçek dünyadakine benzer şekilde davranır: Bir rijit cisme uygulanan kuvvetler, her iki yönde de diğerine iletilebilir. Çoğu zaman, araba sürmek araba kapısını da beraberinde sürükler. Ancak, bazı iri yarı (ve muhtemelen sarhoş) üniversite öğrencileri benzinleri bittiğinde arabalarını açık kapılarından iterlerse, kapılar kırılmadığı sürece araba gövdesi de hareket eder. Eğer ana cisim dinamik ise, alt cisim kadar hareket etme olasılığı yüksektir.
Kısıtlama Oluşturma #
İki nesne arasında bir kısıtlama oluşturmak için, sahnede önce ana nesneyi, ardından alt nesneyi seçin ve MassFX Araç Çubuğundaki Kısıtlamalar açılır menüsünden ön ayarlardan birini seçin . Kısıtlama otomatik olarak ana nesnenin pivot noktasına yerleştirilir. Ardından, bir görünüm penceresinde fareyi hareket ettirdiğinizde, sistem kısıtlamanın görüntü boyutunu ayarlamak için fare imlecini izler. Fareyi ana nesneye ne kadar yaklaştırırsanız, kısıtlama o kadar küçülür. Kısıtlama görüntü boyutunu kesinleştirmek ve kısıtlamayı oluşturmayı bitirmek için fareyi tıklayın.
Görüntü boyutunu daha sonra kısıtlamanın bir özelliği olarak değiştirebilirsiniz. Bu, yalnızca kısıtlamanın görünümlerde ne kadar büyük çizileceğini etkiler ve kısıtlamanın simülasyon etkileri üzerinde hiçbir etkisi yoktur.
Kısıtlamanın yerleşimi, kısıtlamanın uygulandığı üst nesneden olan uzaklığı etkiler. Kapı çerçevesine bağlı bir kapı gibi iki rijit cismin birbirine bitişik olduğu durumlarda, kısıtlamayı genellikle alt nesnenin pivot noktasına yerleştirirsiniz. Ancak, kancadan sallanan bir top gibi iki rijit cismin ayrı olduğu durumlarda, kısıtlama için ideal konum genellikle üst nesnenin pivot noktasıdır. MassFX Kısıtlama yardımcısının Gelişmiş bölümünde, kısıtlamayı sizin için otomatik olarak bu konumlardan birine taşımak için düğmeler bulunur.
Dünya Kısıtlaması Oluşturma #
Ayrıca, bir rijit cismi sahnedeki bir konuma göre kısıtlayabilirsiniz. Bu işlem, MassFX Kısıtlama yardımcısının Genel bölümündeki Ebeveyn düğmesinin yanındaki X düğmesine tıklayarak mevcut bir kısıtlamanın Ebeveynini boş veya “tanımlanmamış” olarak ayarlayarak gerçekleştirilir. Alternatif olarak, tek bir seçili rijit cisme bir kısıtlama atayın; bu, cismi otomatik olarak alt öğe olarak ayarlar ve kısıtlamayı uzayda sabitler.

Yaylar ve Yaylı Kısıtlamalar #
MassFX Constraint yardımcı programı üç tür yaylanma özelliğini destekler:
-

Sıçrama: Sınırlı bir kısıtlama sınırının kenarına ulaştığında, isteğe bağlı olarak sınırdan sekebilir. Örneğin, evinizde bir kapıyı sertçe kapatırsanız, normalde kilit tıklar ve geri sekmez. Bunu simüle etmek için, kısıtlamanın Sıçrama değerini 0,0 olarak ayarlarsınız. Ancak, kilidi kaldırırsanız, kapıyı sertçe kapatmak, kapı çerçevesinden geri sekmesine neden olur. Bunun için sıfırdan farklı bir Sıçrama değeri kullanırsınız.
-

Yay: Sınırlı bir kısıtlama sınırının kenarına ulaştığında, isteğe bağlı olarak, onu sınıra geri getirmek için uygulanan bir kuvvetle sınırı aşabilir. Örneğin, kendinize ve bir köprüye bir bungee ipi bağlayıp köprüden atlarsanız, kısıtlamanın Çeviri yönünün Sınır Yarıçapı değerine ulaşılması sonucu bungee ipinin uzunluğu dinlenme uzunluğuna ulaşana kadar serbestçe düşersiniz. Bu noktada bungee ipi gerilmeye başlar ve ardından gerilmemiş uzunluğuna geri dönmek için bir kuvvet uygular. Bu son kuvvet, gereğinden fazla hızlanmanıza ve daha yükseğe fırlamanıza neden olabilir (ip kendi etrafında bükülmeye başlar), ancak sınırın içine geri döndüğünüzde hiçbir kuvvet uygulanmaz.
- Sönümleme özelliği, nesnenin limiti aştıktan sonra ne kadar “çamur” içinden geçeceğini tanımlamak için Yay değeriyle birlikte kullanılır.
-

Esneklik: Yardımcının Yay bölümünde bulunan Esneklik değerleri, geleneksel olarak bir yay olarak düşünebileceğiniz şeyi temsil eder. “Dinlenme Pozisyonuna Yaylanma”, ana ve alt nesneleri ilk karedeki göreceli öteleme mesafelerine geri iterken, “Dinlenme Salınımına Yaylanma” ve “Dinlenme Bükülmesine Yaylanma” dönüşlerini etkiler. Esneklik için daha büyük değerler daha fazla kuvvet uygular.
Önizleme Performansını İyileştirme #

Kısıtlamalar, öteleme, salınım ve dönme hareketlerinin kilitli/sınırlı/serbest durumunu ve bu sınırların temsilini göstermek için görünüm pencerelerinde özel görselleştirmelere sahiptir. Bu görselleştirme, bir kısıtlamanın dönüşünü ve sınırlarını anlamak için faydalıdır. Bununla birlikte, bu görselleştirmelerin çizilmesi görünüm penceresi performansını etkiler.
Birçok kısıtlamaya sahip bir simülasyonun önizlemesini yapıyorsanız, görünüm güncellemelerinin hızını artırmak için yardımcı öğelerin görüntülenmesini devre dışı bırakmak isteyebilirsiniz. Bunu, Görüntü panelinde “Kategoriye Göre Gizle” seçeneğini açarak yapabilirsiniz.
Yardımcılar.
