Hatena::ブログ(Diary)

Android でいろいろやるよ!

2012-05-17

ご意見募集:作り直すとしたら、どんなのがいい?

ここしばらく色々と考えていたのですが、考えがまとまってきました。

実は、QuickTiGame2d を作り直したいと思っています!

作り直すというのは、現在の QuickTiGame2d とは互換性のない API にするということです。たぶんかなり似たものになるとは思いますけど。

どうして作り直したいかというと、次の展開を考えてのことです。

  • 現在の QuickTiGame2d は試行錯誤の塊で、ソースが結構汚いことになっている
  • API に細かな所で不満があり、それを解消しようとすると互換性を失うことになる
  • そして、公式API になってもいいぐらいのクオリティを目指したい(願望です)
  • ついでにTiGame2d という名前に変更して、"ti.game2d"という、まるで公式のようなパッケージ名を勝手に名乗りたい

というようなことを考えてます。

現在のアーリーアダプターの方々には非常に申し訳ないですが、私の twitter やメールなどに寄せられる反響、Appcelerator のプロフェッショナル達からの反響を考えると、今のままではちょっと足りないかもしれないと思っています。

で、作り直したいのですが、そこで皆さんに意見を募集したい!
今なら色々願いが叶うかも!!

ということでご意見ご要望のある方はこちらに書いて頂けるとうれしいです!

http://code.google.com/p/quicktigame2d/issues/detail?id=30

2012-05-14

QuickTiGame2d 1.1: テキスト表示に対応&バグフィックス

Titanium Mobile で動作するゲームエンジンモジュール、QuickTiGame2d 1.1 を公開しました。今回はテキスト表示のサポートと、バグフィックスです!

http://code.google.com/p/quicktigame2d/

モジュール単体でテキスト表示ができるように!


今回のバージョンから、モジュール単体でテキスト表示ができるようになり、テキストもスプライトと同じように扱えるようになりました!

var quicktigame2d = require('com.googlecode.quicktigame2d');
var textsprite = quicktigame2d.createTextSprite({text:'Lorem ipsum dolor sit amet.', fontSize:24});
textsprite.text = "Lorem ipsum Vestibulum rutrum";

ご存じの通り Titanium Mobile には Ti.UI.Label というコンポーネントがあり、今までも QuickTiGame2d でもこれを使ってテキストを表示することができました。しかし Ti.UI コンポーネント群は QuickTiGame2d のスプライトとは違うので QuickTiGame2d のアニメーション効果(Transform)を適用することができませんでした。

今回追加した TextSprite はテキストをスプライトと同じように扱えるようにするもので、これを使ってテキストをアニメーションさせたり、他のスプライトと同期させたりすることができるようになります。

スクリーンサイズの不具合を修正 (iOS)


なんと今まで気がつかなかったのですが、iOS 4 かつ非 retina デバイスの場合に、デフォルトのスクリーンサイズが間違って設定されるという大きな不具合がありました・・・iOS でスクリーンサイズを直指定せずにデフォルトのまま使っている人には影響があるので、注意してください。

var quicktigame2d = require('com.googlecode.quicktigame2d');
var game = quicktigame2d.createGameView();

game.addEventListener('onload', function(e) {
    Ti.API.info(game.screen.width + "x" + game.screen.height);
});

Deviceversion 1.0version 1.1
iPhone, non-retina640x960320x480
iPhone, retina640x960640x960
iPad 2 and older1024×7681024×768
iPad 3rd1024×7682048×1536

そのほか、細々とした不具合修正もいろいろあるので、バージョン 1.0 以前を使っている人はアップデートしてください!

http://code.google.com/p/quicktigame2d/

ソースを公開しています


QuickTiGame2d はバージョン 1.0 からオープンソースになりました。Titanium Mobile 上でゲームを作ろうとされている方はもちろん、カスタムモジュールを作ろうと思っている方も、是非参考にしてください。また、追加機能とか、バグとか発見したら是非パッチを送ってください!

https://github.com/infosia/quicktigame2dmodule

ということで、是非使ってみてください!

2012-05-07

QuickTiGame2d 1.0 公開&ソースも公開!

Titanium Mobile で動作するゲームエンジンモジュール、QuickTiGame2d 1.0 を公開しました!ここ一ヶ月近く Release Candidate と称して細かいバグ修正等を重ねていたわけですが、お待たせしました!

http://code.google.com/p/quicktigame2d/

Titanium 2.0 のサポート、タイルマップサポートの強化など


バージョン 1.0 では Titanium 2.0 のサポートだけでなく、タイルマップのサポート強化が大きいポイントです。次は CityVille や FarmVille に代表される、Isometric と呼ばれる斜め視点のマップと、大戦略などで有名な Hex マップに対応します。

D

ソースを全て公開しています!!


QuickTiGame2d のソース、実は少し前から github に公開していています。Titanium Mobile 上でゲームを作ろうとされている方はもちろん、カスタムモジュールを作ろうと思っている方も、是非参考にしてください。また、追加機能とか、バグとか発見したら是非パッチを送ってください!

https://github.com/infosia/quicktigame2dmodule


ということで、是非使ってみてください!

2012-04-17

QuickTiGame2d 1.0 RC5 を公開しました

本日、Titanium Mobile のメジャーバージョンアップ、バージョン 2.0 が公開されました。それに伴い、QuickTiGame2d もバージョンアップ、Titanium 2.0 に対応した新しいモジュールを公開しました!

http://code.google.com/p/quicktigame2d/

Titanium 2.0 では、ビューのレイアウトに関する大幅な変更があります。

この変更により QuickTiGame2d のコードにも修正が必要です。具体的には以下のようなコードに修正が必要です。

var quicktigame2d = require('com.googlecode.quicktigame2d');
var game = quicktigame2d.createGameView();

game.addEventListener('onload', function(e) {
  Ti.API.info("view size: " + game.width + "x" + game.height);
}

上記のコードは残念ながらうまく動きません。game.width と game.height を明示的に指定しない限り undefined となるはずです。Titanium 2.0 からは size.width, size.height というプロパティが追加されているので、代わりにこれを使用します。

var quicktigame2d = require('com.googlecode.quicktigame2d');
var game = quicktigame2d.createGameView();

game.addEventListener('onload', function(e) {
  Ti.API.info("view size: " + game.size.width + "x" + game.size.height);
}

ということで、Titanium 2.0 に移行した方は QuickTiGame2d のアップデートもお忘れなく!!

2012-04-10

QuickTiGame2d 1.0 に向かって作業中

ごぶさたしてます、前回の更新からかなり時間が空いてしまってますね・・・決して何もしていないわけではなく、QuickTiGame2d の 1.0 リリースに向けて細部のブラッシュアップとより実践的な機能の追加などを行っています。

特に次のリリースではタイルマップのサポート強化が大きいポイントです。次は CityVille や FarmVille に代表される、Isometric と呼ばれる斜め視点のマップと、大戦略などで有名な Hex マップに対応します。

D

今月末には Titanium Mobile のメジャーバージョンアップ、バージョン 2.0 のリリースが控えているということなので、それに合わせてリリースする予定です。