Haxe IRCチャンネルで議論した問題が発生しましたが、修正がありませんでした。これはコンパイラのバグのようです。ここで
は、haXeのコードです:
package;
import js.Lib;
import js.three.Three;
import haxe.Timer;
class Main {
public var timer:Timer;
public var renderer:WebGLRenderer;
public var scene:Scene;
public var camera:PerspectiveCamera;
public function new() {
timer = new Timer(30);
var w = Lib.window.innerWidth;
var h = Lib.window.innerHeight;
scene = new Scene();
// create a red cube
var material = new MeshLambertMaterial({color:0xff0000});
var geometry = new CubeGeometry(50, 50, 50, 1, 1, 1, material, null);
var cube = new Mesh(geometry, new MeshFaceMaterial());
cube.position.set(0, 100, 0);
scene.add(cube);
// add some light
var pointLight = new PointLight(0xffffff, 1, 0);
pointLight.position.set(10, 50, 130);
scene.add(pointLight);
// and a camera
camera = new PerspectiveCamera(70, w/h, 1, 1000);
camera.position.z = 500;
scene.add(camera);
// setup renderer in the document
renderer = new WebGLRenderer(null);
renderer.setSize(w, h);
Lib.document.body.appendChild(renderer.domElement);
untyped Lib.window.onload = onLoad;
}
public function onLoad() {
timer.run = function(){
renderer.render(scene, camera, null, null);
}
}
public static function main() {
new Main();
}
}
ソリューションは、作成JSファイルの先頭に以下を追加するようにコンパイラを取得することです。
var $_, $hxClasses = $hxClasses || {},
それが今のJSファイルの最初の行を現状では、このまたはその行に追加すること以外の周りの可能な仕事を修正するために何をすべきか、この
$estr = function() { return js.Boot.__string_rec(this,''); }
わからないように見えますコンパイル後に手で?
問題はhaxe.Timerクラスにあります。機能しない例 - http://pastebin.com/AxXF0CwC –
申し訳ありませんが、私はまだ仕事中です。私が言っていることは、Timerをインポートしてthree.jsライブラリでコンパイルすると、あなたのコードに何もないことです。それはそこにあります。 –
これは逆も同様です。 –