- To be able to run Houdini Engine instance (and be able to perform asset instantiation, cooking, etc.) on an Erlang (as well as Elixir) node.
- Generation of HAPI enum c translation stubs.
- Generation of Erlang enum mappings. Not required?
- Generation of HAPI struct c translation stubs.
- Generation of Erlang records corresponding to HAPI structs.
- Generation of HAPI function c stubs.
- Generation of Erlang function stubs.
- Generation of NIF Export c table.
- Adding tests - Work in progress.
- Working Mac OS X port.
- Working Linux port.
- Working Windows port.
- Adding full Elixir / Mix support.
Documentation generated by erldocs is available here.
- Will build only on Mac OS X right now.
- If you want to build on another platform you will need to patch rebar.config .
- Stubs will theoretically generate on Windows. However rebar.config is missing Windows compilation instructions. So nothing will happen.
- Same with Linux.
- Install latest build of Houdini 14 .
- If you choose to install to a custom location, you may need to patch rebar.config .
- Install Erlang (build it yourself or install pre-built).
- This NIF library relies on enif_schedule_nif, which requires a fairly recent Erlang OTP, for example OTP 17.5 .
- If you choose to install to a custom location, you may need to patch rebar.config .
- Install Rebar (build it yourself or install through something like Homebrew).
- Install Elixir (build it yourself or install through Homebrew or install pre-packaged).
Use Rebar:
rebar get-deps
rebar compile
To clean:
rebar clean
To run tests:
rebar eunit
Run erl:
> code:add_path("ebin").
true
- Binary / String incompatibilities. Need to figure out which parameters are strings and which are byte arrays.
- Distributed under the MS-RL License.
- To further explain the license:
- You cannot re-license any files in this project.
- That is, they must remain under the MS-RL license.
- Any other files you add to this project can be under any license you want.
- You cannot use any of this code in a GPL project.
- Otherwise you are free to do pretty much anything you want with this code.
- This is a personal project. Use at your own risk. No warranties.
- A lot of code is autogenerated and will be cleaned up.
- Please report bugs.