アプリ置き場

アプリ置き場

http://www.moreread.net/

Xamarin + CocosSharp を使ってみたい ④

我慢できずに中古のMac miniを購入
APPLE Mac mini (2.6GHz Dual Core i5/8GB/1TB/Intel Iris) MGEN2J/A
6万円なり。てか新品でも7万やないか。新品でもよかったな……。
傷もなく良品でテカテカひかってるからまぁいいや。
アルミの削りだしボディはかっこいい。

なにやら画像が乱れて、ジジジッっという異音がしていたが、Thunderboltな口から古いDisplayPort⇔HDMI変換アダプタを経由してディスプレイと接続していたせいかもしれない。しらんけど。HDMIで直接つないだら直ったきがする。
さてもっかいMacをセットアップだ。
 
座標反転
Xamarinを試すまえにC#の標準ライブラリ(と幾何かのWin32API)だけで簡単なアクションゲームを作ってたので移植を試みる。描画まわりはSystem.Drawingだけという男らしい造りだ。
 
とりあえず前回の調査でCCRenderTextureとやらを使えばなんとかなりそうな感触を得ていたのだが、どう考えても描画まわりのロジック全部、Y座標系を逆にするのが面倒すぎる。CocsSharpは左下が基点となる。
いろいろ調べてみたところ、スケールを-1にすればいけそう。
 
Sprite.ScaleY = -1;
 
線描画、矩形描画等はCCRenderTextureにそのまま描画し、画像はYスケールを-1にしてから描画、描画完了したCCRenderTextureをYスケール-1で設置すれば、左上基点の座標系でいける。
 
グラフィックまわりのラッパー的なものをCCRenderTextureを使ってごりごり書いたらなんとなく動いた。Xamarinしゅごい。けど、表示がいろいろおかしい。

 
まず色がおかしかったのだが、CCColor3B、CCColor4Bのコンストラクタの引数の型がfloatで0~1.0ぽい。0~255つっこんだら、もれなく黒か白になってた。ちゃんとByte型のやつもあったのでキャストしたらなおりました。

 
なんかくっそ重いなぁ。大丈夫かなぁ。
画像を切り出して部分描画するところもうまくいってないなぁ。
タッチ入力もよくわからんなぁ。先は長い。