トップページgamedev
662コメント368KB

親父PGがゲームを作り始めるスレッド

■ このスレッドは過去ログ倉庫に格納されています
0001親父PG04/03/30 02:40ID:phIrC7nN

C++やC、アセンブラは昔こなしたし、プログラムの事なら自信はあるけど
ゲームは作った事が無い方。現場からも引退したし(w。
ここは一つ趣味でDirectXでも勉強して、ゲームでも作ってみようかなぁと思った、
オジサンPGのスレッドです。

一緒にマターリライブラリから作りませんか?
0271親父PG04/04/26 00:46ID:Tu3Nnhfj
>>270
お疲れ様。^^
まぁ肩の力を抜いて楽しくいきましょう。
自分で仕様を決めて造るProgramは、楽しくやらないと損ですからね。
力を抜いて頑張ってください。

私の方もWINDOWの拡張に努めています。文字列が入りきらない場合の
文字のスキップ(スクロール)の処理などをやってます。
出来上がった所から少しずつ、先のURLにあぷしていこうと思います。

私事ですが明後日に光が開通します。
勢いでMN8300W買ってしまいましたorz....
0272名前は開発中のものです。04/04/26 09:31ID:YvjKmIIw
なんか文字の後ろが透過されてないんだけど、
もしかして例のDIB側で合成して、αを使っていないせい?
0273親父PG04/04/26 12:40ID:Tu3Nnhfj
>>269
スタンダートストリングですか^^
何が何に強いとか特長とかあるんですかね?
C関係は文字ライブラリの種類多すぎorz...

デルファイのようにStringが、すべてカプセル化して1つしかない状態のほうが
シンプルで良いような気もするんですけどね(個人的には)

string.sort() ←こういう事が標準でできるあたりはCも便利なんですが...

>>272
そうではありませぬ。
文字の後ろは可読性を考えて、わざと不透明にしております。
文字は高精度αを使って滑らかに出力しております。

「文字 DIB
 |合成(スクリーン)
 背景」Tecture このとき背景のαを255←ここを変化させると透過する
ポリゴン
(重ね合わせ)
WINDOWポリゴン 頂点にα設定 
(重ね合わせ)
サーフェースカラー
0274名前は開発中のものです。04/04/28 22:48ID:ZcMEeys0
応援さげほっしゅ
0275親父PG04/04/29 00:55ID:fKr8I6Zs
>>274
最近、書き込み少なくて寂しいのでorz...ありがとうです^^

さて我が家にも光が開通したのですが、ADSL>光の切替が月末に固定されているので
使えないというorz...

システムのほうはコンポーネントという概念(複数のコントロールOBJ)を一括して扱う
この実現のために新しいクラスの定義、一部命令の移動など工事などを進めました。

仕事の合間に紙に、ボールペンでクラスの構造設計書を書いておりました。
落書きの山ですな。

この新しいクラスのためにSTLのタイプを何を使うか検討しています。

STLの種類選びはなかなか重要で本システムでも、Vector と deque を
切り替えただけで80%速度が改善しました。

さて親父日記は終了して 仕事に戻ります
0276新人PG04/04/29 21:03ID:im0w3ame
>>親父PG
お疲れ様です。
アク禁食らっていてカキコできませんですた・・・。

言語の設計
・ホワイトスペースは 空白・タブ・コメント・改行文字とします。
・コメントはJava風("//" "/* */")
・if,for,while,switch,gotoあり
・型はshort,int,long,byte,string
・予約語としてscene,array等を予定
・関数の宣言 int function Func1(int arg,string str){...}
てな感じです。(細かい所はまた後で)

クラス実装はほぼ諦めてます・・・。(だれか作れる人がいたら受け継いでくれ〜)
標準APIをこちらが実装する事でゲームの記述を行えるようにします。

こちらもコンパイラ作るのが飽きたときにコソッとゲーム考えたりしてます。
地形なのですけど、テクスチャから地形ポリゴンの高低を生成できたりすると面白いかもしれません?

#文字列は普段はstd::string MFC環境はCStringを使っています。
0277親父PG04/04/29 21:51ID:j+4sgpkF
>>276
お疲れさま 現在私は夜勤中ですorz... しかもノートPCの電源家に忘れた。さらに鬱....

仕様ですが、最初の段階としては問題ないと思います。
そもそもクラス言語が理解している人ならば、ゲームツールを使わず自分で作ってるでしょう。orz....
というわけで、簡単な言語仕様をまとめて、シナリオライタークラスの人に「難易度」を計ってもらう事が必要かもしれません。

>>こちらもコンパイラ作るのが飽きたときにコソッとゲーム考えたりしてます。
いいですねぇ。なんかPGの話ばかりしてると、PG以外の人が寄り付かなくなってしまうので、いろいろとネタを振るのもいいかもしれませんね。

>>地形なのですけど、テクスチャから地形ポリゴンの高低を生成できたりすると面白いかもしれません?
すまん。もう少し詳しく教えてくだされ。テクスチャの何から高低を生成するのかな?

いきなりですが、DirectXの描画ループの説明を致します。
DirectXの描画ループ
 ポリゴンを作る
 ポリゴンにテクスチャを張る
 レンダリングGO
 描画(FLIP) 
ポリゴンを張るというのはポリゴンのデータ-に対してテクスチャの(ポインタ)を渡します。
するとあとはDirectXが勝手に描いてくれます。いいですねぇ。
さて2つのポリゴンに対してテクスチャAを割り当てた時に、テクスチャAの内容を変化させるとどうなるか? 答えは2つのポリゴン両方の内容が変化します。
この特性は美味く使うと便利ですが、少し困る事があります。その場合はテクスチャのコピーを作ってそのポインタを渡したほうがいいかもしれません。
0278新人PG04/04/29 22:17ID:im0w3ame
>>親父PGタン
(゚Д゚)オツーです。
シナリオライターはツールやこちらが組んだAPIを使用して、シンプルな記述が出来るように設計します。
ほとんど変数や分岐を記述させないで、こちらが用意した評価関数を使用させるようにします。
(ほとんどGameProgramming Gemsの内容に従っての設計になっています)

>>地形データからマップ生成
http://www.uroboros.org/manageddirectx_csharp.html
こんなのを見ていて面白そうだと思いました。

>>テクスチャの話
テクスチャを1つだけ生成して複数のポリゴンに参照させる事が出来るんですねぇ。
ゲームPGを全く(ていうか画像処理を)やった事の無い自分にとって面白い仕掛けだらけです。
0279親父PG04/04/30 01:23ID:yNfOtjDQ
>>278
お疲れさま。
サンプル見ました。面白いですね。ではランドスケープの部分は新人PGさんにお任せします(w
とりあえずなのですが、MAPは一枚画を3枚ぐらいレイヤー構造でスクロールするものを考えています。

でランドスケープのシステムの話。
シミュレーションなどで使うMAPでは論理座標を管理するMAPが存在します。
これを表すためにXY(Z)の配列をつくってその座標の特性に合わせてランドを作成します。
1が海2が平地として
111111
111211
112211
111111

古典的なやり方では1対1に対応して「チップ」データをおいていきました。
昔の「大戦略」などを思い出していただければ結構です。
これはMAPをユーザーにもエデットできるという仕様上からもこのような設計になってるのでしょう
ユーザーにエディットさせないのであれば、1枚画を使ったほうが綺麗ですね。そういう方法を使っているところも結構あります。

さて次の方法ですが、1に上げた方法を拡張して平地と海の間のグラフィックを補完する方法というのがあります。
1と2の間に海岸のグラフィックを表示する
これは3Dではない地形データを表現する方法として多く使われています。

3DMAP 予め作成済みの頂点データ-とポリゴンデータの組み合わせを表示する。
これは速度的にもよく使用されている方法です。動的に変化するのは必要な部分のみ。
通信ゲームなどはこの方法が多いのではないでしょうか?

本システムでは(とりあえず)斜め上視点を考えてます。後期ドラクエと考えてください。
地形MAPツールも作らないといけないですねぇorz... やる事多すぎw
次に考えているのは論理MAPデータ-からポリゴンデータ-を動的(読み込み時)に作成して
ポリゴンを貼り付けていく方法というのがあります。
速度的な心配があるのですが、精度がそれほどでもなければなんとかなるかも。
0280新人PG04/05/02 16:13ID:tneOjVuC
>>親父PGタン
お疲れ様です。連休入ってから呆けていて遊んでました・・・、スンマソン。
スクリプト言語、中間コード生成までは問題なく進めそうです。(BoostのSpiritのおかげです・・・)
問題はその先なのですが(汗
Mの命令語の設計が出来てからマッピングを考えるのでそれ以上は保留としておきます。
不安要素は、スクリプト言語の汎用性が高すぎる事です。トリガーとマッピングできるのかしら?
恐らく、制御構造が全くといって良いほど違うので「戻り」は発生すると思いますけど。

>>サンプル見ました。面白いですね。ではランドスケープの部分は新人PGさんにお任せします(w
>>とりあえずなのですが、MAPは一枚画を3枚ぐらいレイヤー構造でスクロールするものを考えています。
ちょっと待ったーッ!2Dの表示もやった事のない僕にそんな餌を撒かないで下さい(汗
画像処理系は任せますw 後学の為に参考にさせていただきますので b(・ー・)

個人的にはMAPツールはデータをプレビューできる機能さえあれば十分だと思ってますけどねw
あとはテキストエディタなりバイナリエディタなり使ってw
0281新人PG04/05/02 17:45ID:tneOjVuC
ageてしまった・・・スマソ。
言語仕様なのですけど、関数とトリガーを完全に別の記述方法にしました。
宣言方法も違います。
トリガーの宣言:
"trigger" [シリアルID] ([トリガーより渡される引数]){...}
関数の宣言
[型(戻り値)] [関数名] ([スクリプト内で渡される引数] ){...}

その他の変更・疑問など
・FOR文,SWITCH文が無くなる可能性があります。
・ひょっとして中間コード要らない?←出力する中間コードそのものの変更が起こる可能性が非常に高いため
(字句・構文解析とファンクタは別実装)
・計算式が書けなくなるかも?(VMの命令語次第)
0282名前は開発中のものです。04/05/02 19:50ID:PAfxeO72
for文や計算式が書けないのはまずいんでない?
0283名前は開発中のものです。04/05/02 21:08ID:wpvFJ3U7
普通はスクリプト系にforとかswitchはあまりないんでない?
開発ツールのほうでswitchがあってもそれをifに展開したりする
forのような繰り返しはあまり多くないからさほどいらないはず

どうしてもほしかったら後で付け加えるだけでいいし
0284名前は開発中のものです。04/05/02 21:33ID:PAfxeO72
>普通はスクリプト系にforとかswitchはあまりないんでない?
それ本当?
逆にforに相当するものが書けないスクリプトを知らないんで教えて欲しい。
0285名前は開発中のものです。04/05/02 21:34ID:wpvFJ3U7
普通スクリプトって社内開発で外に出ないもんじゃ?
0286名前は開発中のものです。04/05/02 22:19ID:PAfxeO72
>普通スクリプトって社内開発で外に出ないもんじゃ?
趣味ならまだしも仕事で作って
for文も使えないってことはないのでは?

スクリプトの処理系なんて社内開発以外にも
Python,Ruby,Lua などいろいろあると思います。

参考までにPython+SDLのゲーム開発サイトです。
ttp://www.pygame.org/
0287名前は開発中のものです。04/05/02 22:49ID:wpvFJ3U7
ここでの流れはそういう汎用スクリプトの話してねーだろ
0288名前は開発中のものです。04/05/03 00:18ID:O34XE/AV
いや市販ゲームにも使われてるし別にいいだろ。
逆に社内開発の非公開スクリプトの話されても困る。
0289名前は開発中のものです。04/05/03 01:58ID:ttTkVS1d
スクリプトみたいなユーザーに近いレベルの言語こそ
forとかの制御構文あったほうがいいと思うけどね。
それをjumpやgotoなどに展開するのば普通じゃないのかな。
0290名前は開発中のものです。04/05/03 02:07ID:0IkDbgp8
for文じゃなくてwhile文なんだよ。

ってのは冗談として、ゲームツールのスクリプトでループ文はいらないんじゃない?
Mainループとしてゲーム本体があるんだから段階的に時間軸に沿って処理する場合
でも、ツールユーザーがスクリプトで書くのは判定文だけでいいでしょ。
純粋なツールではないけどMorrowindのスクリプトでもwhile文はあるけどtime Overありだし
推奨はしてないよ。
ttp://www.uesp.net/morrow/editor/mw_cscommands.shtml
0291名前は開発中のものです。04/05/03 03:14ID:uGveXlu0
あくまで学習しながらゲームを作るのってのが目的みたいだし
多少機能が貧弱でもいいのでは?
単に高機能な物が欲しいのならフリーでオープンソースな
ゲーム開発環境なんていろいろあるわけだしそっちを使ったほうがいい。
中途半端に終了ってのが一番最悪ですから。
0292名前は開発中のものです。04/05/03 05:34ID:F5voLn4B
>>288
それは初めて聞くな。PCゲームなの?
その手のスクリプト言語のパーサとかVMって、ライセンスはどうなってるの?
GPLだったら、ゲーム自体のソースも公開になるの?
それともコピーライト表示だけで構わないライセンス?
0293新人PG04/05/03 06:49ID:XPOMrzWI
みなさん色々意見ありがとうございます m(_ _)m

FOR文が消える理由:
>>290さんの言うように必要性を感じなかったのと、目的コードと合わない感じがしたからです。

計算式が消えそうな理由:
計算をする事が出来るかどうか怪しいため。
あくまでゲーム中イベント処理の記述のみをスクリプトで作る手筈なので。

他の処理系(Lua等)を使わない理由:
作ってみたかったからっス・・・(・ω・;)>>291さん、フォローThanx
あと、親父PGさんの方である程度考えにまとまりがあったので下手に他に手を出すよりは良いかと思ったからです。
まあ最初はXMLでの記述のみを考えていたんですけどね・・・w
0294名前は開発中のものです。04/05/03 12:47ID:nXfpjc4K
>>292
最近だとFarCryがLua使ってる。
ttp://www.4gamer.net/store/review/farcry/farcry.html

ライセンスはLuaだとMITライセンス。
GPLとかだったら市販ソフトにはとてもつかえないよ。
0295名前は開発中のものです。04/05/03 14:15ID:GKQkdavB
luaは組み込み目的で開発されてたヤツだし

中間言語系でGC使ってどうのこうのってやつなんで、それでいいのであれば
javaとか組み込んで使ってるのとあまり変わらんと思われ

俺はそういう方向性でいいと思うんだけどね

でもここでは流れ見るに中間言語系は対象外のようなんで確実にクロック数が
わかるようなスクリプトしか実装しないと思う

それの出来はどうであれ、いわゆる再開発好きが集まってるところだと認識している
0296親父PG04/05/03 16:28ID:+yioKA00
>>新人PGさんへ
色々と議論が進んでいますね。レスが遅れてすみません。

FOR文についてですが、FOR文命令トークンがあればそれに従って、VM側が行います。
ご指摘のとうり問題はその意味なんですよね。orz...

シナリオライターがあったほうがいいと感じるか? ということになります

単純に繰り返したいだけなのか
カウント用の数字を何かにつかうのか
カウントの何番目にかによって条件をいれかえるのか?

いずれにしてもVMは一命令ずつ解釈実行なので、(1命令はある程度豪華ではあるけれど)
命令が矛盾無く組み立てられるのであれば、大丈夫だと思います。
ということで、この命令にはこんなトークンの組み合わせではどうか?
という提起がスクリプト側から提示されると考えています。

その中から実現方法の[取り決め]を造って行きましょう。最初からそこまでこちらで決めると
スクリプト側の設計が窮屈になると思って、いままでその話はおいて置きました。

>>其の他の方
いろいろと貴重な意見ありがとうございます。大変助かっています。これからも暖かいご支援をお願いします。


0297親父PG04/05/08 01:09ID:h8sVtZGZ
>>293
計算式が消えそうな理由:
計算をする事が出来るかどうか怪しいため。
あくまでゲーム中イベント処理の記述のみをスクリプトで作る手筈なので。

ADD SUB というトークンと数字の並び替えの規則さえあれば、こちらでぞれを実装しますよ^^;


今、開発マシンにトラブルが発生orz..
修理に出すので今止まってます すみません 汗
0298名前は開発中のものです。04/05/08 19:42ID:cNPB2s8D
スレ一通り読んでみたんだけど一つ質問
今作ってるのはライブラリですか?

初心者の俺にはそれすらわからないy=ー( ゚д゚)・∵.ターン
0299名前は開発中のものです。04/05/08 19:58ID:dkKvY2dU
>>298
>>1
0300名前は開発中のものです。04/05/09 18:20ID:gB+UjQaV
>修理に出すので今止まってます

このままフェードアウトの悪寒・・・。
0301名前は開発中のものです。04/05/11 19:53ID:yHM5YZkv
親父PG=47氏だったら・・・。

>今、開発マシンにトラブルが発生orz..
>修理に出すので今止まってます すみません 汗

実は押収されたの。



と、妄想してみる。
0302名前は開発中のものです。04/05/11 20:30ID:UgvJm544
親父PGさんタイーホされたのか。


とか言ってみる。
0303名前は開発中のものです。04/05/11 23:30ID:yHM5YZkv
結局、2chで企画立てて実現かつ成功した
例は・・・
0304名前は開発中のものです。04/05/12 00:01ID:F6gUxLXe
ゲーム作るのにだって根気と忍耐は必要なのに1〜2週間くらい待てないのか?
仮に企画倒れだったとしても当人達以外に何か被害被った訳でもなし。
うだうだ言う奴に限って自分では何もでk(ry

もうちょっとマターリ待ってみようや(´_ゝ`)y─┛~~
0305名前は開発中のものです。04/05/12 00:37ID:Sy7h6rok
>>304
別に誰も作業を「直接的に」急かしてる書き込みして無いでしょ?
0306名前は開発中のものです。04/05/12 13:40ID:F6gUxLXe
>>305
???
よくワカランが俺の書き込みちゃんと読んだ?
本人がPC修理って言ってるんだから下手な煽りはイラナイだろって言いたいんだがな
>>300>>303とか。ドッチに転がっても何か損するわけじゃないしね
見ててダメだと思ったならここ見なきゃ良い話しだし

俺は変な煽りに対して言ったんだが、レス番付けなかったからちとわかり難かったか
0307名前は開発中のものです。04/05/12 15:02ID:KHeRBBvL
そうではなく2chなんだから煽りにいちいち反応するな
ってことが言いたいのでは?

このスレの住人も当人達以外はヲチしてるだけでしょ。
既存のゲーム開発ライブラリなんてたくさんあるし
ゲーム製作したことが無い素人が作るライブラリの
完成を待ってる人なんているとは思えん。
0308名前は開発中のものです。04/05/12 21:23ID:B+KWN/WZ
>>307
当人たちのやる気を削ぐような、刺のありすぎる言葉だな。
まあ、言ってる事は同意だが最後の二行は書くべきではなかったと思うぞ。
0309名前は開発中のものです。04/05/12 22:58ID:gxCJLa/h
>>307
漏れニヤニヤしながら待ってるよ
使いたいからじゃなくて、見てみたいから

特に、豪華固定長命令セットの威力に期待
0310新人PG04/05/15 16:36ID:0t0FzjJn
お疲れさんです。ずいぶんさがりましたな。
仕事の引越しの関係でインターネットが新居に繋がってません。今月中に何とかします。

スクリプトは機能を大幅に削って、ある程度完成しました。どうにかゲームの進行ができる程度です。
計算処理は復活させました。限定的な(非汎用的な)命令語が増えています(汗
現在C# + DirectX9にてデバッグ用のインタプリタプログラムを作成中です。
動作するものができたと判断した段階(6月初頭を目途)で一度公開します。
スクリプトレビューはその時に行ってもらいます。
現在作成できるゲームの限界はSFCのドラゴンクエストV+αとしています。
オーソドックスな2DのRPG(俯瞰)としていますがRPGツクールと差別化したいかな〜とも思ってます。
0311親父PG04/05/15 23:46ID:n956sXSw
現在IBMに修理出してます。すんません。orz...

問題は...サルベージが必要かも知れません(涙
でも諦めませんので^^;まだまだ頑張ります。
0312親父PG04/05/15 23:48ID:n956sXSw
>>310
こちらも事実上止まっていますので、ゆっくりかかってください。
サルベージにHDDの基盤交換が必要やも知れないorz...

巻き戻ったソースは残っているのですが....
で逮捕はされていませんよw
0313名前は開発中のものです。04/05/16 23:37ID:XGd16B+k
タイーホされてなかったのか・・・よかったよう。
早く復帰してねー
0314親父PG04/05/19 08:49ID:DXpNx74z
まだ修理から戻ってこないorz...
0315名前は開発中のものです。04/05/19 12:12ID:OYSXu2wF
IBMのノートって壊れやすい?
0316名前は開発中のものです。04/05/19 12:43ID:wKTG0vf1
そりゃもう踏んだだけで壊れます

踏んで壊れなかったのはLet'sだけだった・・・
0317名前は開発中のものです。04/05/21 04:10ID:GxmUKizO
踏みすぎ
0318名前は開発中のものです。04/05/24 19:14ID:8F9Ymse0
保守
0319親父PG04/05/24 20:54ID:o3eQYwoe
ところで HDDなのですが、だんだんおかしくなって
最後にWINDOWSまで起動したあと、認識不能になったので
おそらく基盤故障かモーター故障だと思うのですが、
サルベージでよいとこ知ってる方いませんかね?

これもある意味 ネタにもなるし(苦笑

IBMに当初修理を依頼したところ落下判定されていました(笑
かばんに入れて持ち歩いていたので、チャックの部分とこすれて傷だらけなのがいけなかった...
状況を説明して 落下判定は取り消されました。
やはりちゃんと説明しないといけないんですね。落下だと「保障」が効かなくなります。
当初6万の請求が、修理範囲をHDDに絞ったことで「無料」
また壊れたHDDの引き取り代金だけになりました。
壊れたHDDの引取りにもお金がかかります。まぁこれは仕方の無いことですが^^;
0320名前は開発中のものです。04/05/24 21:15ID:GTVh4I4h
俺なら新しいの買う
0321名前は開発中のものです。04/05/24 22:31ID:npejv8oY
サルベージの話だろ?

ところで
>壊れたHDDの引取りにもお金がかかります。まぁこれは仕方の無いことですが^^;
知らんかった。なぜに?
0322名前は開発中のものです。04/05/25 01:31ID:/brKs1IB
俺の場合、壊れたハードディスクは表面を透明プラスチックとかに変えて
部屋の隅っこに飾ってる。
ちょっとかっこいい。
0323名前は開発中のものです。04/05/25 03:37ID:aIdTCCHF
パソコンリサイクル法とかでいろいろと理由付けて金とるんだなぁ。

漏れもIBMのHDD(ノートじゃないが)使ってたけど2年しないで
起動するたびに遅くなったり、認識しなくなったりしてとうとう逝ってしまった。
まぁ、前兆が2,3日に続けてでてたからあわててバックアップとったが、
親父PG氏はバックアップとってないのん?

開発マシンが逝っちゃうとカナーリショックだと思う。
0324名前は開発中のものです。04/05/25 10:17ID:MYIRdGjF
PCやHDDは消耗品。万が一の時のために
バックアップはまめにとるのは開発者の常識。
個人でも何枚かのDVDRAMやRWに焼くだけでも
安心感が違うから、面倒でも最低2〜3日に1回は
全ソースのバックアップをとったほうがいい。
0325名前は開発中のものです。04/05/25 10:41ID:2BcRF3mj
確かに必死こいて書いたプログラムが2日分
消えたときはしばらく放心状態だった
0326親父PG04/05/25 19:41ID:srpPWafA
壊れたHDDを引き取るのにお金がかかる理由は、交換により新品をHDDを提供。
交換後の壊れたHDDは「IBMの資産」扱いなのだそうです。
なので引取りにはお金がかかるようです。
当初は新品と同じ額かもしれないと言われていましたが、結局は9000円
になりました。

高いなと感じる方もいるかもしれませんが、ノートの発送代金はすべてIBM持ち
(保険付き)サービスであるとかを考えると、それほど高いとは思っていません。
簡単なチューニングもしていただきました(発熱対策)

あまり参考にしたくない事例ではありますが(汗
なにかの参考なれば幸いです^^;
0327名前は開発中のものです。04/05/25 20:34ID:aH+42FE9
家にサーバ一台置いて、CVSなんかでバージョン管理。
これ最高
0328名前は開発中のものです。04/05/25 23:08ID:j22upQOo
サイト用アカウントにpassがけアーカイブをうpしてる。
0329名前は開発中のものです。04/05/26 00:47ID:ALBjE7I0
>325
でもめちゃ苦労して、ある程度できあがってたものは
一度消えても仕事とかで納期が迫っていると、一気にその段階までもっていけるようなw

俺プログラマーじゃないけど、フォトショとかで1日かかりで作ってたようなのを
納品数時間前にアポーン->一気にそこまで作り上げ。みたいのはあるな。

フォトショの画面作りにしても、プログラムにしても、時間かかってるのは
頭つかって試行錯誤してる部分だけだから、一度形にできてると、
そこまで復帰させるのは、どうとでもなるよね。

・・・まああまり参考にしたくない話しですけど。
0330名前は開発中のものです。04/05/26 06:51ID:pH6Xv3G7
>>329
デザインとプログラムは違うよ。
実際に経験してみないとこの違いはわからん。
0331名前は開発中のものです。04/05/26 07:21ID:AGJ88VBR
>時間かかってるのは
>頭つかって試行錯誤してる部分だけだから
ここらへんがど素人なのね
0332名前は開発中のものです。04/05/26 10:02ID:DwvFe2iA
まあ、かなり特殊な処理だったりするとわからんでもないな。
ただ、手馴れてくればそういう「試行錯誤」より
単なる物量が多いだけの場合が殆どであることに気が付く。
0333名前は開発中のものです。04/05/26 10:05ID:iZv6MyYs
ノートのHDDが壊れたときは、とっとと新しいHDDを買ってきて付け替えたけど。
有償なら自分でやった方が、安いし早い。
0334親父PG04/05/26 14:01ID:FihDUxqm
>>333
交換の部分は無償なんですよ^^ 普通は壊れた部品引き取る人いませんからね。
で目の前に壊れたHDDがあります。どうやってサルベージするか思案中です
0335名前は開発中のものです。04/05/26 14:59ID:9IQYkxl7
クラッシュしちゃったり基盤交換が必要など物理的に
壊れてるHDのサルベージは結構な料金とられるので
多少巻き戻ってもバックアップから作業開始しちゃったほうが
いいと思いますよ。
ソースが必ずしも復旧出来るとも限らないし…
0336名前は開発中のものです。04/05/26 18:57ID:JnixpBgL
壊れたってのがどういう壊れ方なのかもわからないなあ。
カラカラ鳴ってアクセスできなくなるタイプ?
0337名前は開発中のものです。04/05/26 19:12ID:mhiAytbl
  ∧ ∧  カタ       / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  (,,゚Д゚),__カタ_ _< このスレは親父PGのHDDをサルベージするスレになりました・・・と。
  ./ つ_|| ̄ ̄ ̄ ̄ ̄| \_____________
 (,  |\||  VAIO   |
     '\,,|==========|
0338名前は開発中のものです。04/05/27 06:55ID:J/CU7f8p
いやはや、これだけ書き込みがあって、まとめサイトも作ってないし・・
できたツールを片っ端から上げってったほうが良いんじゃないの?
(と言ってみるテスト)

やっぱしデータ構造は問題になるとは思ってたけど・・
オヤジ?さんが考えてる流れは例えば
ある地形上を歩く→どこかに着くと何番のフラグを立てる→
他のフラグもあわせて条件判断→フラグデータにあったイベントの発生
みたいな流れを考えてると思われる。(いかにも初代から3までのドラクエみたいだけど)

最近のゲームを見るに分業が進んで、たぶん上記の方法はあんまり使われてないかも?
だからシナリオが一本道になってるともみえる。でも、開発はこっちの方が容易。
シーン1(シーン1内での簡単なフラグ)→シーン2(シーン2内での簡単なフラグ)
 →シーン3(シーン3内での簡単なフラグ)→・・・
全シーン共通のフラグがこの他にあって、
またキャラクター(登場人物)データや持ち物データは別にある。

最初の方法だとフラグを管理するツールは必須だね。
何個かの条件を関連づけて表示したり、どのフラグがどのデータに関連してるかというのが
明示されて無いと、あとあとわけわかんなくなるし。
2番目の方法なら、フラグについてはほとんど問題無い。(だから最近のゲームはつまらん)
0339名前は開発中のものです。04/05/27 13:56ID:T7P3bbBG
確認してみたがまとめぺーじきえてないぞ?
0340名前は開発中のものです。04/05/27 16:56ID:5pnCAZfx
このスレにまとめのトップページURL二回しか出てきてないよ。
そりゃ気付かなくてもしょうがないんじゃないかな。

http://www.geocities.jp/oyajipg/
まとめページ
0341親父PG04/05/28 11:58ID:tJb+of+g
やっぱしデータ構造は問題になるとは思ってたけど・・
>オヤジ?さんが考えてる流れは例えば
>ある地形上を歩く→どこかに着くと何番のフラグを立てる→
>他のフラグもあわせて条件判断→フラグデータにあったイベントの発生
>みたいな流れを考えてると思われる。(いかにも初代から3までのドラクエみたいだけど)

少し違います。地形データーにはトリガーがあるという1ビットですむデーターしか置きません。
何が起こるかはトリガーテーブルから検索します。
イニシャライズ時に トリガーテーブルを見て地形作業領域にばら撒きます。

構造体配列に値を入れます。1ビットですみますが領域はバイトで、0−255の値をどう使おうかな?
0はなし1はトリガー検査 さて余りましたね^^ 有効な使い方あるでしょうねぼちぼち考えます。

0342名前は開発中のものです。04/05/29 08:01ID:xDPKL8Xl
>>341
なるほど、いいですね。
(もし、トリガーテーブルから検索する時、
位置情報を見ているなら、動く地形等のときやや混乱する気もするけど)

バイトの余った領域(6ビット分)が気になるなんて・・マイコン世代ですね。
0343新人PG04/05/29 13:23ID:XFao9pZD
お疲れ様です。
現在完成しているスクリプトインタプリタ実装部分です。
・点・線・ポリゴン・スプライト・テキストの表示。
・変数として整数・浮動点小数・文字列の定義。
・整数、浮動点小数の計算、文字列の連結といった演算処理。

これがコア部品として、ここからシナリオライタや企画屋さんが使いやすいAPI群を作っていける
段階にはありますが、これからの方針としてどうでしょうか?
正直ゲーム企画屋がプログラミングする羽目になるのは避けたいため限定的な記述のみを採用したいのですけど。
とするとトリガーとの密な連携が必要ですね。難しいです・・・。

現在確実に必要と思う物を挙げます。
・キャラクター定義フォーマット(スクリプトで管理するのは困難なため)
・戦闘定義フォーマット(プログラムに埋め込むのなら要らないけど)
懸案はキャラクターをゲーム中で動的に生成したい場合はどうするかですけど。
また提案します。

#漫喫より書き込んでます。
#ADSL契約用紙送ってから2週間近く経つけど連絡なし・・・。
0344新人PG04/05/29 13:25ID:XFao9pZD
追記:
まとめページ更新していなくてごめんチョ。
そのうちファイルをうpできるようにします。
0345親父PG04/05/29 18:29ID:UBtKpkqa
>>344 おつかれさまです
いよいよキャラデータの話がでできましたね。
現段階できっちり決めるよりは、こういうものが欲しい、こんなもものがあると便利。
などをスケッチするのがいいでしょう。どうせ決まりきったものはあるわけで...

だいぶ前にゲームの概要的な話をネタとして振ったんだけど、誰も相手にしてくれなかったorz...

0346名前は開発中のものです。 04/05/30 03:11ID:DF02WfmI
ライブラリ作るのはあくまで過程で最終的にはゲーム作るんでしょ?
3Dにしようよ、3Dに。
なんか古くて暗いからとっつきにくいよ。見た目とか。
0347名前は開発中のものです。04/05/30 03:16ID:/nGX9ZsE
3Dがいいなら自分で作ればいいじゃん。
3Dのライブラリなんていくらでもあるよ。
0348名前は開発中のものです。04/05/30 03:38ID:+/1k6zgz
2Dのツールこそたくさんある気がする・・・。
0349親父PG04/05/30 21:52ID:whdcT15r
>>346 347
2Dか3Dかはそれほどこだわっていません。
もうすこし内容を詰めた時に選択します。
ちなみに見た目は平面ですが、3Dポリゴン上で展開しているので
3Dのライブラリ?です。

混在するかと思います。2Dと3D 
0350名前は開発中のものです。04/05/31 20:07ID:jkV+M/fp
全てが「じゃあ自分で作ればいいじゃん」で済まされるスレになりました。
0351親父PG04/06/02 14:16ID:WRPhaE/T
サルベージ会社に頼みました。
まずは初期診断、どのような結果が戻ってくるでしょうか...
0352名前は開発中のものです。04/06/02 22:44ID:0e2wqY1U
今日このスレ見つけて一気に読んでしまいました。
タノシカター(*・∀・)=3

当方、完全に素人なのですが、
ゲームとはこのように出来ていくものなんですね。感心しました。
コソーリ今後も応援していきます。
HDD完全復帰するといいですね
0353親父PG04/06/03 00:36ID:4eJyfpo5
>>352
ご拝聴ありがとうございます。
こういうもんなんですかね^^;
楽しんでいただけたならよかったです。
HDDの結果は....まだ届いてないですね。orz....
0354親父PG04/06/03 23:52ID:4eJyfpo5
HDDサルベージ中間報告

業者からのメールでのお話でどうやらPGソース部分の救出可能と判断されました。
原因はヘッドが食い込んでいたそうです。

サルベージ代金は4万円
助かりましたorz... ありがとう神様 そして良心的業者さん

壊れたHDDはふ◎通製でしたが交換後 日立製に変わっていました^^;
0355新人PG04/06/05 19:36ID:wWL88U7t
お疲れ&お久しぶりです。
キャラデータなんですけど、別定義にしておいてスクリプトで読み込める様にするのがいいんですかね?
旧RPGツクールではキャラクタ名称とかは「こんにちは、$1さん。」とかで表していましたね。
これを
import chara "test.chara"
triger main()
{
  chara test;
  text.out("こんにちは、" + test.name + "さん。");
}
とかで出力出来る様にすると便利ですかね。

戦闘定義は、いろいろ考えるとやはり外部に出した方が良いような気がします。
ちょっと想像つきにくいんですけど、意見あればお願いします。
0356新人PG04/06/05 19:45ID:wWL88U7t
キャラクタデータで想像つくものを挙げていきます。
・名称   ・生命値(HPとか)
・特殊能力値(MPとか)  ・レベル ・体力
・賢さ  ・すばやさ  ・運のよさ  ・魅力(?)
・各パラメータの上昇率(パーセンテージでも数式でもOKかと)
・職業とか  ・属性(炎とか水とか?)
・共通台詞の語尾?("だぜ"とか"ですわ"とか?)
・アイテムの所持量

なんでも考えられますね・・・。
0357名前は開発中のものです。04/06/06 02:58ID:EmiSNu9x
ほしゅうう
0358親父PG04/06/06 21:43ID:TFl9YsaT
お疲れさま
キャラデータはなんでも出てきますね。いやほんとに
今回、私が計画しているゲームではアイテムには持続時間(無限大もある)
を持たせておいて、場にセットする。場にセットされたアイテムの種類によって
「コマンド」が使えるようになる。

ターン使用時において コマンドを実行するか、場にアイテムを置くか?
悩むところではあるでしょう。また相手のアイテム持続時間を減らす攻撃など
いろいろと戦術が考えられます。カードゲームみたいですねw
0359名前は開発中のものです。04/06/10 18:42ID:ZmE5oMyN
ほしゅ
0360親父PG04/06/11 20:24ID:yIL1qXgr
HDDのデータサルベージに成功しました
先ほどリビルドと実行を行ないましたが正常に動作いたしました。ちょっと感動

HDDの物理障害でしたが4万円で復旧できました。
それでは製作を再開いたします
0361名前は開発中のものです。04/06/11 20:32ID:FbUf2QVY
おー、実は話半分に聞いてたんだけど、サルベージって本当に成功するんだね。
0362名前は開発中のものです。04/06/12 05:56ID:kitVjPtB
祝☆親父PGタソHDDサルベージュ成功!

        おにぎりワッショイ!!
     \\  おにぎりワッショイ!! //
 +   + \\ おにぎりワッショイ!!/+
                            +
.   +   /■\  /■\  /■\  +
      ( ´∀`∩(´∀`∩)( ´ー`)
 +  (( (つ   ノ(つ  丿(つ  つ ))  +
       ヽ  ( ノ ( ヽノ  ) ) )
       (_)し' し(_) (_)_)

バンガレー
0363親父PG04/06/16 17:29ID:UJduKH1D
さてぼちぼちどっかに上げたいですなぁ。
ってまだまとまってないけどorz...
0364名前は開発中のものです。04/06/18 02:32ID:XddDHYg8
おおう、もう形になってるんですか。
実を言うといまいち概要を掴みかねてるから、実際に動くものを見てみたいなあ。
0365親父PG04/06/22 20:59ID:CADman1B
うん^^ といっても今は リソースツール> 環境+ウィンド 
という程度ですけどね。
0366名前は開発中のものです。04/06/30 18:49ID:SwcLf7ai
おおぅい 何か進展はないのかぁい?
期待age!
0367名前は開発中のものです。04/07/01 00:18ID:X3i18rrm
■関連スレ
http://pc5.2ch.net/test/read.cgi/gamedev/1082083548/
0368名前は開発中のものです。04/07/01 00:24ID:7ydqqCh2
目標の半年までの半分が経過したということで
とりあえず現在の物をアップしてみては?
0369親父PG04/07/02 11:22ID:pX1kWnhH
そうですね^^ 今、サルベージ後復活したソースでビルドしたのですが、
開発環境 9.0Bに入れ替えると何故か「対象のサーーフェースの範囲を越えています」
というエラー(英語)がでて一部機能がおかしくなってしまったので、原因追跡中です。

エラーを出している関数はわかっているのですが、以前と(データー等)を変えていないのに圧制しています。
サルベーシしたHDDの中にアーカイブされたソースもあったので、
解凍して動かしても現象が同じなので開発環境が変わったのが原因かorz...

ちょっと根が深いエラーで今、いろいろ調べています(涙
0370名前は開発中のものです。04/07/03 03:52ID:NtmdvZio
>>369
ビューポートのエラーですか?オレは昨日遭遇しました。
CreateDeviceのパラメータであるD3DPRESENT_PARAMETERS構造体のBackBufferWidth,Heightを設定したら直りました。MSのなんかのサンプルだと省略されていたんですけどね・・・。

D3DPRESENT_PARAMETERSD3DPresentParameters;
ZeroMemory( &D3DPresentParameters, sizeof(D3DPresentParameters) );
D3DPresentParameters.BackBufferWidth = GetScreenWidth();
D3DPresentParameters.BackBufferHeight = GetScreenHeight();
...
hResult = pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &D3DPresentParameters, &pD3DDevice );
■ このスレッドは過去ログ倉庫に格納されています