Sago

Yeni üye
28 Nis 2023
17
0
0
(35) İzmir
silahın ve animasyonunu ayrı ayrı importladım, silahı ele attachledim actor to componentle, kol animasyonu düzgün ama silah animasyonu çalışınca sağa ışınlanıp orda oynuyo.
ekte önce kol animasyonunu oynatıyorum bir sıkıntı yok, 2.de silah animasyonunu oynatıyorum sağa ışınlanıp orda oynuyo attachlemiştim ele oysaki nasıl düzeltirim?

Bu içeriği görmek için üçüncü parti çerezlerine izin vermeniz gerekli.
Daha fazla detay için çerezler sayfasını ziyaret edin.

https://imgyukle.com/i/rNzfg8

https://imgyukle.com/i/rNz9rn[/SIZE]
 
AnimClass ekli mi silahta?
LoopAnimation açık mı kapalı mı?

Benim uyguladığım yöntem şöyle, silahı ve eli Maya'da yapıyorum, animasyonları Unreal'de aynı anda çalıştırıyorum. (Blender da olabilir hiç fark etmez. Burada kast ettiğim her iki meshin de aynı ortamda yaratılması.)

Ortaya çıkan sonuç gayet güzel oluyor. Şu ana kadar hiç sıkıntı yaşamadım ve bayağı profesyonel duruyor. 
Aşama aşama anlatayım.
1. Aşama önce el + silah modelliyorum + Rigliyorum.
2. Aşama el + elin rigini Unreal'e import ediyorum. Aynı şekilde silah + silah rigi import ediyorum.
3. Aşama animclass_bp oluşturuyorum, el için ayrı, silah için ayrı oluşturuyorum. 
4. Aşama meshleri sürükle bırak yaparak Character_BP'ye ekliyorum. Bu oluşturduğum AnimClass'lari meshlere ekliyorum.
5. Aşama AnimClass_BP'leri ekledikten sonra Character'deki pozisyonunu, kamerada nasıl gözüktüğünü ayarlıyorum.

Diyelim Reload anim çalıştıracağım, ne yapmalıyım?
1. Aşama Maya açıyorum, reload animasyonu yapıyorum. El meshi ve rigi seçiyorum sadece, export ediyorum. Unreal'e giriyorum, import ediyorum (rig olarak önceden eklediğim el meshi seçiyorum, import mesh kısmında ise meshleri import etmiyorum. Sadece anim import ediyorum yani.) Aynı işlemi silah için de yapıyorum.
2. Aşama yapman gereken tek şey animasyonu çalıştırmak. İstersen animclass_bp'de çalıştır, istersen AnimMontage oluştur bu sana kalmış. 

Not: Attach actor to component falan yok. Yöntem sadece bundan ibaret. Ayrıca Maya'da yarattığım animasyonları export ederken .FBX olarak, bake animation tikini aç.
 
silahta animclass ekli ve loop kapalı
bende senin yaptığının aynısını blenderdan yapıyorum silahı ve kolu rigliyorum animasyonları bitirip import ediyorum import ayarlarım doğru kontrol ettim onları.
Kolların ve silahın animbp si falan herşey doğru kollar gayet düzgün çalışıyor. ama hem animbp ile hemde play montage ile silah animasyonu başlayınca silah sağa ışınlanıyor.
aşağı bir video bıraktım silahta animasyon dosyası aktif olunca ne olduğunu görebilirsin, silah o beyaz noktadan niye ayrılıyor bir fikrim yok, 2 gündür kitlendim kaldım hiçbir şekilde çözemiyorum, bunu çözemediğim içinde oyun ilerlemiyor yardım edebilirsen çok çok mutlu olurum . blender dosyasını kontrol etmek istersen sana discorddan atabilirim. Teşekkürler <3

Bu içeriği görmek için üçüncü parti çerezlerine izin vermeniz gerekli.
Daha fazla detay için çerezler sayfasını ziyaret edin.
 
AnimClass'ın fotosunu atar mısın? Hem el mesh hem gun.
Blendspace falan ekli olmadığını düşünüyorum. Reload işleminin animclass eklendiği gibi başlamamasını istiyorsan, animclass'ı değiştirmelisin. Sen sanırım direkt Reload eklemişsin output kısmına. Blendspace ekleyip idle - walk - run ayarlarını oradan yapmalısın. Walk ve run animasyonun yoksa şimdilik sadece idle ekle.

Son olarak kordineli çalışması açısından el mesh ile gun'ın animclass'ları tamamen aynı olmalı.
 
dc verebilirmisin daha kolay olcak
bu yedek proje animayonları deniyorum ana projede blendspaceler, ıdle jump walk run reload shoot hepsinin kodlamayla ilgili herşeyi hazır, ama silahın meshinin kendi animasyonlarında kayıyo işte silah niyeyse
ana projede child actor var silah değiştikçe o falanda değişiyo silaha göre attachliyosun iskeletteki sokete falan ama silah animasyonu 3 4 gündür çıkmaza soktu
ben animasyonda bi sıkıntı olduğunu düşünüyorum ama hatalı bişey de yapmadım yani 0dan kendim yaptım animasyonu.
silah animasyonunun olayı zaten silahın kendi içinde parçalarının hareket etmesidir silahın yeri nasıl hareket edebiliyo anlamıyom 
silahın o beyaz noktadan ayrılmasıyla ilgili olabilir mi?
 
Serhatxwe ilk cevabında konuyu anlatmış aslında. Bu sistemi 3 türlü yapabilirsin ancak 3 sistemi birbirine karıştıramazsın.
1. Her şeyi Maya/Blender da neyse olması gerektiği pozisyonda riglersin anime edersin. Bu durumda Maya/Blender da silah origini ve root bone u 000 da olur ama mesh olması gerektiği gibi ellerde olur. Sonra exportlar, UE ye importladığında "ASLA attach kullanamazsın". Çünkü herşeyi olması gerektiği yerde anime ettin zaten. Her şey birbirine attach olmadan direk uyum sağlayacaktır.
2. Her şeyi Maya/Blender da 0 0 0 eksenine göre yani world center da riglersin anime edersin. Yani kafakter de 0 da olur silah ta meshi ile beraber 0 0 0 da olur. Böyle yaptıysan exportlayıp UE ye geçtiğinde artık "MUTLAKA attach kullanmalısın". Attach yaparken de 3 ayrı kural var orada. Attahment rule "Snap To Target" "Keep Relative Transform" vb seçenekler var. Attachment yaparken hangi socket e ya da joint e bağlayacağına göre bu kuralları belirlemelisin. Eğer sıfır da yaptıysan muhtemelen Keep Relative Transform yapman gerekecektir.
3. 2 nci maddedeki gibi yaparsın yine ama bu sefer UE de nereye attachleyeceksin o joint in transformunu hesaba katarsın. Maya/Blender da silahın attach lanacağı joint in transformunu temsilen bir Locator ya Null kullanırsın ve silah animasyonunu o joint e göreceli olarak yaparsın. Bu durumda UE ye geçtiğinde joint e attach yaptığında ve kural "Snap to Target" olduğunda her şey tam yerine oturur.
 Sen bir yerde attach lıyorum demişsin ve video da da socket attachlenmiş olarak gözüküyor orada. Ama aynı zaman da Serhat ın ki gibi yaptım da demişsin sonradan. Bu 3 sistem bir birine karıştırılamaz. Birini kullanmalısın sadece. Attach laman gereken yerde attachlarsan ya da attachlamaman gereken yerde attach lamazsan sıkıntı olur. Bir de attach kuralı da ayrıca önemli.
 
yaptıklarım çok anlaşılmamış galiba baştan anlatıyorum
1- önce kolu blenderdan rigliyorum
2- silahı rigliyorum
3- kol ve silahı boş sahneme aktarıyorum boş sahnede kamera falan var 
4- herşeyi sıfır noktasına alıyorum apply transform yapıyorum
5- sonra default poseu oluşturuyorum silahı elimizde tuttuğumuz
6- default posedayken silah kol child of larını yapıyorum
7- sonrasında animasyonları bitirip action editörde isimlendirip ueye import ediyorum.

senin dediğindeki 2.maddeye denk geliyor galiba.
attachlememdeki sebep de şu, reload animasyonunda kolun ve silahın ayrı animasyonları olduğu için attache çokda gerek yok ama ıdle animasyonunda sadece kol oynuyor silahın kendi animasyonu yok buyüzden silahın kolu takip etmesi gerekiyor buyüzden attachliyorum snap to targetla veya viewporttan,

asıl projemde tek silah olmadığı için her silaha ayrı soket oluyor bu yüzden child actorun clasının değiştirip bpden attachliyordum, deneme projesinde ise silahları atıp animasyonlarını verip animasyonları kontrol ediyorum sadece, hatamın nerde olduğunu bilmiyorum, root bonela vesayre alakalı olabilir mi? silahın o beyaz noktada kalması gerekiyor çünkü? Yardımcı olursanız sevinirim. <3 discorddan arkadaşlık isteği attım blender dosyasını kontrol edebilirmisin?
 
garantiye almak için şöyle bişeyde yaptım, asıl projemdeki eski silahı tekrar ele koydum ve silah animasyonlarını çalıştırdım (eski silahın animasyonunu ueden yapmıştım,yenisi blenderdan)
ekte ilk şuanki yeni silahı ele atıyorum ve animasyonunu çalıştıyorum ışınlanıyor sağa, sonra eski silahı ele atıyorum çalıştırıyorum problem yok şarjör aşağı geliyor silahta yerinde kalıyor animasyonda bir sıkıntı var yani, animasyon dosyasında birşey takıldı gözüme onuda 2. link olarak bıraktım, birşeyleri yanlış yapıyorum blenderda da acaba ne?

Bu içeriği görmek için üçüncü parti çerezlerine izin vermeniz gerekli.
Daha fazla detay için çerezler sayfasını ziyaret edin.

Bu içeriği görmek için üçüncü parti çerezlerine izin vermeniz gerekli.
Daha fazla detay için çerezler sayfasını ziyaret edin.
 
Blender kullanmıyorum. Maya dosyası atarsan boş vaktim de bakarım.
1. Anlattığın maddelerden 3 ten 6 ya kadar maddeleri anlamadım. Özellikle 3 ve 4 ü neden yapıyorsun hiç bir fikrim yok. Yukarıdaki mesajımda anlattığım gibi sadece 1 teknik seçmelisin. Karma bir teknik olmaz. Eğer silahı attach layacaksan ve snap to target kullanacaksan silahın sağ el tutma kulbuna yakın bir yerde merkezi yani center olması lazım (sal elde socket e attach ladığını farzediyorum olması gerektiği gibi. Eğer öyle değilse bu da ayrı bir hata olur.). Yani silahı blender da tutma yeri 0 0 0 da riglemiş olman gerekir. Başka bir şeyler yapıyorsan karıştırıyorsundur. Son videonda açıkça görülüyor; silahın merkez noktası namlu istikametinde tutma kulbundan çok uzakta ilerde. Transform gizmo farkından dolayı blenderda verdiğin mesafeyi UE de sağ tarafa mesafe hatası olarak görüyorsun. Bana göre sorun son derece açık.
2. Attach olayını kod ile yapman gerekiyor normalde.
 
düzeltme yorumu yazıyorum,
erginegiderin dediği gibi silahları zaten olması gereken yerde anime ettiğim için attachlemeye gerek yokmuş, yani 1. maddedeki gibiymiş
asıl projemdeki diğer silahlar da 2.maddedeki gibi olduğu için projeyi baştan yapıcam,

silahın ve kolların kendi ayrı animBPsi olucak ya, kol ıdle pozisyonundayken animbpye ıdle animasyonunu atıyosun ama silahın ıdle animasyonu yok eli takip ediyo, ama silahı ele attachlemediğm için takip etmiyo ne yapmam lazım?

fps oyunlarında birden fazla silah olayı eski silahı silip yenisini spawnlayarak mı yapılıyor
yoksa weapon classı açılıyor onun child actoru de viewporta atılıp silah değiştikçe onun da classı mı değiştiriliyor?
 
1 nci şekilde yaptıysan silahında idle animasyonu olacak. Kollar idle animasyonundayken silah ta idle animasyonunda olmalı.
    Eğer attach ile yapmak istiyorsan her şeyin sıfır noktasına göre olmalı. Unreal de root bone, bağladığın socket ile aynı transform u alacağından, tüm sistemi ona göre kurmalısın. Eminim unreal için her rig in 0 0 0 da bir root bonu olması gerektiğini biliyorsundur zaten. Silahın biraz havaya kalkması yani ele göre olan tüm hareketleri eldeki socket ten geleceğinden bu animasyonlara gerek yok. Sadece kurma kolu şarjör gibi ikincil animasyonların yapılması gerekli. Yani silaha genel olarak hareket verilmemeli, o hareketler zaten sağ el bağlantısı ile socket ten gelecek. Sen diğer animasyonları yapacaksın sadece.
    Var olan animasyonu bu şekle getirebilirsin tabi ne kadar konuya hakim olduğuna bağlı olarak. Yapman gereken şey silah ı tekrar 0 0 0 koordinatına çekmek ve ondan sonra yukarı da dedeğim socket ten gelmesi gereken silahın tümünün hareket etmesi animasyonu silinmeli. Muhtemelen bu animasyon ya root bone da ya da bir üstündeki joint te yapılmıştır zaten. Oyun içerisinde socket e snap to target ile attach lendiğinde direk olarak sistem işleyecektir.
    Bu arada kafa karışmaması için söylemek istemedim ama tüm silah rig joint lerini  kol riginin içine ekleyerek ve tüm silah mesh lerini bu joint lere skinleyerek olay çok daha basit hale getirilebilir. Bu durumda silah ayrı bir AnimBP ye bile gerek olmayacaktır. Set Master Pose ile tüm sistem Maya da çalıştığı gibi direk çalışacaktır. Ama bu daha kafa karıştırmasın.
    Silah bir child actor olmak zorunda değil. Sadece bir actor değişken reference olarak ta çalışabilir. Hatta öyle daha basit olur. 
    Evet silah değiştirmek için bir önceki silahı yok eder yeni silahı spawn laya bilirsin. Ama öyle olmak zorunda da değil. Mesela önceki silah sırta asılı görülmesi gerekiyorsa arkadan ona göre yok etmemek te gerekebilir. Duruma göre değişir yani.
 
söylediklerini uygulamalı olarak anlatan bir video veya kurs biliyormusun?
bide sen olsan hangi şekilde yapardın attachlermiydin yoksa 1.maddedeki gibi mi yapardın?
bide play montage mi mantıklı yoksa animbpden oynatmak mı mantıklı
 
1. Ben her hangi bir video bilmiyorum ama her konu için video bulunamayabilir. Önemli olan sistemi anlamaktır. Bu anlattıklarımın tamamını ya da parçalarını anlatan bir çok video mutlaka vardır. 
2. Eğer 3 4 tane birbirine yakın silahlarım olacaksa 1 nci yöntemle yapardım. Mesela 4 çeşit tüfek vb. Eğer çok fazla çeşit çeşit silah olacaksa attach leme yolunu tercih ederdim.
3. Bu tarz silah animasyonlarında montage kullanılır çünkü oyuncu bu animasyonu her zaman kesebilir ya da yeniden başlatabilir. Montage da bu olanaklar çok daha fazladır.
 
Benim en baştan madde madde özetlediğimi uygularsan tüm sorunun çözülecek aslında. Orada da yazdığım gibi, mu metotta asla attach kullanılmaz. El mesh ve Gun mesh'in ayrı ayrı AnimClass'ları mutlaka olmalı. Ana mantık animasyonları aynı ortamda yapmak, aynı ortamda çıktı vermek, Unreal Engine'a atmak, ve animasyonları aynı anda çalıştırmak. Bu kadar.

Kursa falan da gerek yok sen zoru başarmışsın, silah ve el animasyonlarına sahipsin. Geri kalan tek şey madde madde dediklerimi uygulaman.
 
  • Beğen
Tepkiler: occupunk