2010-11-20 32 views
11

İnsan vücudu 3d modelim varsa, yürümeyi canlandırmak istiyorum, bunu başarmanın en iyi yolu nedir? Uygulananı görmenin olası yolları şunlardır:OpenGL animasyonu

  • Farklı konumlarda bacaklar içeren birkaç model oluşturun ve sonra bu modeller arasında enterpolasyon yapın.
  • Modeli openGL'ye yükleyin ve bir şekilde hangi köşe noktalarının bacaklara karşılık geldiğini ve uygun dönüşümleri gerçekleştirdiğini belirleyin.
  • Bir iskelet veya armatür uygulayın (buna benzer: blender animation wiki).
+0

Genellikle, içe aktarılan model animasyonu içerir. Neden OpenGL'de canlandırmaya ihtiyacınız var? Bunun bir sanatçı tarafından ele alınması gerekmez mi? –

+0

@Seth, bunu kişisel bir proje olarak yapıyorum. Yani model animasyon içeriyorsa, sadece bana verdiği farklı anahtar çerçeveler arasında enterpole ihtiyacım var? –

+0

Evet, tam olarak. Bununla ilgili birçok kaynak var. http://gpwiki.org/index.php/OpenGL:Tutorials:Basic_Bones_System –

cevap

11

İlk seçenekte anlattığınız teknik, morf hedef animasyonu olarak adlandırılır ve genellikle yüz animasyonu gibi animasyonların bazı bölümleri veya belki de ellerin açılması ve kapanması için kullanılır. İkinci seçenek, karakterinizin gövdesini hızlandırmak ve düşmeyi önlemek için hangi bacakların ne yapması gerektiğini hesaplamak için robotik gibi bir şey üzerinde çalışan yordamsal veya fiziksel canlandırmadır. Ama bunu doğrudan köşelerde değil, iskelette yapamazsın. Bir sonrakini gör.

Üçüncü seçenek, iskeleti canlandıran iskelet animasyonu ve köşeler kurallar tarafından takip edilir. Köklere iskelet eklemek, ciltleme olarak adlandırılır.

Opengl malzemelerini (uzayda, kamerada vb. Görüntüleme ve konumlandırma) asmadan sonra iskelet animasyonuyla başlamanızı öneririm.

3d uygulamanız için hileli ve animasyonlu bir modele ihtiyacınız olacak. Ardından, özel biçiminize bir ihracatçı yazabilir veya uygulamanızdan okumak istediğiniz bir formatı seçebilirsiniz. Bu dosya formatı, modelin tanımı, iskelet, arayüz ve anahtar kareleri içermelidir. Kafes, iskelet ve anahtar çerçeveler üzerinde animasyon oluşturmak için bu verileri kodunuzdan okuyup kullanın.

+0

+1. Şahsen, animasyon anahtar kareler, iskelet verileri ve model olarak bir dosya içinde .3DS dosyaları tavsiye ederim. – Bojangles

2

Yerinde olsaydım, Blender'ı http://www.blender.org'dan indirebilir ve bazı animasyon eğiticileriyle çalışırdım. Örneğin, bu bir:

http://wiki.blender.org/index.php/Doc:Tutorials/Animation/BSoD/Character_Animation

sonra modelinizi ve örneğin kullanarak animasyonlar dışa aktarabilir, Bunu yaptıktan sonra Ogre ihracatçısı. Elimden koduna sahip vb anahtar kareler arasındaki değeri,

http://www.ogre3d.org/tikiwiki/Blender+Exporter&structure=Tools

Oradan, sadece her şeyi yüklemek için C++ kod yazmak gerekir: Bu son sürümü olduğunu düşünüyorum ama emin olmak için kontrol ilgilenirsen bunun için sana göster.

+0

Bunu yaptığımda her şeyin işe yaraması için biraz dikkatli ve kibarca gerekli olduğunu eklemeliyim, ancak bu yapılabilir :) –

+0

Teşekkürler, bahsettiğiniz öğreticiden çoktan geçmiştim, ogre ihracatçısı. –

+0

@StuartGolodetz Kodu görmek istiyorum, lütfen? –