AIRNovel更新:HTMLレイヤー追加

●リリース Ansan_sdkAndroidChromeOSiPadiPhone全ソース
3.12
* new:HTMLレイヤー追加。レイヤーが一つのブラウザになり、AIRNovelがHTML・JavaScriptと連携できます。
* add:[let_html]追加。HTMLの要素やJavaScript変数を取得する。
* add:[set_html]追加。HTMLの要素やJavaScript変数に設定する。

関連して[add_lay]と[lay]も更新。

使い方の説明が中々高度になりそうなので、この記事は中級~上級者のかた向けです。
使い方のサンプルはこちら
20120130htmlay.jpg

Aタグをボタンにしたもの(青い三つ)は反応悪い気がするので、
ちゃんとbuttonタグ(左上)を使ったほうが良さそうです。
左下の小さい▽はcanvas描画です。



HTMLレイヤーは表ページしか無く、ちょっとしたブラウザのように動作します。
Adobe AIR内蔵のWebkitは、cssもJavaScriptも使えます
AIR に搭載されているWebKit バージョンはこちらに。AIR 3はSafari 5.0.3相当。
WebKitは特注で、一部の機能は使えないがActionScriptの一部APIを呼べたり中々面白そう。

多分これで設定画面とか作れます。
スライダーは[event key=enter_frame]で定期的にJavaScript変数チェックかなと。

Flash vs HTML5なんていうネガキャンが張られていますが、
Adobe AIRは生まれたときからFlashとHTMLを統合する技術です。
非生産的な騒ぎはほっといて、HTML・CSS・JS技術でAIRNovelを遊んでみて下さい。
スポンサーサイト



AIRNovelをGoogle codeで公開

Google codeでもソースファイルやツール群を配布するようにしました。
air-novel - Framework of novel game made ​​by Adobe AIR(Adobe AIR製のノベルゲームフレームワーク) - Google Project Hosting

立ち絵まばたきをswfファイルで

※最新版はAIRNovel 機能ギャラリーで公開中!

tool_face.jpg
 表情差分サンプルに「まばたき」を追加しました。
(さっき更新したので、エラーが出る場合はブラウザキャッシュをクリアして下さい)

 画像ファイル(透過が必要なのでpng)だけで構成した立ち絵は以下のように。一般的な立ち絵ですね。

[fg fn="蓑浦_和装" face="蓑浦_口_開き,蓑浦_眼_半開き,蓑浦_眉_怒り"]


 目だけswfファイル(蓑浦_眼_まばたき.swf)にするにはこのように。

[fg fn="蓑浦_和装" face="蓑浦_口_微笑,蓑浦_眼_まばたき,蓑浦_眉_憂い" time=0]


(time=0 は一瞬で切り替えたかっただけで必須ではないです)

AIRNovelではたいていの場合、png・jpgなどの画像ファイルとswfアニメファイルの区別無く使えます。

 gifアニメみたいですね(gifそのものは未サポート)。画像とFlashの垣根はほぼ無いわけです。
 swfファイルはAdobe Flashやフリーのツールで制作できます。

 あと、まばたき用に手書きで[add_face]設定だけしています。(png・jpgはサンプルで自動出力しています)

[add_face name="蓑浦_眼_まばたき" dx=170 dy=159]


 これで目のパーツの位置を身体画像との相対座標で指定、微調整できます。
 元の目画像の[add_face]とswf作成でずれ方が決まってきますが、この辺は言葉より作ってみて理解した方が良い気がしますので割愛。

AIRNovel更新:[wait_thread](スレッド待機)追加と不具合対応

●リリース Ansan_sdkAndroidChromeOSiPadiPhone全ソース
3.11
* chg:Antビルドファイル(build.p.xml、build.xml)でmxmlc.jarとadt.jarを使用するように。
* chg:iOS・iPhoneサイズ桜を最新AIR 3.1で動くように。
* bug:[for_call]マクロで100回近くループするとスタックオーバーフローが発生する不具合対応。(次の項に続く)
* add:タグ[wait_thread]を追加。スレッド待機する。[for_call]マクロ内で多重ループ時、又は[call]、マクロ多重呼び出し時にスタックオーバーフローを防ぐ用途。
* upd:スワイプをやや検知しやすくTapState.as(67行目)の数値を1024に変更。

 [for_call]マクロでスタックオーバーフロー(Error #1023: Stack overflow)が発生する不具合(100回ぐらいループしないと出ない)あったのが気になってたのですが、ようやく原因特定できて対応しました。(sub.anも少し変更)

 その他は手直し程度の変更です。

 そういえばiOS版で ant ipi ビルドならswfフォントが有効になるが、ant ip ビルドだと有効にならないようです。
 多分もう少し頑張れば ant ip ビルドでフォント組み込みが出来るはず。

(余談:スタックオーバーフローの件)
 ループ中にメモリ関係のAIR/Flashシステム変数を見ると、以下のように変化しました。

(項目)ループ変数、(flash.system.System.)privateMemory、freeMemory、totalMemory、totalMemoryNumber
 privateMemory……アプリケーションで使用されるメモリ量の合計(バイト単位)


[I] 0 18128896 126976:12087296 12087296
[I] 1 18173952 81920:12132352 12132352
[I] 2 18186240 69632:12144640 12144640
[I] 3 18186240 69632:12144640 12144640
[I] 4 18210816 45056:12169216 12169216
  :
[I] 80 19144704 114688:12627968 12627968
[I] 81 19152896 114688:12627968 12627968
[I] 82 19173376 102400:12640256 12640256
[I] 83 19197952 86016:12656640 12656640
[I] 84 19206144 86016:12656640 12656640
 0~99ループが84でエラー停止。明らかにprivateMemoryが増え続けている。

[I] 0 18739200 24576:12054528 12054528
[I] 1 18391040 122880:12087296 12087296
[I] 2 18391040 122880:12087296 12087296
[I] 3 18391040 122880:12087296 12087296
[I] 4 18395136 114688:12095488 12095488
  :
[I] 95 18661376 110592:12361728 12361728
[I] 96 18661376 110592:12361728 12361728
[I] 97 18669568 102400:12369920 12369920
[I] 98 18673664 98304:12374016 12374016
[I] 99 18677760 94208:12378112 12378112
 対応後、0~99ループが完了。波はあるがprivateMemoryに致命的な増加はない。


 対応として、ループ部分で最初に戻る[jump]の直前に以下を追加した。
[wait_thread cond="&for_call_idx[mp:name] % 10 == 9"]
 毎回ウェイトを入れても良いが、処理が遅くなるのでこのように。

AIRNovel更新:[autowc](自動ウェイト)追加と不具合対応

●リリース Ansan_sdkAndroidChromeOSiPadiPhone全ソース
3.10
* bug:[export]のフォルダ指定時にフォルダが存在しない場合エラーで止まる不具合
    例えばセーブを一切していない状態でエクスポートボタンを押すと再現。
* upd:Androidでのタップが認識されにくかった件を修正。スワイプ誤検知されていた。
    変更箇所:TapState.as(67行目)の数値を2048に変更。
* add:特定の文字の直後に自動的にウェイトを入れる[autowc](自動ウェイト)追加。

Android マーケットの「桜の樹の下には」、
Chrome ウェブストア - 桜の樹の下には」も更新しました。

Chrome ウェブストアに125.4 MBの新作「柊鰯」をアップロードしようとしたらサイズ制限に引っかかりました。(動作は問題なし)

エラーが発生しました: アップロードしたパッケージが 100 MB のサイズ制限を超えています。


いつの間にかサイズ制限が 10 MB から 100 MB に増えていたのはいいですが、あともう一息制限緩和して欲しいですね。
本格的なノベルは難しいかもですが、短編やCG集ぐらいなら公開できそうです。
プロフィール

ふぁみべぇ

Author:ふぁみべぇ
 →@famibee
 →メアド(四角を@に)

カテゴリ
リンク
検索フォーム
最新記事
月別アーカイブ