※この手順ではhsp3dishのweb出力のビルドは飛ばしています。
コンパイルに使われるパッケージのインストールコマンド
sudo apt-get update && sudo apt-get install libgtk2.0-dev && sudo apt-get install libglew-dev && sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev && sudo apt-get install libgles2-mesa-dev libegl1-mesa-dev && apt-get install -y libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev
OpenHSPのソースのクローンとコンパイルのコマンド
git clone https://github.com/onitama/OpenHSP.git
cd OpenHSP
OpenGLを使っているソースコードをjetsonにインストールされているバージョンに合わせて書き換える。
vi src/hsp3dish/emscripten/hgiox.cpp
#if defined(HSPLINUX) || defined(HSPEMSCRIPTEN)
#ifdef HSPRASPBIAN
/* #include "bcm_host.h" */
/* #include "GLES/gl.h" */
#include "GL/gl.h"
#include "GL/glut.h"
#include "EGL/egl.h"
#include "EGL/eglext.h"
#include "SDL/SDL.h"
libpngのコンパイルフラグをarm用に合わせる。
vi makefile
CFLAGS_GP = -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPDISHGP -DHSPLINUX -DHSPDEBUG -DPNG_ARM_NEON_OPT=0 -I src/hsp3dish/extlib/src -I src/hsp3dish/extlib/src/glew -I src/hsp3dish/gameplay/src -std=c++11
ビルド
make
サンプルの実行
#echo DISPLAY
#export DISPLAY=:0.0
./hspcmp -d -i -u sample/hsplogo.hsp
cd sample
../hsp3dish hsplogo.ax
その他
.hspファイルのコンパイルシェル
#!/bin/sh
INSTALL_DIR=$(cd $(dirname $0); pwd)
SOURCE_DIR=$(cd $(dirname $1); pwd)
cd ${INSTALL_DIR}
./hspcmp -d -i -u ${SOURCE_DIR}/$1
.axファイル実行シェル
#!/bin/sh
INSTALL_DIR=$(cd $(dirname $0); pwd)
SOURCE_DIR=$(cd $(dirname $1); pwd)
${INSTALL_DIR}/hsp3dish $1
Dockerファイルを作りました。
https://hub.docker.com/repository/docker/sntulix/jetson_nano-openhsp
参考