LoginSignup
3
3

More than 5 years have passed since last update.

即売会サービスを作ろう10(AndEngine編)

Posted at

Screenshot_2014-05-31-19-45-16.png

今回はAndEngineを組み込んでクォータービューでサーバから取得した情報どおりに床をレンダリングするようにしました。
https://github.com/nagai/freemarket/tree/20140517

クォータービューについて

名称未設定 1.png

今回のアプリはプログラム内部では昔のドラクエのようなトップビューで管理していて
レンダリングする直前にクォータービューに変換してます。

トップビューからクォータービューへ変換および、クォータービューからトップビューへ変換は以下のように実装してます

        // トップビューからクォータービューへ座標変換する
        // →↓ にx,yが増えていく座標系
        // 右上,右下にx,y が増えていく座標系
        public static Point convertQuarterViewFromTopView( Point top ){ 
            Point q = new Point();

            q.x = (top.x + top.y);
            q.y = (-top.x + top.y)/2;

            return q;
        }

        public static Point convertTopViewFromQuarterView( Point q ){   
            Point top = new Point();

            top.x = q.x/2 - q.y;
            top.y = q.x/2 + q.y;

            return top;
        }  

どうやってこの式になったかといえば、トップビューのチップとクォータービューのチップは変換できるわけで
クォータービューのチップの頂点座標からクォータービューの四隅になるように導いてます。
行列、三角関数をつかってもできますが今回はわりと強引にやりました。

次回はフリックでホールのスクロールができるようにします。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3