Tastaturgesteuerte menschliche Bewegung in 3DEXCITE
In der 3DEXCITE Creative Experience können Sie eine Spielfigur entlang eines vordefinierten Pfades bewegen, indem Sie eine Taste auf der Tastatur drücken. Dazu richten wir zunächst das Bewegungsverhalten ein, erstellen anschließend ein Skript für ein Ereignis und konfigurieren schließlich ein Szenario im Storytelling-Bereich. In dieser Anleitung zeigen wir Ihnen Schritt für Schritt, wie Sie die tastaturgesteuerte Bewegung von Spielfiguren in 3DEXCITEund so die Bewegungen Ihrer Akteure präzise steuern können.
Lasst uns den Prozess Schritt für Schritt durchgehen!
Zunächst einmal müssen wir eine menschliche Figur in die Szene einbringen.
Nachdem das menschliche Modell nun implementiert ist, können wir uns auf die Integration von Bewegungsverhalten konzentrieren.
Als Ergebnis wird der Mensch in der Lage sein, sich entsprechend unserem vorgegebenen Ereignis auf einem vorgegebenen Pfad zu bewegen.

Bevor wir uns mit der Ausarbeitung des Bewegungsablaufs befassen, definieren wir zunächst den Pfad, den der Mensch beschreiten wird.
Dieser Pfad dient als Bewegungsführung, wenn das Skript ausgelöst wird.

JavaScript-Techniken für die Tastatureingabe in 3DEXCITE
einrichten, programmierten Akteur der die Tastatureingaben verarbeitet und die Bewegungen des Menschen auslöst.

var TriggerEventClass = function () {
EP.Event.apply(this, arguments);
};
TriggerEventClass.prototype = Object.create(EP.Event.prototype);
TriggerEventClass.prototype.constructor = TriggerEventClass;
TriggerEventClass.prototype.type = 'TriggerEventType';
if (!STU.TriggerEvent) {
STU.TriggerEvent = TriggerEventClass;
}
if (!EP.EventServices.getEventByType(TriggerEventClass.prototype.type)) {
EP.EventServices.registerEvent(TriggerEventClass);
}
beScript.onStart = function () {
// Code, der beim Start des Skripts ausgeführt werden soll.
};
beScript.onStop = function () {
// Code, der ausgeführt wird, wenn die Anwendung beendet wird.
};
beScript.execute = function (context) {
// Wird in jedem Frame ausgeführt.
// 'context.deltaTime' gibt die seit dem letzten Frame verstrichene Zeit an.
};
beScript.onAllKeyboardRelease = function (iEvent) {
// Die folgende Zeile auskommentieren, um Tastenfreigaben zu debuggen.
// console.log(iEvent.key);
if (iEvent.key === this.KeyCode) {
let newEvent = new STU.TriggerEvent();
this.actor.dispatchEvent(newEvent);
}
};
Lassen Sie uns genauer betrachten, was dieses Skript bewirkt und wie es in Creative Experiencefunktioniert.
var TriggerEventClass = function () {
EP.Event.apply(this, arguments);
};
Hiermit wird eine benutzerdefinierte Ereignisklasse namens TriggerEventClass. Sie erweitert die EP.Event Basisklasse Creative Experience.
TriggerEventClass.prototype = Object.create(EP.Event.prototype);
TriggerEventClass.prototype.constructor = TriggerEventClass;
TriggerEventClass.prototype.type = 'TriggerEventType';
Hier erstellen wir einen Objektprototyp basierend auf EP.Event und legen einen benutzerdefinierten Ereignistyp, TriggerEventType.
In unserem vorherigen Blogbeitrag haben wir untersucht, wie man einen Menschen mithilfe von JavaScript einem vordefinierten Pfad folgen lässt. Falls Sie ihn verpasst haben, schauen Sie doch mal rein