技術ブログ

新米プログラマのメモ帳

キャラクターが動いた

キャラクターの座標を取得して、タッチされているのがキャラクターの左右どちらなのかによって移動する方向を決める。
これだと1回タッチで1動作だから画面を連打しなきゃならない。

auto listener = EventListenerTouchOneByOne::create();
    listener->onTouchBegan = [this](Touch* touch, Event* event){
        //キャラの位置
        Vec2 position = _player->getPosition();
        
        if(touch->getLocation().x > position.x){
            //RIGHT
            Vec2  Position =  position + cocos2d::Vec2(20,0);
            _player->setPosition(Position);
            
        } else if (touch->getLocation().x < position.x){
            //LEFT
            Vec2  Position = position - cocos2d::Vec2(20,0);
            _player->setPosition(Position);
        
        }
        return true;
    };

更新再開

GGJ2015お疲れさまでした!!
作って数回更新されただけだったはてなブログですが、GGJで意識が高まったので進捗報告やメモ帳としてまた更新していこうかなと思います…!

この本を読んで作っています

@giginetさんの本を参考にして作っています。
環境構築さえできれば、フルカラーで説明も丁寧なので私みたいな初心者でも頑張れそうです。

メモ帳まとめ<その2>―オブジェクト指向とは

それでは、オブジェクト指向とはどのようなものかをまとめてみる。

 オブジェクト指向型言語にはクラス(設計図)があり、その中にデータ(変数)とメソッド(手続き)が含まれている。

 

 

私がイメージしやすいと思ったのはクッキーの例である。

「クッキーの型」がクラスで、「クッキー」がインスタンス(実体)と考えることができる。クッキーの型(設計図)は、決してクッキー(実体)にはなれない。

 

そして、ここで重要になるのはクッキーの型を使って同じ形のクッキーを作ることは、なにも同じ形のクッキーを食べたいからではない。

元の形は同じでも、クッキー一つ一つに違いを持たせたいから。

このデコレーションにあたる部分がデータやメソッドのようなものである。(私の感覚なので、この捉え方は正確でない。)

f:id:tb_uo:20130617005148j:plain

 

 

 

ここまで、大まかにオブジェクト指向とはなにかをまとめた。しかし、多くの場合クッキーではなく「犬」などで説明されることが多く、そちらの方が正確であると思った。

次の記事では、オブジェクト指向を構成する概念の一つである継承についてまとめる。

メモ帳まとめ<その1>―ゲームの構造

自分の頭の中を整理するためにメモ帳に書いてあることをまとめてみる。

 

まずは、言葉の意味

●60fps(frame per second)→1秒間の動画に60枚の静止画を使う。

●コールバック関数→呼び出し先の関数の実行中に実行されるようにあらかじめ指定しておく関数。

 

これらを踏まえたうえで、ゲームは大雑把に言うと下の図のような構造でできている。(プログラムは1秒間に60回フレームを読み込んでいる。)f:id:tb_uo:20130615064705p:plain

メインの処理をプログラムで行い、画面の配置やセリフを表示したりという細かいものはスクリプトで行う。また、 この構造は私が参加するプロジェクト内のもので、すべてに当てはまるものではない。

 

ここまで、ざっくりとしたゲームの構造をまとめてみた。

 この次の記事ではオブジェクト指向とはどのようなものかをまとめる。