Memorandum

自分へのメモ。そして誰かの役に立てば、うれしい。

もくもく会に行ってきました。

今年も残すところあとわずか。

そろそろ何か始めなければいけない。

 

良いきっかけになればと思い「京都Unityもくもく会」に参加させていただきました。

kyotounity.doorkeeper.jp

 

初参加ということでちょっと緊張してしまいましたが、和やかな雰囲気で気さくに話しかけていただいて、良い刺激を受けることができました。

自身がもう少し具体的なプロダクトを持っていると、色々なことを相談できる有意義な場として活用できるだろうな、というのが印象です。

 

まずは、何か一本仕上げる。

今年中になんとか実現したいものです。

 

あ、あと、こちらも参加登録しました。

年末に向けてモチベーションアップしていきたいです。

 

kyoto-gamedevel.doorkeeper.jp

 

iPad用のマップエディタ

iPadで気軽に使えるマップエディタとかあると、カフェとかでポチポチ作業できるのになぁと思ってちょっと調べてみました。

調べたら本家がiPad版出しているようです。
m.youtube.com

動画見る限りかなり便利そうな感じですが、有料のようです。
調べた限り、他にはあまりない感じでした。

Unityの勉強がてら、ちょっと自分で作ってみるのも、面白いかもしれませんね。

HDDをSSDに換装カスタマイズ

私がいつも開発に使っているのは、2011のMacBookPro。

MacBook Pro (15-inch, Early 2011) - 技術仕様

虹がくるくる回ることも多くなってきました。
1年前ぐらいに、メモリ増設(8G→16G)していますが、アプリ起動などももたつく状態が続いていました。

今回のWWDCで新しいMacBookProが発表されたら乗り換えようと思っていましたが、残念ながらハード関連の発表はありませんでした。。。
おそらく、9月くらいに発表されるんだと思いますが、それまでこの状態を続けるのもちょっとしんどい状態です。

なので、かねてより気になっていた、SSDへの換装にチャレンジしました。
選んだSSDは以下です。

あと、

これと

アネックス(ANEX) 精密ドライバー プラス00×50 No.3450

アネックス(ANEX) 精密ドライバー プラス00×50 No.3450


これも、

アネックス(ANEX) ヘクスローブドライバーT型 T6×50 No.6300

アネックス(ANEX) ヘクスローブドライバーT型 T6×50 No.6300

必要です。

手順は、以下のサイトが分かりやすかったです。

moooii.com

上記、サイトを参考に作業開始すること、10分。
換装作業自体はあっさり完了しましたが、Time Machineからの復元に6時間かかりました、、、

で、結果を申しますと、
「もうぜんぜん別物」
です。

店頭で最近のMacBookを触ったときの感触そのもの。
アプリの起動も早いし、この程度の出費でこの快適さを得られるので、コスパは非常に高いです。
SSDの値段も、安くなってきたので、パフォーマンスに不満を持ってる古いMacユーザーの方にはおすすめです!

UnityでのUVスクロール

UnityでUVスクロールをやったので、その備忘録。

1.プロジェクトを作成する

こんな感じのプロジェクトを作成します。
初期状態のプロジェクトにPlaneを追加しただけです。
f:id:Keizi:20160529090602p:plain


2.テクスチャを用意する

スクロールが分かりやすいように、市松模様のテクスチャを準備しました。
f:id:Keizi:20160529092312p:plain:w300


テクスチャのwrap modeを「Repeat」に設定しておきましょう。
f:id:Keizi:20160529091814p:plain


3.マテリアルを作成する

マテリアルを作成して、先ほどのテクスチャをNormalMapに設定します。
f:id:Keizi:20160529092532p:plain

4.スクリプトを作成する

以下のスクリプトをPlaneに追加します。

using UnityEngine;
using System.Collections;

public class ScrollUv : MonoBehaviour {
	public float scrollSpeed = 0.5F;
	public Renderer rend;
	void Start() {
		rend = GetComponent<Renderer>();
	}

	void FixedUpdate() {
		float offset = Time.time * scrollSpeed;
		rend.material.SetTextureOffset("_MainTex", new Vector2(offset, 0));
	}
}

5.こんな感じのアニメーションになります。

f:id:Keizi:20160529093820g:plain

Empty ApplicationからのiOSプログラミング

最近、iOSの基礎から学ぼうと思って、以下の書籍を読んでいます。

iOSプログラミング 第2版

iOSプログラミング 第2版

  • 作者: アーロン・ヒレガス,ジョー・コンウェイ,Aaron Hillegass,Joe Conway,木南英夫,上堀幸代,内橋真吾
  • 出版社/メーカー: ピアソン桐原
  • 発売日: 2011/12/21
  • メディア: 単行本(ソフトカバー)
  • 購入: 11人 クリック: 175回
  • この商品を含むブログ (10件) を見る

この書籍は本当に分かりやすくて、オススメです!

なのですが、ちょっと開発環境が古く、そのままサンプルプログラムを実行することができません。XCode5だと、StoryBoardの使用がデフォルトになってしまって、XIBがプロジェクトファイルに含まれていません。以前は、以下のタイミングで選択できたんですが。。。

f:id:Keizi:20140216163047p:plain

色々とネットを調べてみると、Empty Applicationから追加していくのがよさそうなので、ちょっとそのやり方を纏めてみました。

続きを読む

今年のお礼と来年への豊富

今年も残すところ、あとわずかとなってまいりました。
皆さん、いかがお過ごしでしょうか。

今年は、このブログを本格的に始めて、cocos2d-xについて色々と書かせて頂きました。毎日、10PVぐらいはあって、見に来てくださっている人のためにも、更新を怠らないようにしようという目標で頑張っていましたが、今年後半に入院するという事態が発生し、その後も体調があまり良くなかったため、仕事で手一杯となり、更新することができませんでした。

おかげさまで、体調も良くなってきて、また、Unityなど色々とやりたいことも見えてきたので、来年は、見に来て頂いてる方に少しでも有益な情報を影響できるように、頑張ってブログを更新していこうと思いますので、宜しくお願いします。

皆様、本年もありがとうございました。
来年も宜しくお願いします。良いお年を!!

XCode5とGitHubの始まりの覚え書き

XCode5で作成したプロジェクトをGithubへ登録しようとした時、XCode4とちょっとやり方が変わっていたので、その覚え書きです。

まずは、プロジェクトを作ろう!

まずは、普通にプロジェクトを作成します。ここではノーマルなcocos2d-xのプロジェクトを作成します。
f:id:Keizi:20131014095545p:plain

続きを読む

cocos2d-xでゲームを作ろう! 第十回 キャラクタを動かそう2編

さて、前回は結構自信満々だったんですが、あえなく撃沈。
まぁ、プログラムにバグはつきものということで、調査してみましょう。

コールスタックを確認しよう!

さて、エラーの内容は、以下の箇所の「m_pActionManager」がNULLということなんですが。。。
このCCNodeがどこかで解放されたということでしょうか?

続きを読む

cocos2d-xでゲームを作ろう! 第九回 キャラクタを動かそう編

さて、NPCが複数表示できたところで、前回宣言したように動かしてみようと思います。
さて、どんな感じで動かしましょう?折角、Humanクラスを作成したので、そのメソッドとして「歩き回る」みたなものを作成して、それをコールするようにしてみましょうか。

続きを読む

cocos2d-xでゲームを作ろう! 第八回 キャラクタを増やそう編

今週はDocomoからiPhoneも発売されて、ますますスマフォユーザーの比率が上がってきますね。早くなにかゲーム作ってAppStoreに公開してみたいです!
まっ、その前に勉強、勉強。

クラスを作ろう!

さて、キャラクタ一人ではちょっとさ淋しいので、キャラクタ追加して表示してみようと思います。ただ、今のままだとコードも重複してスゴく見通しが悪いし、拡張性もないですよね。なので、まずは、キャラクタ表示部分をクラス化しましょうー。

続きを読む

cocos2d-xでゲームを作ろう! 第七回 動画アップ編

動画アップのテストとして、最新の状態のものをアップしてみました。
今後はイメージがつきやすいように、出来るだけ動画もいっしょにあげてみようと思いますので、お時間あれば、見ていただけると嬉しいです。


マップスクロールテスト第一回 by びぼうろくお - YouTube

cocos2d-xでゲームを作ろう! 第六回 マップスクロール2編

さて、ちょっと日が開いちゃいましたが、はりきってまいりましょう。

ちなみに、GitHubにコードを登録しましたー。今後はココに修正コードをコミットしていきますので、参考にしてもらえると嬉しいです。
keizi/RPGTest · GitHub

設定する際は、以下のサイトを参考にさせて頂きました。ありがとうございます。
XcodeからGitHubのリポジトリを使う方法 | UQ Times 開発の記録

大変分かりやすくて、なんにも分かっていない自分でも、特にハマる事はありませんでした。これで、XCodeからもコードコミットが簡単にできるし、ソース管理されているとスゴく安心ですね。あと、Gistでコード断片を貼付けていこうと思いますので、少しは見やすくなるかなと思います。

続きを読む

cocos2d-xでゲームを作ろう! 第五回 マップスクロール編

さぁ、今日はいよいよマップをスクロールさせてみたいと思います。

タッチイベントを受けよう!

いままで外部からの入力を全く受け付けなかったのですが、いよいよタッチイベントを受け付けてマップをスクロールさせてみたいと思います。
今のままではタッチイベントを受け付けられないので、まずはタッチイベントを有効にします。

bool HelloWorld::init()
{
    ・・・
    // タッチイベント有効
    this->setTouchMode(kCCTouchesOneByOne);
    this->setTouchEnabled(true);
}
続きを読む

cocos2d-xでゲームを作ろう! 第四回 アニメーション編

さて、前回、スプライトの表示まで行ったわけですが、今回はこのスプライトをアニメーションさせてみようと思います。

CCSpriteFrameに登録しよう

前回、切り出したテクスチャからスプライトへ登録したわけですが、
アニメーションしようとした場合は、「CCSpriteFrame」に変更しないといけません。
なので、まず、前回のコードを「CCSprite」から「CCSpriteFrame」に書き換えます。

    // キャラクタ表示
    CCSpriteFrame* pSpritesCharacter[12]; // スプライトフレームの数
    const int WIDTH_SIZE  = 96;      // 一つのスプライトの幅
    const int HEIGHT_SIZE = 64;      // 一つのスプライトの高さ
    
    //「character.png」からスプライトフレームへの切り出し
    int i=0;
    for (int y=0;y<4; y++) {
        for (int x=0;x<3; x++) {
            CCRect rect(float(x * WIDTH_SIZE),  // X座標
                        float(y * HEIGHT_SIZE), // Y座標
                        float(WIDTH_SIZE),      // 幅
                        float(HEIGHT_SIZE));    // 高さ
            pSpritesCharacter[i++] = CCSpriteFrame::create("character.png", rect);
        }
    }
続きを読む

cocos2d-xでゲームを作ろう! 第三回 キャラクタ表示編

画像を準備しよう

さて、今回はキャラクターの表示を行ってみたいと思います。キャラクターの表示の方法は色々あるみたいですが、今回は一枚のテクスチャに上下左右に歩きのパターンが描かれた以下のテクスチャを使ってみようと思います。ちなみにこれは同僚のサイトから拝借しました。
f:id:Keizi:20130908121317p:plain
おそらくプロパティリストとか用意して、切り出し座標をそちらで管理してってやり方がスマートだと思いますが、今回はゴリゴリごりごりやってしまおうと思います。

続きを読む