開発日記・メモ

up
down

~8/31

さらにイロイロ追加だー

 さらにイロイロ作ったYO!
しかしアレだ。作るのに忙しくて日記がテキトーになりつつあるな。
・データ送受信の最適化
・モンスターがアイテムをドロップするようにした
・与えたダメージによって経験値・アイテムが配分されるようにした
・「染料」で装備品の色を変えられるようにした
・アイテム数点追加
・ゾンビにテクスチャを貼ってみた。
・死んだ時などに不自然に地面に潜ったり浮いたりしにくくなるようにした
up
down

8/29

レベルアップ

 レベルアップできるようになったのを公開したぞ。
 さらにゲームになってきたかんじだ!
up
down

8/25

テスト公開

 テスト公開してみるコトにした。
 ドキュメント作成に時間がかかって鬱...。
up
down

~8/21

おいおいゲームになってきたんでないの?

 影響を与えないキャラどーしのメッセージ送受信をしないようにしたYO!
このへんの部分は当たり判定の前処理にも応用できるわけなのだ。
プレイヤー100人モンスター1000匹とかいた時に100*1000の当たり判定を1/30秒単位でやるのはちょっとアレなんで。
 んで、攻撃したりされたりするよーになったYO!

 一応モンスター殺したり、殺されたりするよーになったのでもうゲームと呼べるカモシレナイ!
まだゲームの目的も無いしゲームバランスもあったもんじゃないので、確実にクソゲーですが...
 経験値とかレベルアップとかの部分を作る土台もできたわけなのでどんどん面白くするノダ!
 あ、その前に音声入れよっかな...音無いとちょっとサミシイ
up
down

~8/19

敵だ!

 敵が出るよーになったYO!でもまだ攻撃できないし、攻撃もされないんだけどね...
 敵はマップのいろんなトコにいっぱい出るので、互いに影響を与えないキャラどーしは
サーバとのメッセージ送受信のをしないよーにしないとイケナイですね。
これが次の山です。けっこうめんどくさそーなかんじ。
 でもベース部分を作ってた最初のころと違って、なんか作るとどんどんゲームっぽくなってくるので楽しい!
ちょっと眠いけどね...
up
down

~8/17

イロイロ作った!

 イロイロ作ったYO!
 アイテムを使ったり装備したりできるようになったぞ。
 あとHPとかSTRとかDEXとかのパラメータもつけた。
 NPCのオブジェクト作るのがめんどくさかったのでとりあえずギコにしてみた。
 次に敵を作ろーと思ってるんで、そーしたら、かなーりゲームっぽくなるんでないの!?
up
down

~8/1

更新してないケド作ってないワケではない...と思う...

 キャラ作成画面を作ってみた。

 っつても色しか変えれないんだけどね。
 あと、キャラのアクションをちょっぴり増やした。
 んで今は、パケットロスが起きたりしてもなるべく復帰するよーな部分を作成中。
ココらへんももーすぐできるんで、そーしたらテストで公開しよっかな。どーしよっかな。
up
down

~7/14

コマカイコト

 とりあえず、影落ちの表現をちょっとやってみた。
実験なので表現的にショボいのでもっとカッコよくしたいのだが、
カッコよくしようとするとすぐ重くなってしまいそうなカンジ...とりあえず保留。
 あと、2Dマウス位置を地面に投射するルーチンが適当だったのでキチっと作った。
スキンメッシュ最適化
 スキンメッシュがかなり重かったので、試しにポリゴン数を減らしてみたんですがあんまり速くなんねぇ...
試しに頂点にかかるウェイト数を減らしてみたら結構速くなる!
ボーンの数も減らしてウェイトの掛かり方を最適化してみたら2倍くらいの速さになった!ヤッタ!
 でも、今後キャラをいっぱい表示するよーになると思うので、もーすこし最適化する必要がありそーだ...
拡張拡張♪
・1つの描画オブジェクトに複数のメッシュを持てるようにした。
・さらに親子関係を持たせられるよーにした。
 RPGだと装備をイロイロ変えたりするので、そーゆーコトをできるよーにしたわけだ。
 さらにマテリアルをオブジェクトごとに変更できるよーにした。
そーすっと、プレイヤーごとに肌とか髪の毛とかの色を変えられて個性が出るわけだな。うむ。
で、鎧とか剣とかをテキトーに作って装備させてみたのが↓だ。RPGっぽくなってきた(・∀・)?

 自分のキャラを小麦色の肌、髪の色はアッシュ系で白い装備にしてみた。コギャル系ファッション?
#今回はあんま進んでないっすかね?...スマン。いまさらながらムジュラの仮面やってた...(´Д`;)
up
down

~7/5

顔はやっぱり...

 以前モデリングした時には、テクスチャを使わない方針で作ったんだけど、
やっぱり顔はテクスチャを使うコトにする。
 ポリゴンで作るとアンチエイリアスをかけても細かい部分はつぶれちゃうので...
描画オブジェクトのレイヤー追加
 今までもメッシュとか描画用のオブジェクトは管理するクラス作ってたんだけど、
さらに上位のオブジェクトを作った。メッシュ・スキン情報の他に、位置・回転・バウンディングボックス
とかの情報をもたせて、描画の際には一発で全部のオブジェクトの描画をするよーにした。
ネットワーク機能
 ついに、ネットワークの部分に着手する。
 サーバ側は接続ごとにスレッドを作るので同期に苦労する。
 プレイヤー情報のクラスをサーバ用の基本クラスから→クライアント用クラスに派生させて、
さらにそこから自分のクラス・他人のクラスに派生させるよーにする。
派生って便利だね...頭使わないとぐちゃぐちゃになるけど...
 んで、ついに、サーバに複数のクライアントを接続してチャットができるよーになったよー
大変だったよー(;-;)

up
down

~6/28

ウィンドウ表示クラス&IMEクラス

 ステタースなどの情報とかボタンとかをウィンドウ表示するクラスをひたすら作る。
Windowsのウィンドウ関係のAPIを使わないで作ったのでメチャ大変だった。
 ほんで前に作ったIMEのクラスを統合した。
 チャットができるよーになったYO!独りだから虚しいけどナ...

up
down

~6/24

高さ追加

 今までキャラの位置の高さ(y)は0に固定してたので地面の高さに合わせて登り降りするよーにする
 ついでに地面にテキトーに色をつけて、デコボコっぽいテクスチャをブレンドしてみる。

FOG...
 試しに他のマシンで動作させてみたら、画面の大部分が塗りつぶされたカンジになってしまった...
 どーやらFOGが変になってるみたい....イロイロやっても直んない...またハマった...
 どーやらデバイスによってFOGの設定方法が2種類あるのでした。
気付くと「なーんだ」ってコトでも気付くまで時間がかかったりするわけで...(´Д`;)
GeForce4 Ti4200
 ウチのパソコン3ヶ月くらい前に新しくしたんですけど、そんとき買ったグラフィックカードが
マザーボードと相性悪くて使えなかったんスよ。しょーがないので、そのグラボはサブマシンに積んで、
ずっとG400を継続使用してたんですけど、プログラム組んでるうちにハードウェアH&Lとか
プログラマブルシェーダーとかイロイロがハードウェアで対応してないのが不満になってきますた...
 んで、GeForce4 Ti4200のグラボを買ってしまいました。
 やっぱ速いぞヲイ。キャラをいっぱい表示してみたら10倍以上速度出てるみたい...恐るべし。
up
down

6/21

w=1

 次はマウスでクリックした位置にキャラクターが移動するようにするモナー。
 マウスの座標はスクリーン座標でキャラクターの位置はワールド座標なので、
この変換が必要になります。キャラクターを表示するときはワールド座標から
スクリーン座標に変換するわけなので、この変換の逆をすればいいわけだな。
 2次元での点は3次元の直線になるので、その直線と地面との交点を求めれはイイわけだ。
 ........
 はまりますた。計算結果が合わない....
 ........
 ナニが悪かったかとゆーと、変換の際にベクトルに変換行列を単純に掛ければ(・∀・)イイ!
と思ってたんですが、実際はその後w=1に射影しなくちゃならなかったんだなコレが。
基本的なコトをわかってなかった(´Д`;)...
 よく考えればパースペクティブトランスフォームって線形変換じゃねーもんなぁ...
 んで、やっと座標の逆変換ができて、クリックした位置にキャラクターがテクテク歩くよーになったYO!

 あ、まだ下着しかつけてナイのになんでブーツ履いてるかっつーとですね、
裸足でアニメーションつくっちゃうと、後から靴を履かせた時にヒールが地面にめりこんじゃうからなんですよ。
 そーゆーフェチなわけではない......ということにしといてください...
up
down

~6/20

Dirext3D Export

 3Dオブシェクトの作成はLightWaveでやってるのですが、
LightWaveで作ったオブジェクトをDirect3Dの.xファイルに変換するプラグインが酷い出来です...。
・weight-mapがまともに使えない(use weight-map only状態になる)
・strengthの値は見ていない
・張力が変...etc
特にweight-mapが使えないのはツライっす...(´Д`;)
 しょーがないのでソースが公開されてるDOS版のExporterを改良することにする...このコードも酷いな...
がんばって一通り改良できますた。
 つーかこの改良版需要高そうだな。シェアウェアにしたらおいしいゴハンがたべれるくらいには儲けられそーーな...
plugin版も作ろうかなぁ...。まあイイや。メンドクサイからとりあえず非公開にしようっと。

あにめーしょん
 んで今度は女の子がテクテク歩くアニメーションを作る。自然な動きにするのは大変だのう...。
 最初はギコ猫とかテキトーなオブジェクトで作っとけはよかったか。とか思ったり思わなかったり...
up
down

6/1(くらい?)~6/15

Direct3D

 まずDirect3Dの基本的手なお勉強をした。
 DirectXのDirectDraw/Sound/PlayとかOpenGLはいじったコトがあるのだけれど、
Direct3Dは全然使ったこと無いので、まずココから...
 DXSDKのサンプルとかWeb上のチュートリアルを見る。フムフム。ナルホド
 半透明の2Dを重ねてみたりとか、空の部分を張り合わせてみたりとかイロイロやってみる。

 テキトーにテスト用のオブジェクトを並べてるのでかなり混沌としてますな...
DXSDKについてた人のオブシェクトキモイし...

IME

 とりあえずチャットするためには文字入力する必要があるわけです。
通常のWindowsアプリなんかだとエディットボックス作成するだけなんですが、
DirectXのゲームでなんも考えずにそれやると画面更新でチラツキが発生してしまったりします。
さらに日本語だとIME使うのでエディットボックス部分だけでなく、選択候補が表示されたりとか
イロイロメンドクサイんす。
 んで画面更新部分を指定するためにClipperっつーのがあるのですが、なんかよくわかんね。
つーか、ここらへんはDirectX8になってDirectDrawが消えてからなんかメンドクサクなったよーな...
 メンドクサクなったのでエディットボックスとか使わないで、表示部分は全部自前でやるコトにする。
こーすれば、半透明とかイロイロ使ってカッコイイ入力ボックス作れるし一石二鳥だ(・∀・)!
 んで、表示以外のIMEの処理をするクラスを作ってみる。うむうむ。なかなかイイできだぞよ。

スキンメッシュ

 ココは一つのヤマですた...
 DXSDKのHELPはそれなりに詳しくイロイロ書かれているのですが、
ことスキンメッシュに関しては非常に記述が少ないです。
おまけにWeb上にもほとんど情報がないし、参考になりそーな書籍も発見できなかったです。
本当に情報が少ないので、使用方法を理解してる人いないんじゃねーのか?とか思ってみたり。
 残された道はDXSDKのサンプルコードを解析するコトなんですが、
なんじゃこのコードはヽ(`Д´*)ノ汎用性っつーものを考えんかゴルァヽ(`Д´*)ノ
 スキンメッシュのロードとか表示とかの関数はあるのですが、
その関数がアプリケーションクラスの変数を共有してたりします。
頼むカラそーゆーユーティリティな関数は独立して使えるよーにしてクレ...サンプルコードなんだしさ...
 半泣きになりながら解析して、汎用的に使えるよーに手を加えました。
 コードの細かいトコは正直あんまり理解できてないのですが、
一応自作のプログラムから使えるよーになったので、とりあえず一段落...(;´Д`)=3

モデリング

 スキンメッシュ使えるよーになったし、3Dのテストプログラム上で
女の子をテクテク歩かせるのが次の目標にしよう。まずは3Dモデルをとりあいず作んなきゃ。
 つーかモデリングするのカナーリヒサシブリだな...
 体の部分は元になるデータがあったのでそれをヘコヘコ修正修正。
 頭/顔の部分はゼロから作ななきゃなぁ。
 とりあえず荒い頭部を作ってテクスチャを張ったもので開発進めるか.....
...と思ってたんですが、作ってみたらぜんぜん(・A・)カワイィクナィ...
もーちょっとマシなものになるかと思ったんですが...
...カナーーリ適当に作ったってのもあるんだけど。
 キャラがあるてーどカワイクないと開発意欲がわかねーーっすよ。
 んでブチ切れて、逆にテクスチャを全く張らないでモデリングしてやる。と決意
 デッサン力なんかないんで、webでカワイイ女の子の画像を拾ってきて
参考にしつつゴリゴリモデリング。
#ちなみに参考にしたのは某芸能人さんです。似てないので誰かは言いませんが...
 むー口元がなかなかうまくいかねぇ...そーいや昔も口元で苦労してたよーな...
とかやりながらなんとか作りますた。
 正直まだ納得いく出来ではナイのですが、気が向いたトキに修正するコトにする。

 ↑モデリング画面はコンナカンジ...
まだハダカなので良い子に悪影響を与えないために体は見せないどきマス
 髪の毛とかテキトーだけどこれ以上はあとまわしー。
 ポリゴンはなるべく少なくなるよーに気をつけてたんですが、
ディテールを損なわないよーにするにはやっぱそれなりに使っちゃいますね。
余分なポリゴンの削除をあんまりしてませんが、全体で2500ポリゴンくらいです。
グラボの進化は恐ろしく速いし、RPGなんで30fpsくらい出ればイイや。
って思ってるのであんまり気にしてないですけど。

ヒトヤスミ

 ヒサシブリにモデリングなんかの3D系のコトやってたら、
以前AMIGAで3DCGやったりデモ(※)を山ほど見たりしてたことを思い出しましたよ。
 んで、昔のデモをキョーレツに見たくなってきちまったんですが、
AMIGAは既に処分しちゃったんだよね。
 つーわけでAMIGAエミュとデモ数本ダウンロードしてきて鑑賞。
やっぱ(・∀・)イイ!「STATE OF THE ART」とかサイコー。
AminetやHornetにあるデモ片っ端から落としてきて、ヒトヤスミのトキに鑑賞するコトにしよう!

※国内では「メガデモ」っていう呼び方のほうが一般的だと思います。
 検索かけるトキは「メガデモ」の方が関係無いのがひっかかりにくくてイイっちゃイイですが...
footer
footerページ先頭上の項目前ページ次ページtop
footer