dev

迷いつつ漸進(ふて9)

dev

今週の開発時間は5時間でした。 分かってないよsvn!!(私が) とにかく使い方がよく分かっていなかったのでsvnのレポジトリを作り直しました。履歴は完全に消えましたがまだダメージは少ないです。 レポジトリの作成 既に作成していたディレクトリを作成したレ…

やっぱり迷っているぞ(ふて8)

dev

先週の状況です。格闘時間は2.5時間でした。なかなか先に進みませんね… glutでウィンドウサイズを固定する どうやらglutにはウィンドウサイズを固定する方法がないみたいなので、ウィンドウサイズ変更のコールバックに対して強制的に元のサイズに戻す処理を…

進んでるような迷ってるような(ふて7)

dev

代替assert assert()の発生でスタックが見えなくなる問題が良く分からないので、 void MyAssert() { ::DebugBreak(); } #define MY_ASSERT(v) if ( !(v) ) { MyAssert(); assert(v); }ってやったらしっかり止まった上にスタックも見えました。ブラボー!! …な…

スタックが見えないよ!!(ふて6)

dev

glコールの返り値はvoidなので、エラーチェックは返り値ではなくglGetErr()でエラーフラグをチェックする必要がありました。 最初はなんだこりゃ面倒なと思ったのですが、エラーチェックルーチンを完全に独立して記述できるので楽チンといえば楽チンですね。…

車輪の再発明の1週間(ふて5)

dev

今週の格闘時間は5時間でした。これはかなり長い方かと。 グラフィックスデバイスの抽象化、頂点バッファ、インデックスバッファ、テクスチャバッファクラスの作成、頂点宣言FVFの実装までを駆け足で実装です。表示周りの実装はOpenGLを思い出してよく見る(D…

OpenGLでテクスチャが使えない、貼れない問題 (ふて4)

不定期開発日誌(4)、略してふて4という事で。 猫にキーボードを踏まれながら日々ちくちくといじってます。といっても帰って寝るまでの間の30分から1時間程度ですが。今日は適当にサンプルを拾ってテクスチャを貼ろうとしたのですが、なぜか上手く行きません…

不定期開発日誌(3)

dev

ちと、とにかく机に向かって考えことをする時間を作らないことには始まらないので、マインドマップを使って設計を考えてました。どんなライブラリがいるのか、どんなゲームにするのか、ポイントがなんなのか、実装したい技術はなんなのか、フリーのライブラ…

不定期開発日誌(2)

dev

今日は先日ビルドを通したプロジェクトのソースコードを読んで、自分の処理しやすいクラスに再構築してました。 拾ったサンプルはグローバルな関数と変数でがしがし書いてあってそれ自体は別に全く構わないのですが、私自身が基本的にOOPラブ!!な人間です…

不定期開発日記開始

dev

今日はOpenGLの使い方を思い出してました。 思い出すというか、もうすでに完全に記憶の彼方から消え去っています。 昔ruby + SDL + OpenGL でゲームを作っていたころの自分が信じられません。やっぱ触っていないと駄目ですね。 というわけで今日は「龍が如く…

ad2公開!!

dev

いつまで暇人を気取っていられるか分からないので頑張ってad2を公開しました。といっても紹介用webページを作って、少しだけデータの更新をしていただけですけれど。 簡単な遊び方として、「medium,easy」を遊んだ後は、「very large,very hard」をクリアす…

スクリプトは便利だ

dev

開発したad2をwebに上げるためにhtmlを書いているのですが、開発中のディレクトリのreadme.txtとwebページから参照するreadme.txtとダウンロードするzipファイルに入っているreadme.txtを一致させる必要があって、更にはreadme.txtを更新したらzip化も更新し…

実は進めていた

dev

ということで、実は3,4日に1,2時間のペースではありますが、ad2の開発を進めています。獲得したポイントを元にプレーヤの状態を変化させる処理の組み込みを行っている最中です。システムを複雑にするとコーディングのコストが上がるばかりかバランス調整も大…

ひとまず

dev

ひとまず、最初から最後までは作り上げました。型の無い言語で物を作るのってのは結構大変ですね。ルーズに書けるということとルーズに書けてしまうという事は表裏一体だなあと思いました。 ゲームの方向性としての手ごたえはつかんだので、今年いっぱいはru…

バリエーション

dev

敵の種類とレベルの概念を追加しました。するといきなりゲームらしさがもりっとアップしました。とりあえず展示しててもいいんじゃない?程度にはなったような気がします。このあと風邪で倒れてもあれを作品として出してもらうことにします(ひでえ)。

継続こそ

dev

というわけで、NFまで残り少ないのですがこつこつ開発しています。自分の体調の問題もあり、できるだけやったら無理はしないでそこまでの状態で出そうと思います。とはいうものの「これゲーム?」とか言われたら悲しいのであと1週間ほどはそこそこがんばろう…

一見近道でも遠回り

dev

rubyでは変数に型を指定する必要がなく、配列にも適当な型をまぜこぜに入れられます。それで真面目にデータ構造をつくるのが面倒なときには適当に配列を作ってそこにデータを放り込んだりするわけです*1。 がしかし、自分に理解できる程度の適当さにしておい…

大きな一歩

dev

今までやっていなかったのは大きな問題だったのですが、ゲーム画面、タイトル画面、等の状態をもてるようになりました。やべえ、製作がかなり楽しくなってきました。

処理速度という名の壁

dev

うむむぅ、なんだかとっても遅いのです。描画しなくても弾を出したら遅くなったので、当たり判定の計算等によるものなのでしょうね。泣く泣くFPSを30まで下げました。くぅ。

な、なんだってー!

dev

9/24(金)にKMCのメンツと会ったわけですが、その時にruby/GLUT/SDLでゲーム作っている話をohai氏にしたら、 SDLからでも直接OpenGL触れるよ というショックなお言葉を頂きました。何の為に苦労してwindows上でruby/GLUT/SDLの動く環境を探したというのでしょ…

ステータス表示部分

dev

文字が出せるようになりました。というわけで、スクリーンショットです。 http://www.kmc.gr.jp/~fal/prog/ad2/images/20040916.png フォントはEndEffector#から頂きました。ここにがしがし情報を表示していけば、それっぽい感じになるはずです。…なるかな?

バグどこか、たのむ

dev

rubyのdebugモードってのは、 ruby -rdebug foo.rb ってやったら実行できるのですが、これがどういう原理か、とにかく遅いのです。ゲーム画面にすると、1フレーム1秒以上かかってしまいます。というわけで普段から使って、問題が生じたときに状態を調べる、…

5秒の短縮

dev

rubyで512×512のループを回して画像ファイルを解析してOpenGLの形式に変換するのが面倒だったので、OpenGLの形式にコンバートする処理を事前に行なってファイルに保存し、実行時にはそのファイルを読み込むことで対処しました。今までは画像一枚読み込むのに…

ちょっと前進

dev

http://www.kmc.gr.jp/~fal/prog/ad2/images/20040912.png 見た目がちょっとだけ変わりました。へたれCADツールで適当に作った形状を読み込んで表示しているだけです。GUIでてけてけーっと作った形状データをプログラムで読み込んで表示するというのはなんだ…

やる気がでた

dev

数日コードをほったからして、桜坂消防隊を遊んだり、だらだらしていましたが、色々あってやる気がでました。理由の一つに、会社のまったり生活が終わりを告げそうな予感というのもあります。時間は無限にあるより有限の方が、やる気がでますからね。不思議…

あ、あかん…

dev

へたれCADツールですが、作れば作るほど、「こんなデータも作れるようにしたいなあ」とか「こんな機能があったら使うのが便利になるなあ」と拡張ばかり考えてしまいます。有った方がいい機能なのは確かなのです。しかし全体の時間を考えた場合、ここに手間を…

ちょこっと改良

dev

ちょこっと使いやすいように改良しました。もうちょっとだけ、もうちょっとだけ改良したらrubyに戻ります…

ひとだんらくやったー

dev

というわけで、形状データの記録と読み出しに成功しました。これでrubyに戻れます。わっしょい!

なんかそれらしいぞ!!

dev

へたれCADツール、最低限の編集は出来るようになりました。頂点を配置して、頂点を繋いで線を作って、頂点位置をドラッグで移動して程度ですけど。これで、頂点座標直打ちの面倒から逃れられるのですよ!後はファイル入出力を書いたら、ゲームに組み込めます…

飛んでパーリン

dev

ふとパーリンノイズ(Perlin noise)が気になってしまいました。パーリンノイズについては下のページが分かりやすいです。 http://freespace.virgin.net/hugo.elias/models/m_perlin.htm 簡単に説明すると、異なる波長のランダム波を組み合わせる事で、自然に…

せめてC#らしく

dev

ノイズ生成部をクラス化しました。ついでに「プロパティ」と「delegate」を使いました。えっへん!