HOME > 出版物のアフターケア > OpenGLで作るiPhone SDKゲームプログラミング
OpenGLで作るiPhone SDKゲームプログラミング

- ¥2,940(本体 ¥2,800+税)
- 品種名:書籍
- 発売日:2009/12/18発売
- ページ数:352P
- サイズ・判型:B5変型判
- ISBNコード:978-4-8443-2808-7
- 付録:

- ダウンロードファイル
-
1 本書で解説しているゲームの完成版ソースコードと、それぞれのゲームで利用する画像ファイルやサウンドファイルは、下記のリンクをクリックしてダウンロードしてください。
なお、ダウンロードしたファイルはzip形式で圧縮されています。展開してからご利用ください。
http://www.impressjapan.jp/support/aftercare/download/2808.zip
誤記のためにご迷惑をおかけし、誠に申し訳ございません。
- 153ページ 本文1行目
-
誤 setViewメソッドの中身を実装します。 正 この文は不要です。 - 【 第2刷にて修正 】
- 153ページ ES1Renderer.mmの3行目
-
誤 ...略...
@implementation ES1Renderer
@synthesize
...略...
}
@end正 ...略...
@implementation ES1Renderer
@synthesize glView;
...略...
}
@end - 【 第2刷にて修正 】
|
ソースコードの一部が誤っていました。 |
- 153ページ 本文2行目
-
誤 最後に、EAGLViewの~setViewメソッドを呼び出し、 正 最後に、EAGLViewのinitWithCoder内のES1Rendererを生成している個所でglViewに自身をセットし、 - 【 第2刷にて修正 】
- 164ページ 掲載コードの青字部分の4行目~6行目
-
誤 ...略...
bgm = [[AVAudioPlayer alloc] initWithContentsOfURL:bgmFileUrl
error:nil];
bgm[setNumberOfLoops:-1];
bgm[play];
...略...
正 ...略...
bgmSound = [[AVAudioPlayer alloc] initWithContentsOfURL:bgmFileUrl
error:nil];
[bgmSound setNumberOfLoops:-1];
[bgmSound play];
...略...
- 【 第3刷にて修正 】
|
ソースコード上の表記が一部間違っていました。 |
- 186ページ フェードインの掲載コードの11行目
-
誤 ...略...
//フェードアウトします
alpha = 255 - (int)round(lifePercentage * 2.0f * 255.0f);
...略...正 ...略...
//フェードアウトします
alpha = 255 - (int)round((lifePercentage - 0.5f) * 2.0f * 255.0f);
...略... - 【 第2刷にて修正 】
|
ソースコード上の表記が一部間違っていました。 |
- 188ページ 掲載コードの11行目
-
誤 //1つのパーティクルあたり6頂点×2要素(x,y)×最大のパーティクル数 正 //1つのパーティクルあたり6頂点×2要素(u,v)×最大のパーティクル数
|
ソースコード上の表記が一部間違っていました。 |
- 202ページ ランドスケープモード設定に関する掲載コード(12行目)
-
誤 ...略...
glView.transform = CGAffineTransformConcat(glView.transform, CGAffineTransformMakeRotation(M_PI * 90.0f / 180.0f);
...略...正 ...略...
glView.transform = CGAffineTransformConcat(glView.transform, CGAffineTransformMakeRotation(M_PI * 90.0f / 180.0f));
...略...
|
最後のとじ括弧「)」が抜けていました。 |
- 247ページ ES1Renderer.mmの8行目
-
誤 int currentLapTimeMilliSeconds =
(int)floor((currentGame.currentLapTime * 1000.0f) % 1000;正 int currentLapTimeMilliSeconds =
(int)floor(currentGame.currentLapTime * 1000.0f) % 1000; - 【 第3刷にて修正 】
|
不要な括弧が含まれていました。 |
- 249ページ ES1Renderer.mmの7行目
-
誤 int currentLapTimeMilliSeconds =
(int)floor((currentGame.fastestLapTime * 1000.0f) % 1000;正 int currentLapTimeMilliSeconds =
(int)floor(currentGame.fastestLapTime * 1000.0f) % 1000; - 【 第3刷にて修正 】
|
不要な括弧が含まれていました。 |
- 265ページ graphicUtil.hの2行目
-
誤 #import "ector2D.h" 正 #import "Vector2D.h" - 【 第3刷にて修正 】
|
ソースコード上の表記が一部間違っていました。 |
- 290ページ 5-7-2 外枠との衝突のソースコードの3行目
-
誤 - (void)update{
// ラップタイムを計測します
currentLapTime = (int)floor(-[currentLapStartTime timeIntervalSinceNow]); ←この部分を修正正 この部分の修正は必要ありません。 - 【 第3刷にて修正 】
- 294ページ ES1Renderer.mmの15行目
-
誤 drawCircle(currentGame.tyreBarrier[i]->center,
currentGame.tyreBarrier[i]->radius, 8, 255, 255, 255, 255);正 drawCircle(currentGame.tyreBarrier[i]->center,
8, currentGame.tyreBarrier[i]->radius, 255, 255, 255, 255); - 【 第3刷にて修正 】
|
タイヤバリアの描画部分において、引数の順番が間違っていました。 |
- 325ページ ES1Renderer.mmの14行目
-
誤 drawTyreBarrier(currentGame.tyreBarriers[i]->radius, 0.03f,
tyreTexture, tyreSideTexture);正 drawTyreBarrier(currentGame.tyreBarriers[i]->radius, 0.03f, tyreTexture); - 【 第3刷にて修正 】
|
関数の引数が多い個所がありました。 |



