3DEXCITE Klavye Kontrollü İnsan Hareketi
3DEXCITE Creative Experience uygulamasında , klavyedeki bir tuşa basıldığında insan karakterinin önceden tanımlanmış bir yol boyunca hareket etmesini sağlayabilirsiniz . Bunu başarmak için öncelikle hareket davranışını ayarlayarak başlarız, ardından bir olay betiği oluştururuz ve son olarak Hikaye Anlatımı'nda bir senaryo yapılandırırız. Bu kılavuzda, klavye kontrollü insan hareketini etkinleştirme sürecini adım adım anlatacağız 3DEXCITEve böylece oyuncunuzun hareketleri üzerinde hassas kontrol sahibi olmanızı sağlayacağız.
Gelin süreci adım adım inceleyelim!
Öncelikle, sahneye insani bir unsur katmamız gerekiyor.
İnsan modeli artık hazır olduğuna göre, odağımızı hareket davranışını eklemeye çevirebiliriz.
Sonuç olarak, insan önceden belirlediğimiz olaya yanıt olarak bir yol boyunca hareket edebilecektir.

Hareketin senaryosunu yazmaya geçmeden önce, öncelikle insanın izleyeceği yolu tanımlayalım.
Bu yol, komut dosyası tetiklendiğinde hareket kılavuzu görevi görecektir.

3DEXCITE Klavye Girişi için JavaScript Teknikleri
Bu aşamada, klavye girişini işleyecek ve insanın hareketini tetikleyecek bir senaryo tabanlı aktör oluşturmamız gerekiyor

var TriggerEventClass = function () {
EP.Event.apply(this, arguments);
};
TriggerEventClass.prototype = Object.create(EP.Event.prototype);
TriggerEventClass.prototype.constructor = TriggerEventClass;
TriggerEventClass.prototype.type = 'TriggerEventType';
Eğer STU.TriggerEvent mevcut değilse,
STU.TriggerEvent = TriggerEventClass;
}
Eğer EP.EventServices.getEventByType(TriggerEventClass.prototype) doğru değilse,
EP.EventServices.registerEvent(TriggerEventClass)
.
beScript.onStart = function () {
// Komut dosyası başladığında çalıştırılacak kod.
};
beScript.onStop = function () {
// Deneyim durduğunda çalıştırılacak kod.
};
beScript.execute = function (context) {
// Her karede çalıştırılır.
// 'context.deltaTime', son kareden bu yana geçen süreyi sağlar.
};
beScript.onAllKeyboardRelease = function (iEvent) {
// Tuş bırakma işlemlerinde hata ayıklamak için aşağıdaki satırı yorum satırından çıkarın.
// console.log(iEvent.key);
if (iEvent.key === this.KeyCode) {
let newEvent = new STU.TriggerEvent();
this.actor.dispatchEvent(newEvent);
}
};
Gelin bu komut dosyasının ne yaptığını ve Creative Experiencenasıl çalıştığını inceleyelim.
var TriggerEventClass = function () {
EP.Event.apply(this, arguments);
};
Bu, TriggerEventClass adlı özel bir olay sınıfı tanımlar . EP.Event temel sınıfını genişlettiği için bir olay olarak tanınabilir hale gelir Creative Experience.
TriggerEventClass.prototype = Object.create(EP.Event.prototype);
TriggerEventClass.prototype.constructor = TriggerEventClass;
TriggerEventClass.prototype.type = 'TriggerEventType';
Burada, EP.Event'e dayalı bir nesne prototipi oluşturuyoruz ve özel bir olay türü olan TriggerEventType'ı belirliyoruz .
[...] Önceki blog yazımızda, JavaScript kullanarak bir insanın önceden tanımlanmış bir yolu nasıl takip edeceğini incelemiştik. Eğer kaçırdıysanız, [...]