iPhoneゲーム開発本 iPhone Games Projects
iPhone Games Projects、ようやくざっと読んだので内容をまとめてみる。
出版元のApress のページはこちら。
世界中のiPhoneプログラマが、iPhoneゲームプログラミングに関して、さまざまな視点から語った本。著者達はApple II時代からゲームを作っていたやNewton向けにゲームを作っていた人など、経歴が長い人が多い。おそらくその世界では有名な人たちなのだろう。含蓄深いコメントが多かった。
まだ翻訳本はでていないので、原書をAmazonで購入した。Prime会員なのでその日のうちに届き、洋書が即日買えるようになったことに感銘を受けた。
1章 Simplify the User Interface for Complex Games:Chess, the Deep Green Way
Newton 向けにチェスアプリを作っていたデンマークのJoahim Bondo氏が、いかにしてシンプルなUIを実現するかに関して語った章。コードは出てこない。例として、著者がNewton時代に作っていたチェスアプリをiPhone用に作り直した、Deep Green が使われている。
product statement を書き、それに従い機能を重要度で分類し、画面をシンプルにする、ユーザが使う頻度が高い機能の使い勝手にこだわる、画面に使用頻度の低いUI部品がないことで使いやすくなる(The power is in what’s not there)、などが書かれていた。
ちなみにDeep Greenのグラフィックを担当したのは Mikio Inose 氏、と書かれていたので調べてみたらページを発見した。
2章 Responsive Social Gaming with RESTful Web Services
RESTを使ってサーバーと情報をやりとりする方法がコードを使って詳しく紹介されている。サンプルはゲームのハイスコアのサーバへの登録。
サーバー側はRuby on Railsを使う方法が紹介されている。LeopardにはRailsもSQLite 3も入っているらしいのでこの説明のまますぐ動かせるらしい。
NSURL, NSURLRequest, NSURLConnection を使った、サーバとのデータのやりとりの方法が詳しく紹介されている。XMLのパースにはNSXMLParserが使われている。
自分はSAXタイプのXMLパーサーは使ったことがなかったので、参考になった。iPhoneでサーバから何かデータをダウンロードしたい、という時には役に立ちそう。
3章 Rapid Game Development Using (Mostly) Standard C
OpenGL ESを使い、Objective-Cを使わずほとんどStandard Cで書く方法の紹介。基本的には毎フレームで呼ばれるrenderSceneで描画、タッチのハンドルを行う。
もちろん、Objective-Cが必要な箇所もあるので、 また、自動セーブの方法も紹介している。こちらは普通にUserDefaultを使う方法に見えた。
サンプルはSpace Hike (StarTrekのもじりらしい)というアプリで、ソースもアプリも公開されている。
4章 Brian Greenstone’s Jedi Master List for Game Optimization
著者は1980年、Apple ][+(と表記されていた)からのプログラマ。Enigmo, Nanosaur, Bugdom 2などを開発した。
著者は64KB RAM, 8bit 1MHz CPUの時代からのプログラマで、出力されるアセンブラコードを意識して書いていた人なので、基本的にゲームを書きたければ Straight CかC++を使え、Objective-Cは使うな、主張している(開発者の主義主張の話になるのでこのアドバイスに従うかはあなたに任せる、とも書いてある。さらに、著者はC++ではなくCを使おう、とも言っている)。
Bugdom 2の50万行のうち、C++は0行、Objective-Cは700行しか使っていないとのこと。 著者としてはもちろんCocoaではなくCore Foundationを使う。
その他、コンパイルオプションの Compile for Thumb はゲームによってはOffにしろ、Audio再生は重い、サウンド再生につかう音声データはこうやって作れ、など具体的なアドバイスが多かった。
afconvert -f caff -d LEI16 INPUT_FILE OUTPUT_FILE で CAFFファイル(Core Audio FIle Format)のファイルが作成できる。
Instruments, Shark の使い方も紹介されていた。Shark は自分はこの本で初めて知った。
5章 Starting with a Game Design Document: A Methodology for Success
ゲームを開発する際のドキュメントの書き方を紹介した章。
開発を効率よく行うために、ドキュメントを書こう、というように読めた。
ちなみにGame System/Engine として、5つあげられていたが、知らないものが多かった。
紹介されていたのは、次の5つ。Torque, cocos2d, Unity, SIO2 Interactive, Oolong
6章 Multiplatform Game Development: iPhone Games for Linux and Windows
なるべく同じコードを使って、Linux, Mac, Windowsで動くゲームを作ろう、という記事。
Portableであるために、Objective-Cは使わないことになる。
シンプルなループを使ってゲームを実現する。
7章 Code Optimization with Mike Lee, the “World’s Toughest Programmer”
Delicious MonsterのMike Leeによる章。
ちゃんと読んでいないけれども、炎のParticle Effectsや煙のParticle Effectsを紹介しているように見えた。
ここでも、ビルド設定やコードの書き方による最適化、Sharkによる最適化が紹介されている。
8章 Networked Games: Choosing the Right Option
Quick Draw, Pole2Pole というネットワーク越しにコミュニケーションするゲームを作った、UKの Swipe Interactiveの2人による章。
Socket, Bonjour を使った、ローカルネットワーキングによるマルチユーザゲームの作り方(の要素技術)が紹介されていた。
全体的に、この本でしか得られないと思われる知識も多く、iPhoneで動くゲームを作りたければ、英語に多少苦労しても読んでおいても良いのではと感じた。
英文も、ゲーム開発者に対して語りかける口調のものが多く、読みやすかった。ゲームが好きなことが伝わってきた。
ゲーム開発はCPUもメモリもシビアなので、性能にダイレクトに影響するところではObjective-C を使わない、という選択をしている人もいることを知った。
その代わり、Objective-Cでサポートされている便利な機能は使えなくなるので、そこはトレードオフになる。
Apress.com はすごい勢いでiPhone関連の本を出版しているらしく、ゲーム関係ではBeginning iPhone Games Developmentという本も出るようだ。この本で第2章を担当している人が書いている。
次はiPhone Cool Projectsか、iPhone Advanced Projects を読むのがよいのだろうか。
iPhone User Interface Design Projectsも気になる。
更新履歴
4章の記述を変更。アプリへのリンクを追加。
iPhone Games Projects | |
![]() |
Apress 2009-06-22 売り上げランキング : 11531 by G-Tools |
関連記事
-
-
MacFan 2019年11月号購入
毎年この時期は必ず Mac雑誌を買っている。発売されたばかりのiPhone情報が特集されるためだ。
-
-
iPhoneアプリ 「リズムくん」 Ver.1.1 アップデート
リズムくん Ver.1.0ではまずは8分音符までの問題でリリースしてみましたが、やはりより難しい問題
-
-
iOS7 から導入されるキッズカテゴリーにアプリを載せるための作業をしてみる
News and Announcements for Apple Developers でア
-
-
Photoshop のバッチ処理でiOSアプリアイコンを一括作成する
毎回苦労しているiOSのアプリアイコン作成。今回はPhotoshopのバッチで作成してみる。前回は
-
-
ARM付き基板本 トランジスタ技術増刊 ARMマイコンパーフェクト学習基板 2010年 09月号
こんな楽しそうな本があるとは。基板付きでこんな値段で買えるんですなあ。買ってみよう。 こちらで教え
-
-
Apple Developer Program更新2019
今年も更新。税別 11800円だった。 2009年から継続しているようだ。もう11回
-
-
[iOS SDK] WatchKitでできることできないこと 2015年3月
Apple Watch発売日(2015年4月24日)までに自作アプリの WatchKit対応
-
-
[iPhone 開発本] iPhone Advanced Projects がおもしろい
Apressのページはこちら。公開されているサンプルコードは43MBもある。
-
-
これは楽しそう。ズボンでドラム演奏 DRUMPANTS
こんな楽しげなデバイスが2014年にKickstarterにでていたらしい。 新しい楽器?ドラムを
-
-
2009年11月発売のiPhone SDK関連書籍
11月も良さそうなiPhone SDK本が次々と発売される。 Mac OS X Cocoa プログラ
Comment
[…] 以前紹介した、iPhone Games Projects の翻訳本「iPhoneゲーム開発ワークショップ」が2009/11/27(金)に発売されるらしい。 […]