2013-02-01から1ヶ月間の記事一覧

iPhoneアプリ作成までの道のり2

2. オブジェクト指向を理解する オブジェクト指向の本を読んで、オブジェクト指向の概念だけを勉強するというのは、ひどく退屈なものだ。私は、オブジェクト指向を理解するにあたっては、概念を把握するための読書はほどほどにして、実際にオブジェクト指向…

iPhoneアプリ作成までの道のり1

ことによると、私は来期の新人にObjective-Cを教えることになるかもしれない。たぶん、そんなことはない。私の想像通りに事が進めば、きっとJavaを教えることになる。Javaに関しては、うちの会社にはある程度まともだと思われるカリキュラムが存在するので、…

C言語初心者用スキルチェック

ここのチェック項目の回答例と補足 (リンク先のサイトと私は無関係です。初心者のスキルチェックとしてわりと妥当だと感じたので、引用させてもらっています。) printf関数が何をする関数か知っている。 回答:第二引数以降の引数を第一引数の書式化に従っ…

そうだ、Rubyをやろう(2日目)

まあ、とにかく何か作ってみようじゃないか。 最初なので、題材としては数十行程度で書けるものが良い。う〜ん、そうさね私としては、Rubyをより良いPerlとして使いたいので、なんか適当なテキスト処理をやってみたい気がする。そこで思い立ったのが、前にC+…

そうだ、Rubyをやろう(1日目)

ホワイの(感動的)Rubyガイドは面白い。 本当に。この天才的なドキュメントを電車の中でちょっとずつ読み進めているだけで、なんだかちょっとだけRubyのことが分かったような気分になってくる。今のところ、まだ、網羅的にRubyの世界をくんかくんかしているく…

この技術大丈夫なのか?

OS XでJOGLを使うための環境構築OS X 10.7, JDK 1.6.0 経緯 せっかくOpenGLを多少なりとも使えるようになったから、ちょっと会社のWindows PCの人たちにも簡単なデモアプリを見せてやりたい、と思いました。で、まあ、私は普段OS Xを使っているので、Javaで…

一期一会

いくらプログラミングを学んだとしても、 私の凝り固まった脳ではなかなか出て来ないものは、どうしたってある。偶然出会ったコードたちとの思い出。 int i = 0; // ... i = 1 - i; iの値は0と1を繰り返す。 【応用】 // 以下の変数angleの値を-30〜+30の間…

未定義演算

変数への書き込みをしている式の中で2回以上値を読み取ろうとした場合の動作は未定義。 i++ + i++; v[i] = i++; f(v[i], i++); http://www.libjingu.jp/trans/bs_faq2-j.html#evaluation-order

心得的なものを時々確認しよう

新しいプロジェクトが発足する度に以下を再確認、肝に銘じるプロダクティブ・プログラマより 個人的に重要視していることのまとめ ・車輪の再発明をしない 小人の肩にも乗らない・DRY原則 Don't repeat yourself. 繰り返し作業は極力自動化すること・ホワイ…

OpenGLで作るiPhone SDKゲームプログラミングを読む

OpenGLの個人的学習ログです。 同じ本を読んでいる人や、本の購入を検討している人や、他のOpenGL初学者の方の参考になれば幸いです。OpenGLで作るiPhone SDKゲームプログラミング作者: 横江宗太(株式会社パンカク)出版社/メーカー: インプレス発売日: 2009/…

完走、そして感想

まとめリンクOpenGLで作るiPhone SDKゲームプログラミングOpenGLで作るiPhone SDKゲームプログラミング作者: 横江宗太(株式会社パンカク)出版社/メーカー: インプレス発売日: 2009/12/18メディア: 単行本購入: 18人 クリック: 256回この商品を含むブログ (44…

XFileをやっつけで読み込む

まとめリンクOpenGLで作るiPhone SDKゲームプログラミング - 6章レースゲーム(3D) 6-6 仕上げ ここから先は、「EXERCISE」となっており、「あとは各自サンプルソース見てね」ってことになってます。いよいよ1ヶ月に渡って読み進めてきたこの本も完走間近で…

もっと大量のポリゴンを

まとめリンクOpenGLで作るiPhone SDKゲームプログラミング - 6章レースゲーム(3D) 6-5 車の描画 車のタイヤ部分は、前回のタイヤバリアと全く同じ要領で、VBOを使って実装しました。車のボディ部の座標は、サンプルをダウンロードしたときについてたCSVフ…

(あかん)

まとめリンクOpenGLで作るiPhone SDKゲームプログラミング - 6章レースゲーム(3D) 6-4 頂点バッファオブジェクト ここはちょっと酷い。 執筆者はもう疲れきってしまっています。 一刻も早く本を書き終えたくてしょうがない様子です。 VBOはOpenGLにおいて…

厚みゼロの世界

まとめリンクOpenGLで作るiPhone SDKゲームプログラミング - 6章レースゲーム(3D)そもそも6章自体30ページ程しかないわけだが。 6-3までは3Dの基本的な説明と、今までの2Dゲームの見た目を3Dっぽくするところまで実践しました。 6-1 3Dの基礎 ・正射影 glO…

ゴールは近いぞ

まとめリンクOpenGLで作るiPhone SDKゲームプログラミング - 5章衝突判定と衝突応答第5章では、第4章で作成したレースゲームの基盤を改良して、衝突ロジックを組み込みました。また、マトリクス変換を使って、ユーザー視点を車の向きに合わせて、画面全体を…

rvalue reference

最近になってrvalue referenceというものを知りました。 まだきちんと理解できていない可能性もありますが、一応メモ書き。私は今まで以下のようなオブジェクトそのものを値返却する関数の作成を避けていました。 class A { public: A() : v(1000000) {} std…

衝突応答

まとめリンク難解だった・・・。 たった4行のコードの意味を理解するのにずいぶんと時間をかけてしまいました。OpenGLで作るiPhone SDKゲームプログラミング 第5章 衝突判定と衝突応答 P285衝突応答理論の説明箇所です。 2次元空間において、静止している円o…

EVERNOTEはいいよ

本当にhttp://evernote.com/intl/jp/・なにができるの? 電子版の個人ノートみたいなものです。 高度なリマインダーのクラウドサービスとでも言うべきでしょうか。 ちょっとしたことを何でも書き留めておけます。 複数人で共有するノートを作ることもできま…

そうだ、Rubyをやろう(2回目)

そう言えば、ずいぶん前に・・・あえてリンクは貼らないが、具体的には2012年の10月末頃、 過去の私「そうだ、Rubyを勉強しよう」 ああ、そんなこと言ってたな。あれから3ヶ月以上の月日を経たわけだが、さて・・・。いや、実は・・・そう、Rubyの勉強はして…

C++ではprivateな仮想関数をオーバーライドすることができる

バッドノウハウかもしれないので注意。 一瞬「あれ、おかしい」と思ったのでメモ。 Javaとは違うところ。 派生クラスでのオーバーライドが必要、かつ、派生クラスから直接呼び出す必要のない仮想関数を定義するのには便利かもしれない。 class Parent { publ…

templateクラスのfriend指定は前方参照が必要

通常は、クラスのfriend指定時に、フレンドクラスの実体が存在する必要はない。 class A { friend class B; // OK }; class B {}; templateクラスをfriend指定する場合は前方宣言をしないとコンパイルエラーになる。 class A { friend class B<int>; // Explicit </int>…

あいいーいーいー1394

IEEE1394 アイトリプルイーいちさんきゅうよんと読むそうですよ。コンピュータ用語は難しい。 いや、難しくはないか。 単純に用語が多すぎて覚えるのが大変。 ・Core i7(コアアイセブン) 「こああいなな」じゃないんですね。 だとしたら、IEEE1394は「アイ…

ぶーーーーん

まとめリンクOpenGLで作るiPhone SDKゲームプログラミング - 4章レースゲーム(2D)この第4章では、前のハエたたきと違って、ユーザー操作を主体としたゲームアプリの基盤を作りました。 左下の左右ボタンがハンドル操作、右下のアクセルボタンで加速し、慣…

今はこれが精一杯-5

まとめリンク前回の続きです。長々とリファクタリングを続けてきましたが、だいぶ満足したので、これで最後にして先に進めることにします。せっかくここまでやったので、最後にパーティクルシステムも同じ形式で実装してみたいと思います。パーティクルの細…

今はこれが精一杯-4

まとめリンク前回の続きです。ついに数字テクスチャクラスをリファクタリングする時が来ました。 基盤は既に出来上がっているので、あとは新しい設計に合わせて実装するだけです。 数字描画の基本的な仕様は、以前と同じにします。ただし、せっかくC++で作り…

今はこれが精一杯-3

まとめリンク前回の続きです。ここからが本番。 今度は同じテクスチャで表現可能な複数のオブジェクトをまとめて描画するように設計します。 プログラムの設計 登場人物を3人とします。 Renderer 画面にグラフィックスを描画する部門の責任者。テクスチャを…

今はこれが精一杯-2

まとめリンク前回の続きです。 1枚のテクスチャを使って表示されるオブジェクトが1つだけの場合 例えば、背景とか、レースゲームでユーザーが操作する車とか、そういう単純なパターンも割と多いです。 こういう場合は、前回のTextureDrawerとほぼ同じことを…