ver 2.2
1. オートタイルを中心にTileクラス周りが色々バギーだったので調整
2. IE10対応としてサンプルの文字コードをutf8からutf-8に修正
3. document.keyDownからGameRenderer.handler.keyDownに変更。
   またhandlerにtabIndexなどを設定し、マウスクリックなどでフォーカスが当たるように修正。
4. game.focusを追加。またマウス操作でフォーカスが受け取れない不具合を修正
5. [3]の修正によって1ページ複数ゲームを配置し、別々のキーイベントを受け取る処理が可能になったため、「Blogなどにミニゲームとして配置する」サンプルを追加
6. JGUtil.autoStopを追加
7. MapChipを複数Tileで共有しやすいよう、copyChipsなどの機能を追加
8. オートタイルを画面端に置いた場合の挙動を修正
9. drawOptionにpurescaleオプションを追加。サンプルも追加
10.Tile.clearメソッドの第三引数に初期化値を指定可能な形に修正
11.tsc 0.9.1.1に対応
12.requestAnimationFrameの再定義処理をtsc 0.9.1.1向けに調整
13.キーイベント、マウスイベント以外にユーザ定義イベントを作れる形に調整。またユーザ定義イベントのサンプルを追加
14.endCurrentModeのバグ修正。Sceneクラスのテストプログラム追加
15.出力オプションとして--target ES5を追加（出力結果は現状変化無し）
16.動作していないEffectTypeを一部削除
17.Label.getFontSizeとLabel.setFontSizeでboldなどが指定されていた場合にバグる問題を修正
18.Label.getFontFamilyとLabel.setFontFamilyを追加。
19.LabelやMultilineTextの影付け処理をデフォルトでより綺麗に見える形に調整
20.Gameのメインループ異常時間判定を見直し。500ミリ秒で通常更新を諦め、10秒経過または過去時間でゲームのリソースを再生成

ver 2.1
1. Trigger.handleInsertのowner引数を省略可能に修正
2. ScriptResourceLoaderはスクリプトの同時読み込みを取りやめ、事前に指定されたスクリプトの読み込みが終わるまで次のスクリプトは読まない形に修正
   依存ライブラリを事前に読み込む際などに都合が悪かったため
3. メインループのexit判定位置を修正。旧来の位置ではJavaScriptでconfirmなどを表示→_exitフラグを立てる→メインループの最後の一回が実行されるため。
   逆にこの最後の1回を期待して処理を書いている場合には不具合が出る副作用はあるが、修正のメリットの方が大きいと判断。
4. Trigger.fireにおいて、イベントハンドラのコピー処理をfor文によるコピーからArray.concatによるコピーに変更。FireFoxでは2倍程度、Chromeで1.3倍程度速度上昇が見込める模様
5. Layerを継承したクラスをサポートするため、Scene.createLayerの第二引数でLayerのインスタンスを受け取った場合はそのまま使うように変更
6. E.isUpdateとE.reflectedは速度低下するだけなので廃止。直接isUpdatedフィールドを見る形にした
7. JGUtil.intersectで1ピクセル余分に判定していたのを修正
8. E.show、E.hideでupdatedを内部的に呼ぶように修正
9. Tileクラスにclearメソッドを追加。空のマップが作れるように
10. Game.disablePointHandler、Game.disableKeyboardHandlerを追加。enablePointHandlerなどを2回以上呼び出しても平気なようになった他、ゲーム中でキー入力を無効化するなどにも対応
11. Tile.getChipsを追加し、Tileが管理しているマップチップをSprite配列でとれるように。マップエディタなどの用途用
12. Tile.drawChipを追加。今までTileを一箇所でも書き換えるとすべて作り直さないといけなかったが、マップエディタなどの用途には耐えられないためこのメソッドを通して部分書き換えが出来るように。
13. minifiedファイルやd.tsファイルを出力するビルド処理をbuild/以下に生成
14. Timeline.execを廃止。enchant.jsではシノニムを許容しているようだが、jgame.jsでは基本的に同一の意味を持つ別名メソッドは排除する
15. Game.exitを廃止しGame.endに一本化
16. GameTimer.fireイベントのパラメータを直近の経過時間から、GameTimerクラスのインスタンスに修正
17. window.randomインターフェースを削除
18. Tile.refreshでupdatedを行うように修正
19. Trigger.removeでハンドル順が変わる問題を修正。またTriggerのテストプログラムを追加
20. TypeScriptがjsdoc形式のコメントに対応したので、最低限を記述
21. JGUtil.transposeを追加。二次元配列のx, y入れ替え
22. Tile.generateの第二引数または第四引数にtrueを指定するとJGUtil.transposeを呼ぶように修正

ver 2.0
1. inputDown, inputMove, inputUpのみだった入力系イベントをポインティングイベント系のpointDown, pointMove, pointUpとキー系のkeyDown, keyUpに分離
※既存コードかなり修正必要になります。ご利用いただいていた方々にはお手数おかけして申し訳ないです。
2. Sceneごとの入力管理をすることが多そうだったので、SceneにもpointDown, pointMove, pointUp, keyDown, keyUpイベントを追加。
※デフォルトはundefinedなので、これらのイベント利用にはnewが必要
3. ロゴ追加
4. E.scrollプロパティを追加。Layerのx, yを特殊処理してスクロールさせる処理を専用プロパティに移行した事で、小さいサイズのレイヤーをサポート
5. Areaクラスを廃止。CommonAreaに全置換
6. draw系でareaの受け渡しを全面的に廃止
7. Tweenクラスを見直し。サブプロパティを操れるように
8. TimelineクラスにscrollToとscrollByを追加
9． クリッピング領域のサンプル追加。クリッピング機能をエフェクトに使うための内部機能ではなく、正式な機能として扱う形に
10. MultilineText、TextLineInfoクラスを追加し、複数行のテキストをサポート
11. window.getTimeを廃止。ネイティブ関数のperformance.nowを直接呼ぶ形に。（performance.nowが存在しない場合、performance.nowはDate.nowになる）
12. ユニバーサルトランジションをサポート
13. エフェクト関係のサンプルのため、主にユニバーサルトランジションのルール画像をデフォルト素材に追加
14. アドベンチャーゲームのサンプルのため、キャラクターなんとか機で作った画像ファイルをデフォルト素材に追加
15. 複数バージョンのサンプルを共存させるため、仮に以下の環境に2.0系のデモ環境を作成
http://tsuge.sub.jp/jgame.js/dev/2.0
16. Filter.tsをImageFilter.tsに修正
17. ユニバーサルトランジションを利用したエフェクトを追加（ただしEnumでは指定出来ない）
18. Easingクラス、Tweenクラスのeasingフィールドにそれぞれ型情報を追加
19. attachEvent/detachEventのサポートを打ち切り
20. ポイントイベント入力用handlerのdisplayをblockからinline-blockに変更。横幅が余計にあり、ポイントのカットが面倒だったため
21. 実機テストしたところ反応が悪かったので、touch系イベントをサポートしている機種の場合タッチ系イベントを使うよう修正
22. JGUtilクラスにproxy関数を追加、Gameクラスのポイントならびにキーボード処理を通常のメンバ関数に移動
23. performance.nowはブラックベリーなど一部の環境で非常に動作が不安定だったため、Date.now利用に切り替え
    また毎回自分でとるのではなく、requestAnimationFrameの引数を利用する形に修正
    Date.nowはrequestAnimationFrameの引数が存在しない場合か、requestAnimationFrameがない場合にのみ利用
24. ImageDataを直接扱うためのPixelクラスを追加。将来的にモジュールに移す可能性あり
25. Enum型を大文字に統一。また、ほとんどのenum型にUnknownを初期値として追加
26. Characterクラスの下方向移動が、movePixelの値に関わらず64ピクセルに固定になっていた問題を修正
27. Tileクラスで複数マップチップをサポート
28. Tileクラスでオートタイルをサポート
29. CharacterクラスにbeginMoveイベントを追加。移動直前に移動可否を呼び出し元で判断できるように修正
30. Timeline.scrollByが動作していなかったのを修正
31. SpriteにsrcWidth、srcHeightを追加。width, heightの修正で、drawOptionを使わなくてもリサイズが出来るように。
    逆にresizeToといった処理で、元画像の表示範囲を少しずつ拡張する、ということは出来なくなっている。この場合tweenでsrcWidthとsrcHeightを直接いじりつつ、widthとheightも同時にいじらないといけない
32. BufferedRendererのcreateImage、createSpriteにcanvasSize引数を追加
33. Resourceクラスにclearを追加。リソース解放の暫定処置
34. TimelineのscaleTo, scaleBy, resizeTo, resizeByがTypeScriptで記述した際、4つ目の引数を利用できない問題を修正
35. Gameクラスのコンストラクタに可変長引数を追加
36. TweenクラスでFilterの解放処理にバグがあったのを修正
37. universalTwinエフェクトを、フェードインとフェードアウトのエフェクトパターンを逆転させる形に修正
38. ReverseUniversalTransitionをサポート
39. UniversalTransitionならびにReverseUniversalTransitionに差分画像を指定できるよう修正
40. レイヤーの位置を動かしていた場合、BufferedRendererのrenderSceneで正しく描画されない問題を修正
41. Mersenne Twisterによる乱数処理を追加
42. Mersenne Twister導入に伴い、GameクラスにsetSeedとrandomメソッドを追加
    Easing.RANDOMに引数を追加し、Math.randomの利用を取りやめ。
    ImageFilter系のコンストラクタにgame引数を追加（NoiseFilterが乱数を使うため）。
43. GameイベントのenterFrameイベントを廃止。時間制フレームワークとして統一
44. ポイントイベントの座標値算出方法をpageX,pageYからに統一。offsetX/offsetY,layerX/layerYは挙動が少し怪しいため利用中止
45. 入力イベントの発生場所をメインループ内に修正。メインループ内のイベント発生順序は以下の通り
    keyDown/keyUp/pointDown/pointMove/pointUp
    update
    timer
    render
46. preloadでloadingSceneを指定する構造を見直し。LoadingScene.preloadOtherも廃止し、Resource.loadManualに移動
47. GameTimerのtryFireの引数を、これまでの累積ではなくupdateと同じ差分に修正
48. InputPointEventのイベント対象抽出処理を、イベント発生時からイベント発火時に修正。発火時では、リプレイなどで問題になるため
49. Eクラスにopacityフィールド、show/hideメソッドを追加。globalAlphaの操作についてはこちらの通常プロパティに昇格という形。また、合わせて親が半透明な場合、子供すべても半透明になる形に修正。
    従来のものは親が半透明+子が一切半透明ではない場合に子も半透明になったが、子の透明度が操作されている場合親の透明度は無視されていた。
    従来のsetDrawOptionによるglobalAlphaも継続して利用する事は出来て、こちらを使うと親が半透明になると子供も半透明になる、という事はなくなる。
50. 指定漏れが起きやすいため、Eクラスのx, y値のデフォルト値をundefinedから0に変更
51. ResourceStructure機構を導入。デフォルトのimg/やsound/の構成を変更可能なように。
    また.や/、http:などで始まるパスを指定した場合、そのURLを例外としてimg/などのルールを適用しない形に修正。
52. E.append、E.insert、E.removeChild、E.removeDrawOption時に自動でupdatedをかける形に修正
    少しオーバーヘッドがあるが、update漏れが多く現状の作りはデメリットの方が大きいため。
    ただupdatedを利用する形は少しオーバーヘッドが大きいので将来的には見直す可能性あり。
53. UIWindowクラスを追加。またMessageWindowクラスをUIWindowクラスを継承した形に修正
54. 全クラスをjg名前空間内に変更。またこれまでのコードを動作させやすいよう、jg.globalizeを追加
55. Spriteクラスの構造を見直し。これまでのSpriteクラスの役割を担うFrameSpriteクラスを導入し、Spriteクラスを単純化
    Spriteクラスにwidth, heightを指定する必要性が無くなったため、SpriteとCharacterでコンストラクタ引数の順番が変更になってしまっている点に注意
56. 各種サンプルのfps_show内が空だとfps表示前と表示後でマウス座標がずれる。適切なサンプルではなかったため、fps_showにデフォルトでnbspを追加した
57. jg.globalizeをかけた前提の定義ファイルを追加
58. SimpleSoundでwebaudio.d.tsを利用する形式をとりやめ、HTMLAudioElementベースとした。
    これにより、ビルド時にwebaudio.d.tsが不要となったため、libからwebaudio.d.tsを削除

ver 1.1
1. FrameGameサポートを廃止し、jgengineモジュールに移動 (https://github.com/tsugehara/jgengine)
2. TypeScriptのライブラリとして使う構成をlib以下に移動。js以下のjgame.d.tsを削除
3. reamde.txtを追加

ver 1.0
1. ImageFilterによる画像フィルタ機能を追加
2. EffectとEffectSceneによるエフェクト機能を追加
3. SimpleSoundによるサウンド機能を追加
4. BufferedRendererにcreateImage、createSpriteを追加
5. BufferedRendererの内容を直接描けるdrawメソッドを追加
6. EクラスのdrawOptionにglobalCompositeOperationサポートを追加
7. EクラスにImageFilter向けのfilterフィールドを追加
8. Gameクラスにフルスクリーンサポートを追加
9. Gameクラス、Resourceクラスにサウンドリソースサポートを追加
10.Game.preloadArrayを廃止
11.Game.preloadOtherを追加。別フレームワークのpreload処理の読み込み待ちを行うためのメソッド
12.Line、Shapeをマスク化するためのclipフィールドを追加
13.ParallelActionのnext処理に時間経過処理が入っていなかったのを修正
14.Timeline、Tweenクラスにフィルタ操作サポートを追加
15.デフォルトのsoundリソースとして魔王魂さんの音楽を一つ、効果音を二つ追加
16.英語サポートするつもりがないのに怪しい英語で書いてあったため、サンプルを日本語化
17.不足していたサンプル説明文を追加、その他いろいろサンプル追加
18.SimpleSoundビルド用に、webaudio.d.tsを追加
19.WebGL Rendererを検証するため、Gameクラスのconstructorに特殊な引数を渡すとGameRenderer以外のRendererが指定出来るように
20.GameRendererにdisableBg指定による背景色画像生成スキップ処理を追加（WebGL Renderer検証時の残骸）

ver 0.5（非公開）
1. preloadArrayを非推奨に(ver 0.7で廃止予定)。代わりにpreloadを拡張
2. JGUtil.getBrowserを追加。BrowserInfoインターフェースも追加
3. JGUtil.setCrispEdgesを追加。劇的に速くなる事を期待していたのだが、検証した結果効果はいまいちだった。多分座標を常時Math.roundでもした方が効果は高い
→ 参考: http://sourceforge.jp/ticket/browse.php?group_id=8273&tid=30627
4. ResourceクラスをResourceクラスとResourceLoaderに分離。ImageResourceLoaderとScriptResourceLoaderを追加

ver 0.4
1. CharacterFactoryの指定パラメータを動的化
2. FPSの表示負荷が少し高いため、少し負荷を減らした形に修正
3. Game.targetFpsの計算ルーチンを見直し
4. E.orderDrawを追加。このフィールドが存在していれば、render実行前に実行される
5. JGUtil.orderDrawYを追加。E.orderDraw = JGUtil.orderDrawYを実行する事で、y値の高い要素が上に表示される
※毎回並べ替え処理が走る。移動頻度が少ない場合など、移動ごとにこの関数をJGUtil.orderDrawY.call(game.currentScene.root)と実行した方がいい場合もある
6. QUnit導入
7. Lineクラスとサンプルにline.htmlを追加
8. サンプルにorder-draw.htmlを追加
9. 正式にレイヤー以外のEntityに子Entityを追加する機能をサポート。サンプルにchild-entity.htmlとchild-entity2.htmlを追加
10. E.createSpriteを追加。BufferedRendererを意識しなくても、簡単に各種オブジェクトをスプライト化出来るように。
11. E.insertを追加。orderDrawを利用しない場合、表示順を制御するために使えるかも
12. Label.syncronizeとShape.syncronizeを追加。特定オブジェクトの値を自動的に反映させる
13. game.preloadArrayが動作していなかったのを修正。ただ、将来的にpreloadArrayはpreloadに一本化しようかと思う
14. JGUtilにグラデーション、パターンのサポートを追加。サンプルも追加
15. 小さいレイヤーを作れるように修正。ただし既存のスクロール処理がレイヤーの座標をマイナスにすることで成り立っていたためそれのサポートを捨てられず、サイズの違うレイヤーは位置を動かすと思ったように動作しない状態（つまり、まだ実用レベルではない）
 → 多分、この問題はレイヤーをマイナス座標にしてスクロールという現状のメソッドが間違っている。レイヤーをマイナス座標にすれば本来下が切れるべきだったのだが。まだ代替案が浮かばないが、浮かび次第基本的なスクロールの設計から見直した方がいいと思われる
16. TimelineでwaitUntil -> thenの順番の場合、thenが無限ループになる不具合を修正
 → おそらくenchant.js本体にもあるバグ
17. Lineクラスで曲線を含む複雑な図形描画をサポート。またサンプルを追加
18. TimelineクラスにresizeBy, resizeToを追加（リリース時記述漏れ）
19. Timelineクラスにfrmae, fnoを追加（リリース時記述漏れ）
20. Rectangleクラスにwidth, heightメソッドを追加（リリース時記述漏れ）


ver 0.3
1. Game.setBgColorを追加
2. Rectangleクラスに諸々追加してcommon.tsから分離しRectangle.tsに
3. CommonSizeインターフェースのwとhをwidthとheightに修正
 → imageやentityなど、汎用的なクラスも指定可能とするためです
4. CommonAreaインターフェースを追加
5. Sceneクラスのrootフィールドを追加（scene.layers["root"]に対するショートカット）
6. EクラスにgetDistanceメソッドを追加
7. ShapeでShapeTypeがarcの場合のみ中央寄せ表示になっていたのを、他と同じように左上寄せ表示に修正
8. Game.endを追加。現在のシーンを残したまま、強制的にゲームを終了するメソッド
9. TimelineのwaitUntilが動作していなかったのを修正。またwaitUntil内でaction_startを呼ばないよう修正（tl.enchant.jsとの仕様差異）
10. Easing.RANDOMメソッドを追加。ランダムなイージング関数を返す
11. GameクラスにfitToWindow、getWindowSizeメソッドを追加。GameRendererにchangeFrontCanvasSizeメソッドを追加。強制スケールによるウィンドウフィットをサポート
12. CANVASまでをcontainer -> canvasの2層構造から、container -> handler -> canvasの三層構造に変更。containerにスタイルが設定されているとずれるため。
13. JGUtilクラスを追加。追尾処理、距離算出などのユーティリティ関数を格納
14. Resourceクラスに外部javascriptファイル読み込みサポートを追加。現状は拡張子jsの場合、自動的にjavascriptとして取得しにいくのみ。その他は全て画像として取得。このため.jsonのような拡張子の場合はとれない
15. ShapeType.arcの場合に大きさが２倍になる不具合を修正
16. Characterクラスにanimationフィールドを追加。falseにすると足踏みを止める
17. EクラスのgetEntityByPointメソッドにforceパラメータを追加。trueの場合enablePointingEventの設定を無視する
18. CharacterクラスとCharacterFactoryクラスにactionSeqフィールドをオプションで追加。キャラチップの方向順が違う時用


ver 0.2
1. APIリファレンスを追加
2. サンプル拡充
3. BufferedRendererクラス、GameRendererクラスを追加
他。
