SDLベースのプレゼンテーションシステムです。 現時点では未完成部分も多いです
SDLをベースとしたライブラリを主に使用しており、 Windows/Linux/FreeBSD/NetBSD/MacOS Xなど多くのプラットホームでの動作が 確認されています。クロスプラットホーム性も確保されています
描画はOpenGL/SDL共にサポートし、性能と消費リソースのバランスを 選択することができます。
余談ですが、SPSの初期バージョンはNetBSDで開発されました。 その後、メインプラットホームをMacOS Xに移行し、現在は coLinux内のクロスコンパイラ(mingw32)でテストしています。
リソースが潤沢にある環境では可能な限り派手に、制限のある環境では 慎しく、自分のプレゼンを繰返し見ても飽きが来ないようなシステムを 目指しています。
画面遷移(トランジション)部分のモジュール性を高め、自作が手軽に できるようになっています。
SPS自体は、プレゼンテーションのソースとなるファイルの形式を規定していません。 現在は参考実装としてHikiベースの実装を用意しています。
簡単なアダプタを用意することにより、例えば.mgpをSPSで表示といったことも 可能です。
製作当初の考えかたについては 製作当時の日誌が 参考になるかもしれません。
プレゼンソース:
! 前提環境(1) !! SDL !!! スプライトの素 !!! 入出力 !!! イベント !!! スレッド !! SDL_ttf !!! レンダリング
変換されたソース:
sps_beginpage(" 前提環境(1)") sps_beginline() sps_puttext(" 前提環境(1)", 0) sps_endline() sps_moveto(0, 1) sps_puthbar(1) sps_hmargin(3) sps_moveto(0, 2) sps_moveto(0, 2) sps_hmargin(5) sps_beginline() sps_puttext("○ SDL", 1) sps_endline() (長いので略)
実行結果:
前節でうっすらと触れた通り、SPSでは実際にプレゼンテーションを 記述する形式を規定しておらず、ひとつ低いレベルで描画専用指示言語を 規定しています。
SPSにおけるページ記述言語はluaとなっています。プレゼンテーションを Hikiソースとして作成した場合、 そのソースをluaソースにコンパイルし、SPSはそちらを解釈して レンダリングを行うという仕組になっています。
luaの位置付けは、TeX組版におけるDVIのようなイメージが近いかもしれません。
基本的な動作のために必須です。
同上
派手な動作のために必要です。
Windowsバイナリは近日中に用意します。 あるいは↓のリンクのshinhさんのプレゼンテーションをご利用下さい。
src/parser.rb は TAKEUCHI Hitoshi さんによるHikiのソースの一部です。