Unreal.js is a plug-in which brings V8-powered Javascript into UnrealEngine.
git clone https://github.com/ncsoft/Unreal.js-core <YourProject>/Plugins/UnrealJS
cd <YourProject>/Plugins/UnrealJS && ./install-v8-libs
Powered by latest V8 (ES6)
CommonJS modules
Full access to the whole UnrealEngine API
Free to subclass existing classes including blueprint
Live reload
Communicate with outer world: REST(http), process(pipe), arraybuffer, ...
Bridge API for editor extension
Auto-completion for Visual Studio Code (auto-generated *.d.ts)
Debugging within Visual Studio, Visual Studio Code, WebStorm and all IDE which supports V8 protocol
Profiling supported by V8
Dedicated Javascript console on UnrealEditor
(Full) access to existing javascript libraries via npm, bower, ...
let myActor = new Actor(GWorld,{X:10,Y:20,Z:30});
myActor.SetActorLocation({X:40,Y:80,Z:120});
class MyActor extends Actor {
properties() {
this.MyProp/*EditAnywhere+Replicated+int*/;
}
RPC(x/*int*/) /*Server+Reliable*/ {
console.log('This function is replicated',this.MyProp++);
}
}
let MyActor_C = require('uclass')()(global,MyActor);
if (GWorld.IsServer()) {
new MyActor_C(GWorld);
}
let _ = require('lodash');
let kick = () => {
console.log("Hello timer!",_.keys(this));
setTimeout(kick,1000);
};
kick();