Unity - C# Kodu Hakkında 2 Soru

Furkan_FS

Yasaklı Üye
#1
Merhaba arkadaşlar.C# kodu ile ilgili iki sorum var.( Sorular resimde )




Olay şu.Benim zıplama ve kayma animasyonum var.Ve bu animasyonlar oynadığında karakterin collisionu kısalsın.Bunu yaptım ama birkaç eksiği var.

Bu arada soruda geçen collision koddaki CapsuleCollider satırı.
 

aslan4789

Kayıtlı Üye
#2
Furkan_FS' Alıntı:
Merhaba arkadaşlar.C# kodu ile ilgili iki sorum var.( Sorular resimde )




Olay şu.Benim zıplama ve kayma animasyonum var.Ve bu animasyonlar oynadığında karakterin collisionu kısalsın.Bunu yaptım ama birkaç eksiği var.

Bu arada soruda geçen collision koddaki CapsuleCollider satırı.
Bak öncelikle bir hatırlatma yapayım , sen objeyi küçülttüğün zaman ona bağlı olan collider objeside otomatik küçülür zaten.Yani aynı boyutta kalmaz.Animasyonda obje , küçülme eğilimi gösteriyorsa , ona bağlı olan colliderde küçülür.Orda 0.75 koyman o objenin collider uzunluğunu direk 0.75 yapar.

2.Soruna Gelirsek , 2 saniye sonra küçülmeye başlamasını istiyorsan , StartCoroutineleri , jump ve skianimden öncesine koymalısın.Böylece sistem, öncelikle bu zaman işlevini çalıştırıcak , ardından bulundugu yere dönüp devamındaki kodları çalıştırıcak.Programlamada öncelik önemli.
 

Furkan_FS

Yasaklı Üye
#3
aslan4789' Alıntı:
Furkan_FS' Alıntı:
Merhaba arkadaşlar.C# kodu ile ilgili iki sorum var.( Sorular resimde )




Olay şu.Benim zıplama ve kayma animasyonum var.Ve bu animasyonlar oynadığında karakterin collisionu kısalsın.Bunu yaptım ama birkaç eksiği var.

Bu arada soruda geçen collision koddaki CapsuleCollider satırı.
Bak öncelikle bir hatırlatma yapayım , sen objeyi küçülttüğün zaman ona bağlı olan collider objeside otomatik küçülür zaten.Yani aynı boyutta kalmaz.Animasyonda obje , küçülme eğilimi gösteriyorsa , ona bağlı olan colliderde küçülür.Orda 0.75 koyman o objenin collider uzunluğunu direk 0.75 yapar.

2.Soruna Gelirsek , 2 saniye sonra küçülmeye başlamasını istiyorsan , StartCoroutineleri , jump ve skianimden öncesine koymalısın.Böylece sistem, öncelikle bu zaman işlevini çalıştırıcak , ardından bulundugu yere dönüp devamındaki kodları çalıştırıcak.Programlamada öncelik önemli.
Hocam hepsini denedim.Başka forumlarda da yazdım denedim yazılanları. Ama olmadı.

Daha da garibi 1dklik iş ile hallettim olayı. Capsule Collideri resimde m01_fps ye eklemiştim.Oradan sildim male_004'e ekledim.Koddan Capsule Colliderli kısımları sildim.Hiçbir sorun kalmadı :D
 

aslan4789

Kayıtlı Üye
#4
Furkan_FS' Alıntı:
aslan4789' Alıntı:
Furkan_FS' Alıntı:
Merhaba arkadaşlar.C# kodu ile ilgili iki sorum var.( Sorular resimde )




Olay şu.Benim zıplama ve kayma animasyonum var.Ve bu animasyonlar oynadığında karakterin collisionu kısalsın.Bunu yaptım ama birkaç eksiği var.

Bu arada soruda geçen collision koddaki CapsuleCollider satırı.
Bak öncelikle bir hatırlatma yapayım , sen objeyi küçülttüğün zaman ona bağlı olan collider objeside otomatik küçülür zaten.Yani aynı boyutta kalmaz.Animasyonda obje , küçülme eğilimi gösteriyorsa , ona bağlı olan colliderde küçülür.Orda 0.75 koyman o objenin collider uzunluğunu direk 0.75 yapar.

2.Soruna Gelirsek , 2 saniye sonra küçülmeye başlamasını istiyorsan , StartCoroutineleri , jump ve skianimden öncesine koymalısın.Böylece sistem, öncelikle bu zaman işlevini çalıştırıcak , ardından bulundugu yere dönüp devamındaki kodları çalıştırıcak.Programlamada öncelik önemli.
Hocam hepsini denedim.Başka forumlarda da yazdım denedim yazılanları. Ama olmadı.

Daha da garibi 1dklik iş ile hallettim olayı. Capsule Collideri  resimde m01_fps ye eklemiştim.Oradan sildim male_004'e ekledim.Koddan Capsule Colliderli kısımları sildim.Hiçbir sorun kalmadı :D
Sorunun çözüldüğüne sevindim :))
Colliderin , Animasyonun oynatıldığı objede olması gerekli, onu düzeltmissiniz şimdi.
Ayrıca koddan colliderleri yine dediğim üzere silinmesi gerekiyordu.Şimdi collider.heigh = 8 yaparsan , uzunluğunu hemen 8 yapar. Yani animasyonla birlikte collideri küçülmez.

Ayrıca 2 saniye sonra küçülmesini istiyorsan 2.maddedeki dediğim şey hala geçerli animasyonu oynatmadan önce 2 sn bekletme kodunu çalıştırın :)

İyi Forumlar
 
Üst