「cocos2d for iPhoneレッスンノート」を読んだ

ちょっとゲームが作りたくなったので読んで写経してみたけど、プログラミング初心者向けの本ではなかった。

本書の目的はゲームアプリをつくることで、Objective-Cの言語解説ではありませんし、cocos2dの機能リファレンスでもありません。あくまでもcocos2dをツールとしてつかいこなすためのチュートリアルブックです

ProductName cocos2d for iPhoneレッスンノート
加藤寛人
ラトルズ / 2499円 ( 2011-09-22 )


写経の記録

Objective-Cの本は一冊もっておく必要があるな。

ProductName 詳解 Objective-C 2.0 第3版
荻原 剛志
ソフトバンククリエイティブ / 3990円 ( 2011-12-28 )


それからTitanium Mobileにもゲームエンジンがあるらしいので、簡単なゲーム開発だったらそっちのほうがやりやすいのかなぁ。そっちも期待。

Cocos2dでつくるシューティングゲーム

4章の写経

いきなりテスト用のパーティクルが動かなくてはまったが、fire.pngを用意したら動くようになった。あとは誤植とか、説明をとばしている部分がいくつかあったので、理解度を試されていると捉えてうまくデバッグしていく必要があった。

  • Cocos2Dでの座標の扱い方
  • パーティクルの扱い方
  • サウンドの扱い方

Asteroids

ProductName cocos2d for iPhoneレッスンノート
加藤寛人
ラトルズ / 2499円 ( 2011-09-22 )


誤植とか

  • 早い段階でcannonを動かしたかったらどこかでstartメソッドを呼ぶ
  • p.201 @property (nonatomic, retain)EnemyController *enemyController;
  • p.208 EnemyController.hに定義を書いておく

二郎系無理っすと麻味と水の重要性

初日は船橋行きの乗り換えタイミングで汁なし担々麺を食べるためにちょもらんまという店に入ってみた。

1350379086 1350379088

麻味が効いててうまし、沼津の喰いもんや一歩の麻婆豆腐依頼の麻だわ。かなり満足。

夕飯は519ってとこで。

1350379090

入った瞬間に、危機感を感じたのでつけ麺。

1350379091

でも結局お腹を壊して二日目はレッドブルのみで過ごした。夕飯もチーズつまみながら酒のんで終了。

明日はどこかにいけるかなぁ。

1350379092

美和桜は広島の酒らしい。優しい味わいでひやで飲むのがうまい。

CBI的な

JSBiと合同開催だったので、バイオインフォ系の知り合いと沢山再開して楽しかった。分生ずっといってないからなぁ。バイオマーカーネタで面白そうな話題を教えてもらったので後で調べてみる。

うちの会社の新旧分子設計チームが揃ってた。最近はしょっちゅう会ってる気がするのであまり懐かしさはないんだが面子が固定化してるのは学問自体の衰退期かな?とも思ったりするが、単に停滞期なのかもしれない。サイエンスとしてはブリッジングに向けてもう一押しな気はする。

発表は昨日のADMEの話や、今日のc先生の話、iさんの水の話は面白かった。c先生の講演の後にみんなの気持ちが高まってポスターにピンポイントでワラワラ集まってたのだけど、肝心の演者(学生)がいなくて、ポスターを肴に手持ち無沙汰な皆さんの情報交換のネタにされてた。演者がこっちの方向に進もうと思ってるんだったら機械損失だよなと思ったし、口頭セッションの後に興味をもった人がポスターに向かうという導線は想定範囲内なので、そこは学会のほうで調整してもいいのかなぁと思った。

あとはFMOなんてEC2使って並列でドカーンとやれば費用対効果高そうな気がすんだけど。というかやろうと思いつつもやってないネタです。コンサルも含めてベンチャーとしてどうかな?とか思うんだけどまだ早いかな。

ProductName 薬づくりの真実
Tamas Bartfai
CBI学会 / 3000円 ( 2008-05-30 )


代数に惹かれた数学者たち

Haskellのために数学的な基礎知識を仕入れようと思ったんだけど、歴史物語だった。

こういうの好きな人にはたまらないのかもしれないが。

ProductName 代数に惹かれた数学者たち
ジョン・ダービーシャー
日経BP社 / 2520円 ( 2008-04-03 )


圏論の根底にある思考の一般的な方向

何かの一般原理、「代数的構造物の一般理論」のようなものを引き出して、全ての対象と、これから遭遇するかもしれない他のどんな対象をも、上位にある一組の公理の下にまとめることができるだろうか。つまり、一種の普遍代数にすることができるか

ミミズの秘密に驚いた

図書館で息子に読ませる本をちょこちょこ借りてるんだけど、三歳なので文字少なめ写真多めの生き物系の本が多い。

これがまた新発見が沢山あるので大人でも楽しかったりする。

最近新たに仕入れたネタがミミズ。

ミミズの不思議によると(雌雄同体ってのは知ってたけど)、交尾すると環帯が脱げてそこから新しいミミズが出てくるらしい。

ProductName ミミズの話
エイミィ・ステュワート
飛鳥新社 / 1785円 ( 2010-08-04 )


中尾彬と中尾彬が擦り合わさるとマフラーが外れて、そのマフラーからちっこい中尾彬が出てくるイメージかなぁ。

クライアントサイドMVCのノリでiPhoneアプリをつくる。それがalloy

@k0sukeyに教えてもらったalloyっていうTitanium Mobile用のMVCフレームワークがなかなか面白げなので触ってみた。

backbone.jsを土台にしているそうなので、そこら辺を知っていれば分かりやすいかなと思う。

Quick Startを写経したら10分程度でここまで出来た、すごいラクチンかもしれない!

alloy

注意点(Titanium StudioとNode.js使っている前提で)

  • nodebrewとか使っている場合はplugins/ti.alloy/plugin.pyのguessPathsにパスを追加しておく
  • これみてプラグインを入れておく

静岡 Titanium Mobile もくもく会 #01

というわけで、こういったあたりの内容でもくもく会をやります。

基本はもくもく会(無線LAN完備)なのですが、プロジェクタも用意してあるので、@k0sukeyがalloyのさわりをレクチャーしてくれるかもしれないし、僕(CoffeeScript派)がSpine.jsの布教活動をしているかもしれません。緩い流れで進行していくと思います。

  • Titanium Mobile
  • Alloy
  • Backbone.js(or Spine.js)
  • jQuery Mobile
  • (Cocos2D)

なんかに興味がある方は参加するとハッピーになれるはず。

それから会場の吉原にはB級グルメのつけナポリタンがあるので、変わったつけ麺が食べてみたいという動機でもいいかもしれないですね。

Cocos2dでつくるノベルゲーム

3章を写経してみた。

ProductName cocos2d for iPhoneレッスンノート
加藤寛人
ラトルズ / 2499円 ( 2011-09-22 )


  • NSClassFromStringという便利メソッドがある
  • itemFromNormalImageは廃止されていてitemWithNormalImageになっている
  • CCNodeの初期化処理のやりかた
  • CCSceneは画面表示のルートになれるが、CCLayerはなれない
  • CCSceneは「ゲームの状態」CCLayerは「シーン内の意味のあるまとまり」

次章はボリューム大きめのシューティングゲーム

型の本

ここらへんか?

ProductName Types and Programming Languages
Benjamin C. Pierce
The MIT Press / 6567円 ( 2002-02-01 )


ProductName Advanced Topics in Types and Programming Languages

The MIT Press / 5829円 ( 2004-12-23 )


「関数プログラミング入門 ―Haskellで学ぶ原理と技法―」は予約した

Haskellの入門書に型推論の話題が含まれていないのはなんでだろう?

最近やったことを振り返ってみると

型推論のための知識ばかりじゃないかと。メタな知識がないとまともなコード書けないってことか、コード書くのには必要ない余計な知識を詰め込んだのか(多分前者だと思うけど)。

Haskell の型システムは2つの重要 な特性を発揮します。ひとつめは、正しく型付けされた式はいづれも唯一の主型 (これについては下で説明します)を持つことが保証されるということです。ふた つめはこの主型は自動的に推論できるものであるということです(§4.1.3)。Cのように単 態型を用いる言語と比較すると、多相性のある言語では表現力がアップしている のがわかると思います。型推論機構は、プログラマが型の問題で頭を悩ますこと を軽減してくれます。やさしい Haskell 入門 (バージョン 98 )

結局のところ、型推論機構の知識がないとプログラマが型の問題で頭を悩ますだけで、Haskellの型推論機構の恩恵を受けられないよってことじゃないのかな?と思うのだけど、なぜ入門書にそういう話題が含まれていないのだろうと思った。

あちこち探しまわって断片をかき集めてちょっとづつ理解していくのはちょっとしんどいかも。

僕は楽しかったけど。

ProductName Basic Category Theory for Computer Scientists (Foundations of Computing)
Benjamin C. Pierce
The MIT Press / 2302円 ( 1991-08-07 )


ランク2多相とかランクN多相を理解する

これもわかってしまえば、分かりやすい概念かもしれないが。

GHCが暗黙の量化を行う手順は次のとおり。ユーザが書いた型の最上位(のみ)において、明示的なforallがないなら、またその時に限り、その型で言及されているもののスコープにない型変数を調べ上げ、それらを全称量化する。7.11.5.3. 暗黙の量化

をみると小難しい話なのかな?と思うが、具体例は分かりやすい。

f :: (a -> a) -> Int
         -- は
f :: forall a. (a -> a) -> Int
         -- のことであり
f :: (forall a. a -> a) -> Int
         -- ではない

なんというか数学の定義っぽいことをやっているが、代数的データ型だからそういうもんなんだろう。

ランクとはforallの深さ、つまり括弧のこと(層)のことを言っているわけである。