2020/01/09(木) [n年前の日記]
#2 [haxe] Haxe + HashLink を試用
Haxe には、Neko という仮想マシン(?)が一緒に用意されている・インストールされるけど。最近は、HashLink なるHaxe用の仮想マシンがあるらしい。
_HashLink - Haxe Virtual Machine
Neko じゃなくて、そちらを使ったほうがいいのだろうか。分からんけど。とりあえず、触ってみるか…。環境は、Windows10 x64 1909 + Haxe 4.0.5。
_HashLink - Haxe Virtual Machine
Neko じゃなくて、そちらを使ったほうがいいのだろうか。分からんけど。とりあえず、触ってみるか…。環境は、Windows10 x64 1909 + Haxe 4.0.5。
◎ HashLinkをインストール。 :
以下を参考にしながら、インストールを試みた。
_HaxeでHashLink/SDLを使ってみる - Qiita
以下から、hl-1.10.0-win.zip を入手。
_Releases - HaxeFoundation/hashlink
解凍して、任意のフォルダに置く。今回は、D:\Dev\hashlink\ というフォルダを作って、その中に入れた。
インストールしたフォルダのパスを、環境変数PATHに追加しておく。
おもむろに、hl.exe を実行してみる。
これで、hl と打てば HashLink が呼び出せる状態になった。
_HaxeでHashLink/SDLを使ってみる - Qiita
以下から、hl-1.10.0-win.zip を入手。
_Releases - HaxeFoundation/hashlink
解凍して、任意のフォルダに置く。今回は、D:\Dev\hashlink\ というフォルダを作って、その中に入れた。
インストールしたフォルダのパスを、環境変数PATHに追加しておく。
おもむろに、hl.exe を実行してみる。
> hl HL/JIT 1.10.0 (c)2015-2019 Haxe Foundation Usage : hl [--debug <port>] [--debug-wait] <file>
これで、hl と打てば HashLink が呼び出せる状態になった。
◎ HashLinkでHelloworld。 :
任意のフォルダを作成して、その中で Helloworld をしてみる。以下の2つのファイルを作成。
src/Main.hx は以下。前述の解説記事のソレをそのままコピペ。
build.hxml は以下。
build.hxml については、以下のページが参考になりそう。
_HashLink - Heaps.io Game Engine
Haxe を使ってコンパイル(?)。
Haxe に build.hxml を渡してやれば、そこで指示された内容でコンパイルされる模様。
binフォルダ以下に helloworld.hl が生成された。HashLink (hl.exe) を使って実行してみる。
一応動いたように見える。
- src/Main.hx
- build.hxml
src/Main.hx は以下。前述の解説記事のソレをそのままコピペ。
package; class Main { static function main() { trace("Hello, World!"); } }
build.hxml は以下。
-cp src -dce full -hl bin/helloworld.hl -main Mainおそらくは、出力先を -hl で指定するのだろう…。今回は、binフォルダ内に helloworld.hl を作れ、と指定。
build.hxml については、以下のページが参考になりそう。
_HashLink - Heaps.io Game Engine
Haxe を使ってコンパイル(?)。
haxe build.hxml
Haxe に build.hxml を渡してやれば、そこで指示された内容でコンパイルされる模様。
binフォルダ以下に helloworld.hl が生成された。HashLink (hl.exe) を使って実行してみる。
> hl bin\helloworld.hl src/Main.hx:7: Hello, World!
一応動いたように見える。
◎ SDLを試す。 :
haxelib を使って、hlsdl をインストール。
任意のフォルダを作成して、以下の2ファイルを作成。
src/Main.hx は以下。
build.hxml は以下。
Haxe を使ってコンパイル。
HashLink (hl.exe) で実行。
真っ白なウインドウが3秒間表示されて、ウインドウが自動で閉じた。どうやら動いてるっぽい。
haxelib install hlsdl
> haxelib list ... hlopenal: [1.5.0] hlsdl: [1.10.0] ..hlsdl と hlopenal がインストールされた。
任意のフォルダを作成して、以下の2ファイルを作成。
- src/Main.hx
- build.hxml
src/Main.hx は以下。
package; import sdl.Sdl; import sdl.Window; class Main { static function main() { Sdl.init(); var mainWindow = new Window("Test", 640, 480); Sdl.delay(3000); mainWindow.destroy(); Sdl.quit(); } }
build.hxml は以下。
-cp src -dce full -lib hlsdl -hl bin/hlsdl_helloworld.hl -main Main-lib hlsdl を書くことで、「hlsdlを使うよ」と指示してる。
Haxe を使ってコンパイル。
haxe build.hxmlbin/hlsdl_helloworld.hl が生成された。
HashLink (hl.exe) で実行。
hl bin\hlsdl_helloworld.hl
真っ白なウインドウが3秒間表示されて、ウインドウが自動で閉じた。どうやら動いてるっぽい。
[ ツッコむ ]
以上です。