HSP : HSP3Dish / onion software 2012(c)

タイトル

HSP3Dish iOS版プログラミングガイド

  1. iOS版 HSP3Dish概要
  2. 環境の準備
  3. サンプルプロジェクト
  4. スクリプトの準備
  5. XCode4プロジェクトの作成
  6. HSP3Dish関連ファイルの登録
  7. HSP3Dishの実行と設定
  8. iHSP11の更新
  9. iHSP12の更新
  10. iHSP13の更新
  11. iHSP14の更新
  12. iHSP15の更新(new)
  13. iOS版の注意事項、制限
  14. iOS版の更新予定

iOS版 HSP3Dish概要

iOS版 HSP3Dishは、iOS搭載機種(iPhoneシリーズ,iPadシリーズ,iPod Touch)上で動作するHSP3Dishのランタイムです。 Windows版 HSP3Dishがサポートする機能をiOS上で再現することが可能です。 (iOS版 HSP3Dishは、Windows版のスクリプトを実行させることを目的としており、HSP3開発システムそのものをiOS上で再現するものではありません。)
このマニュアルでは、iOS版の利用方法、注意点などを説明していきます。

環境の準備

現状ではiPhone/iPadの実機上で動作させるためには、MacOSX環境及び開発ツールXcode、iOS Developer Program(有償)が必要になります。
ここまでに必要なプロセスは、通常のiPhone/iPadの開発と変わりません。詳しくは、iOS Developer Programのホームページなど各種資料を参照してください。

	iOS Developer Program
	http://developer.apple.com/jp/programs/ios/
	

このドキュメントでは、Xcode4.2以降が実際に動作し、iPhone/iPadの実機にプログラムが転送できることを前提として、HSP3Dishの導入方法を解説します。 それまでの準備については、既存のマニュアル等をご覧ください。
使用するターゲットSDKのバージョンは、4.3以降を想定しています。

サンプルプロジェクト

iOSフォルダには、HSP3Dishランタイム及びxcode用のサンプルプロジェクトが含まれています。


すべてのフォルダをOSX上にコピーした後、プロジェクトファイル(.xcodeproj)を開いてビルドすることができます。 (実際にiOSデバイス上で動作させるためには、iOS Developer Programの登録が必要になります)

スクリプトの準備

iOS上でスクリプトを動作させる場合には、最初にWindows上でスクリプトをCソースコードに変換します。 スクリプトエディタの、「ツール」メニューから「指定ファイルをCソースに変換」メニューを選択してください。 ツールの画面が起動するので、block3のスクリプトを指定して「変換」ボタンを押してください。 この時、「出力ソースをUTF-8に変換」のチェックをONにしておくのを忘れないでください。
※HSP3.3フォルダにある、hsp3cnv.exe(HSP3ソースコンバーター)を最新版にするのを忘れないでください。最新版はHSP3Dish(このアーカイブ)に同梱されています。


正常に終了するとスクリプトと同じフォルダに拡張子が.cppのCソースファイルが作成されます。 これでスクリプトの準備は完了です。

XCode4プロジェクトの作成

OSX上でXcode4を起動して新規プロジェクト(Create a new Xcode project)を選択します。 テンプレートの選択画面になりますので、「iOS Application」の「Empty Application」を選び「Next」を押してください。


オプション画面で、製品名(Product Name)入力します。
識別子(Company Identifier)は、作成者を識別する名前(メーカー名など)を入力します。
Class Prefixは空欄にしておいて構いません。 Device FamilyはiPhoneに設定し、3つのチェックボックスは、基本的には外しておいて下さい。


次に、プロジェクトのフォルダを作成する場所を設定します。これは任意の場所を指定して構いません。
正常にプロジェクトが作成されると、開発環境(IDE)が起動します。
メインウィンドウにプロジェクトの概要(Summary)が表示されるはずです。


デフォルトで、Deployment Target(対応OSのバージョン)が5.0に設定されているので、 幅広いターゲットでも動作するよう、OS4.3以降に下げておくことを推奨します。

HSP3Dish関連ファイルの登録

作成されたプロジェクトのフォルダと同じ階層に、「iHSP15」フォルダを配置してください。 「iHSPxx」フォルダはアーカイブ内のiOSフォルダに同梱されています。


XCode上でプロジェクトに必要なファイルを追加してください。
Fileメニューから、「Add Files to〜」を選択し、「iHSP15」のフォルダ(下層も含む)を追加(Add)します。
さらに、Windows上で作成されたCソースファイル(拡張子が.cppのファイル)を追加(Add)します。

続いて、プロジェクトにフレームワークの追加を行ないます。以下のフレームワークを追加してください。

フレームワークの追加は、プロジェクトの「Summary」タブの「Linked Frameworks and Libraries」項目の「+」ボタンで行なうことができます。
正常に追加されると、ファイルナビゲーターは以下のような状態になります。


必要に応じて、プロジェクトのSupporting Files内にある、[プロジェクト名]-info.plistファイルにフルスクリーンの設定を追加します。


アイコンやデータファイル(画像やサウンド)がある場合は、「resource」フォルダを作成してプロジェクトに追加(Add)してください。


パッケージに含まれるPNGファイルの最適化(圧縮)を無効にします。これは、HSPが外部のPNG読み込みライブラリを使用するために必要な設定です。



以上で、hsp3dishのビルドを行なう環境が整いました。

HSP3Dishの実行と設定

実際にHSP3Dishを実行させる場合は、HSPランタイムの初期化コードをAppDelegateに組み込む必要があります。 プロジェクトの作成時に自動的に生成される、AppDelegate.mファイルをエディタで開き編集します。



冒頭の「#import "AppDelegate.h"」の下に以下のコードを追加してください。
(「iHSP15」への相対パス指定によりクラス宣言を読み込んでいます)

	    #import "../../iHSP15/Classes/HspView.h"
	

次に「- (BOOL)application:〜{」のあるブロック内の「// Override point for customization after application launch.」行の直前に以下のコードを追加してください。
(HSPの実行を行なうHspViewクラスを生成しウィンドウに設定しています)

	    //ビューの生成と追加
	    HspView* view=[[HspView alloc] initWithFrame:CGRectMake(0,0,320,480)];
	    [view startFrame:60];
	    [view clsMode:1 color:0xffffff];
	    [self.window addSubview:view];
	    [view release];
	

さらに「self.window.backgroundColor =」のある行頭に「//」を追加してコードを無効にします。

	    // Override point for customization after application launch.
	    //self.window.backgroundColor = [UIColor whiteColor];
	
以下のようなコードになっているか確認してみてください。


HSPランタイムを組み込む追加コードにより、いくつかの設定を行なうことができます。

	    HspView* view=[[HspView alloc] initWithFrame:CGRectMake(0,0,320,480)];
	

この設定により、左上(0,0)から(320,480)の範囲を描画フレームとしています。 320×480は、iPhone 3GSの設定に合わせてありますが、iPadなど他の解像度を利用する場合はこの値を変更する必要があります。

	    [view startFrame:60];
	

この設定により、タスクが実行されるフレームレートをコントロールすることができます。 通常は、60を指定することにより秒間60フレーム(fps)となっていますが、この値を変更することができます。 通常のHSPとは異なり、iOS版のHSP3Dishでは指定されたフレームレートを単位として実行を行なっています。 高いフレームレートを指定することも可能ですが、CPUにかかる負荷はバッテリー消費に影響がありますので、 できる限り抑えた値にしておくことを推奨しています。

	    [view clsMode:1 color:0xffffff];
	

この設定により、「redraw 0」による描画開始時に画面をクリア(消去)するかどうかを変更できます。 デフォルトの設定では、クリアは有効に、背景色は白(0xffffff)が指定されています。
「clsMode:0」にした場合は画面のクリアは行なわれませんので、自前でクリアする必要があります。 (自前で画面クリアを行なう場合に、重複してクリアすることを避けるためのオプション設定になっています。)
「color:0xffffff」は、クリアする色を指定するもので16進数によりRGBのコードを記述します。

タスク切替時には、HSPの実行を停止し処理を軽減させることを推奨します。 作成した「AppDelegate.m」ファイルの、applicationWillResignActive内に以下を追加してください。

	    HspView* view =(HspView*)[self.window.subviews objectAtIndex:0];
	    [view actMode:0];
	

次に、applicationDidBecomeActiveに以下のコードを追加してください。

	    HspView* view =(HspView*)[self.window.subviews objectAtIndex:0];
	    [view actMode:1];
	

既にサンプルには、これらのコードが含まれています。 iOSフォルダに含まれているAppDelegate.mファイルを上書きして頂いても構いません。

適切に設定を行なった上で、「Run」ボタンでビルド実行を行なってください。 HSP3Dishで作成したスクリプトが実行されるはずです。

新規プロジェクトを作成した場合は、デフォルトでビルドスキームがDebugになっています。 ProductメニューのEdit Scheme...の設定で、Build Configurationを「Release」に変更することで、最適化されたコードが出力され、より高速に実行されます。


iHSP11の更新

iOS版ランタイムver1.1から、以下の機能が追加されています。

iHSP12の更新

iOS版ランタイムver1.2では大幅な機能の追加は行なっていません。 hsp3cnvの更新に伴う対応により、スクリプト変換時の互換性が向上しています。

iHSP13の更新

iOS版ランタイムver1.3では以下の更新を行なっています。

iHSP14の更新

iOS版ランタイムver1.4では以下の更新を行なっています。

iHSP15の更新

iOS版ランタイムver1.5では以下の更新を行なっています。

iOS版の注意事項、制限

iOS版の更新予定

以下の機能は今後、上から順に高い優先度で追加される予定です。

バージョンアップの告知は、HSPオフィシャルサイトHSPTV!にて行なわれますので、随時ご確認ください。

ONION software