[過去ログ] ゲームプログラミング相談室【Part5】 (970レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
499: 03/11/20 22:37 ID:Ye+SEMtz(1) AAS
新しいノートを買うのと、MDコンポを譲るのになんの関係があるんだろう。
それから無料で譲るという使い方はおかしい。
無料なら差し上げますとしなければならない。
500: 03/11/21 15:24 ID:umwRRSHD(1) AAS
500Get!
501: 03/11/21 23:43 ID:pGOQg9QV(1) AAS
厨房の質問ですが、ゲームをJAVAで作るってどうなんですか?
重いですよね。C++のほうが絶対速いですよね。
ユーザーのほとんどはWindowsなわけだし、C++のほうがいいですよね
502
(2): 03/11/21 23:52 ID:d5YxEAkF(1) AAS
VisualC++6.0でDirect3Dを使ったゲームを作ってみたいと思い
DirectX9 SDKをダウンロードしてインストールしたのですが
VisualC++でDirect3D8のクラスや関数の引数などの入力候補の表示がされず
使いにくく困っています。
何が原因なんでしょうか?
503
(1): 03/11/22 00:30 ID:ohOBvK1O(1/2) AAS
ヘルプ見りゃいいじゃん。
504
(1): 03/11/22 00:53 ID:LbsHJKcQ(1/2) AAS
>>503
駄目だそんな状態じゃプログラム組めない。

>>502
プロジェクトにC:\DXSDK\Includeに入ってるファイル(DirectX8関係だけの方がいいか?)をすべて突っ込んで保存。
そのあとVCを終了する。
拡張子がdswのファイルと同じフォルダにある拡張子がncbのファイルを削除する。
ここでVCを起動する。
省2
505: 03/11/22 01:02 ID:ohOBvK1O(2/2) AAS
「組めない」のは重傷だな…
506: 03/11/22 11:49 ID:V+srHBX5(1) AAS
IrisFilterの特許とは?
2chスレ:cg

「申請中」の特許をネタにフリーソフト作者に恫喝メールを送りまくるシェアウェア作者。
公開停止した人まで出たモヨリ。
お前らも暈しいれるときは絡まれないように気をつけろよ。
507: 502 03/11/22 18:26 ID:AYzmgC7c(1) AAS
>>504
そのやり方で出来ました
ありがとうございます。
やっぱりあるのとないのじゃかなり違いますね
これからがんばってみます。
508
(2): [あああああああああ] 03/11/22 23:29 ID:6bfsxbS4(1) AAS
次のプログラムはどのように作ればよいのでしょうか?

@あるキャラクターを作成する(変数名cha)

Aある武器を作成する(変数名wep)

Bキャラクターの攻撃力を初期化(初期値は20)

C武器の攻撃力を初期化(初期値は12)
省3
509: 03/11/22 23:48 ID:LbsHJKcQ(2/2) AAS
>>508
まずゲーム作ることを一旦やめることをお勧めする。
基礎能力がまるで足りない。
この状態だと、今はおそらくどんなアドバイスをしても駄目だと思う。
C/C++の入門書をたくさん読むことが先だと思う。
(とにかく基本的なプログラムをたくさん写してみることが大事だと思う。)

「できなくてもやらなくちゃいけないんです」とかそういう状況なら
省2
510
(1): 03/11/23 00:04 ID:5ilOVNRf(1/4) AAS
>>508
502 に禿同
でも一応。
@あるキャラクターを作成する(変数名cha)
clase C_Cha {
...キャラの内容...
};
省13
511: 03/11/23 00:05 ID:5ilOVNRf(2/4) AAS
みす  ×502   ○509
512: 03/11/23 00:10 ID:5ilOVNRf(3/4) AAS
AA省
513: 03/11/23 00:21 ID:7lIkxGuJ(1/2) AAS
class CHero{
int cha_id; // キャラのID
int strength; // キャラの力

CWeapon* pWeapon; // 装備武器

void setAttack(const CWeapon* p){ pWeapon = p; } // 武器を装備する
int getAttack() const{ return strength + pWeapon->attack; } // 攻撃力を返す
};
省5
514
(2): 510 03/11/23 02:37 ID:81yBiszZ(1) AAS
まだミスしてた --; 脳内コンパイラはミスだらけだ・・・・合体して動くの出すよ
#include <iostream>
using namespace std;// <---これいらないかも

class CWeapon{// 武器のクラス
public:
int attack;// 武器の攻撃力
CWeapon(int pow) { attack=pow; }
省20
515: 03/11/23 03:09 ID:7lIkxGuJ(2/2) AAS
ちなみに何も装備しないで(素手で)攻撃するとエラーでるよ
あれだ…発売当時のRPGツクール2003のバグ…。

エラー出ないようにするにはどうすればいいのか考えてみてね。
516: [あああああああああ] 03/11/23 12:17 ID:tSKJTIzS(1) AAS
>>514 わかりやすくて(・∀・)イイ!
517
(1): 03/11/23 13:09 ID:QtG4HSSG(1) AAS
(・∀・)イイ!じゃなくてとっとと(・∀・)ヤレ!
518
(1): 03/11/23 16:22 ID:5ilOVNRf(4/4) AAS
>>517 とっとと(・∀・)ヤレ!
とは、エラー処理か?、簡単すぎて下らん。
やりたいんなら、おまえがやれ!
519: 03/11/23 17:07 ID:WauLd5th(1) AAS
>>518
きっと君は勘違いボーイ
520: 03/11/23 18:41 ID:J4atYXVd(1) AAS
エラーももちらんだが次は敵を作成して(・∀・)ヤレ!
521
(2): [ ] 03/11/24 00:05 ID:P4JvmJJc(1/2) AAS
放物線を描きたいのですが
最も処理が軽くて簡単な方法は何ですか?
522: 521 [ ] 03/11/24 00:07 ID:P4JvmJJc(2/2) AAS
あ。整数のみの処理でです。
523: [あああああああああ] 03/11/24 00:30 ID:y1O+xSWo(1) AAS
だれか514の続きをしてやれ
524
(1): 03/11/24 01:13 ID:jvU8bqbW(1) AAS
>>521
y = x * x;
525: 03/11/24 09:56 ID:UUxn7nSE(1) AAS
>>524は何故ベストを尽くさないのか?
526: 偽524 03/11/24 10:53 ID:rvwKDc/0(1) AAS
ふぉぉぉぉ!!
ベストだーー!!
527: 03/11/24 11:21 ID:fe0QjvTd(1) AAS
ベストエフォートです
528: 03/11/24 15:41 ID:HoJo3JBu(1) AAS
今時整数のみとかいってるなんてプゲラッチョすぎてもうダメポ
529: 03/11/25 04:50 ID:b47pLzot(1) AAS
ゲームだし結局は整数が最速だろ?(プゲラウヒハムヒョー
530
(1): 03/11/25 05:09 ID:pJ/rVsUL(1) AAS
放物線なら三角関数で描けるよ。
531
(1): 03/11/25 06:37 ID:G5ewz3ab(1) AAS
>>530
まあ三角関数(cosかなんかを0まわりで)を二次近似したらそんな項が出てくるから
間違っては無いけど、なぜx^2でいかんのかと・・。
532: 03/11/25 20:37 ID:myR/xvCb(1) AAS
528はヘボプログラマーかな?
533: 03/11/25 23:56 ID:Qk78KVyQ(1) AAS
画像でも音でも浮動小数使う時代だしなー
534: 03/11/26 02:16 ID:FDG9W9vy(1) AAS
>>531
三角関数云々は由緒あるネタなので、あまり気にするな。
535
(1): 03/11/26 05:08 ID:+cuEUmib(1) AAS
質問。
浮動少数のゼロ割チェックってどうしてる?
たとえば長さがゼロのベクトルを正規化する
ときなんかに長さを求めてゼロであればエラーでとめたりしてるの?
536: 03/11/26 08:47 ID:ueZRq0X0(1/7) AAS
>>535
ゼロだったらじゃ駄目だろ?
ゼロ付近(かなりあいまいだが)を調べなきゃ。
537
(1): 03/11/26 09:48 ID:txivx5Le(1) AAS
タスクシステムとはいったい何なんでしょうか
ぐぐってもいまいちわかりません

情報工学にでてくるプリエンプティブなマルチタスクとも違うようですし
どういういったものか教えてください

今の理解では関数ポインタを持つ線形リストなのではないかと思っているのですが……
538
(2): 03/11/26 10:47 ID:ueZRq0X0(2/7) AAS
>>537
そんなもの必要ないから知らなくていいよ。

ゲーム制作者がいってるタスクってのは
擬似タスクとか誰かがつけた奴だな。(まぎわらしいしはずかしいからやめてほしい)

>今の理解では関数ポインタを持つ線形リストなのではないかと思っているのですが……
ああ、そんな感じ、そんな感じ。

もういい加減糞設計だって気づいてほしい今日このごろ。
539: 03/11/26 11:21 ID:RsfevxOF(1) AAS
てか、JAVAで携帯のシムシティ風ゲームつーか、シムシティ作りたいんだけどね、今のJAVAでつくれるのかと。どうでしょうか。
540
(1): 03/11/26 11:52 ID:PfSyQyV9(1/2) AAS
>538
単にstateパターンでいいんでない?
541
(2): 03/11/26 12:08 ID:ueZRq0X0(3/7) AAS
>>540
いや、つーかさ、結局、種類が増えると
「switch caseをずらずらたくさんかかなくてはならない」
ってところが複雑になる要因であって、
これ↓って

外部リンク[html]:member.nifty.ne.jp

何も解決してないと思うんだけど。
542: 541 03/11/26 12:11 ID:ueZRq0X0(4/7) AAS
541はタスクの話と繋がるまでちと長めの補間がいるかも。
Stateパターンだけの話ね。
543: 03/11/26 14:46 ID:Weo6peER(1) AAS
JavaのSwingか何か使ってNetHack風のゲーム作ってみませんか?
544
(2): 03/11/26 14:56 ID:gp+Vdr2Y(1/3) AAS
>>538
>もういい加減糞設計だって気づいてほしい今日このごろ。

設計の善し悪しは気付いたり感じたりするもんじゃねぇんだ。ヴォケ。
おまえが無益性を論じて証明してみせろ。
545
(2): 03/11/26 16:44 ID:ueZRq0X0(5/7) AAS
>>544
>設計の善し悪しは気付いたり感じたりするもんじゃねぇんだ。
いや、設計はそういうもんだよ。
直感でわかりやすくなければその時点で破棄して間違いない。
546: 03/11/26 16:49 ID:TJpicHgi(1) AAS
>>544
>>545
もしもこの二人が分かり合えたら、
イスラエル - アラブ間での長年の抗争を解決する銀の弾丸が見えてくるような気がする
547
(1): 03/11/26 17:07 ID:gp+Vdr2Y(2/3) AAS
>>545
直感で、というのはいったい誰の直感で?
ある設計に直面したときに誰もが同じ直感を得ると思ってる?
548: 03/11/26 17:20 ID:ueZRq0X0(6/7) AAS
>>547
>誰の直感で?
自分のでいい。

>誰もが同じ直感を得ると
なんで誰もが同じでなければいけないの?

大事なのは「わかりやすい」ということかどうかだ。
同じである必要はない。
省3
549
(1): 03/11/26 17:26 ID:ziRRWzvj(1) AAS
他の人にはわからないけど自分だけにはわかりやすい設計なのですか?
550
(2): 03/11/26 17:35 ID:ueZRq0X0(7/7) AAS
>>549
ちがうな。
そもそもオブジェクト指向自体
「現実に則したものにのっとって設計すればみんなだいたい同じになってわかりやすいんじゃね?」
みたいないい加減なものなんだから、これにのっとって組む限り
どうあがいたってキャパシティはこんなもんだろ?
逆にこれを超えようと努力するな。
省1
551: 03/11/26 17:56 ID:gp+Vdr2Y(3/3) AAS
>>550
脱力しちゃって突っ込む気もおきないよ…
頼むから、せめて初心者も見ているこういう場所でだけは
そういういい加減なことを自信満々で書き込むのは我慢できないか?
他ではやっても構わんから。
552: 03/11/26 18:38 ID:PfSyQyV9(2/2) AAS
550=OOスレの48 とみた。
553: 03/11/26 18:46 ID:zEqLFBTd(1) AAS
俺は、>>550は、
まともな事いってると思うけどな。
MだかVだか言ってる奴の方が脱力するわ。
554
(1): 03/11/26 19:57 ID:xTI5bNZ5(1) AAS
むかしアイボのソースみたら、case文の羅列で萎えたことがあるなぁ。
たくさんのcase文と、たくさんのclass、どちらが幸せなんだろう。

MVCモデルも、いわゆる「最近の」ゲームには向かないだけなので、
一概に否定するのはどうかと思う。
555
(2): 03/11/26 22:07 ID:Hfp/lcva(1) AAS
まぁ、一般的にゲームは、業務系プログラムよりは「保守」を考える必要が無いからね。
だから、書きっぱなしに特化した方法論が有効だというのもうなずける。
純粋にコストの問題だけどね。
556
(1): 03/11/26 23:25 ID:kCY8Ly/h(1) AAS
>>555
いつもこの類の発言が出るが、比べる事自体が無意味。

一般的に業務系プログラムは、ゲームプログラムと違って
パッチ当てたりバージョンアップしたりして何度もコードいじれるから
「保守」の名目のもと、バグがあっても直せるって感じで作るからね。
だから、ゲーム見たく発売後は修正は無理だからって徹底的にバグチェックしないしね。
純粋にコーディング姿勢の問題だけどね。
省2
557: 03/11/26 23:45 ID:Tq38HXMm(1) AAS
>>556
ええと…、>>555>>556が言っていることを否定しているように読めましたか?
比べてるって言うか、その分野にはその分野のやり方があるっていう>>556
同じことを言ってるんだけど…
558: 03/11/27 00:40 ID:j94eY1vB(1) AAS
……どうも最近、勝手に脳内で仮想敵を作り上げて
それに見下すように反論する性癖のヤツが常駐している気がするよな。OOスレもそうだが。
559: それはそれで面白いんだが 03/11/27 00:56 ID:ghFgKWyL(1) AAS
「ゲーム」「プログラマ」とそういう香具師が集まりやすい板のテーマだからね。。。
自戒自戒っと
560: 03/11/27 09:18 ID:7MaG36fL(1/2) AAS
自我崩壊
561: 03/11/27 09:47 ID:1HzzDQie(1) AAS
list<VE*>brain;
brain.push_front(static_cast<VE*>(558));
562: 03/11/27 09:53 ID:fhZO2C7/(1) AAS
pSoNet* = new SoNet2;
pSoNet->Destructor();
void SoNet::Destructor(){Attack(brain)}
563: 03/11/27 20:05 ID:wD8LR/s0(1) AAS
ゲームでもネトゲの場合だと、後々までの機能追加や修正に耐えられるような姿勢が求められるけどね。
それこそ途中でPGや開発会社が替わっても保守できるようにプログラムの整理やドキュメント化といった作業が必要になるし、
DB(ユーザーのデータ)が絡んでくる都合上、最初の設計段階でかなりキチンとしてないと、いずれ破綻するしね。

ネトゲ開発はゲームの知識に加えて、業務系の高度な知識も要求される、かなり難易度の高い分野だと思うぞ。

そういう意味じゃ、
 ネトゲ開発>>>>業務>>>>コンシューマ>>>>携帯アプリ
(ま、煽りだけどな)
564: 03/11/27 21:10 ID:7MaG36fL(2/2) AAS
ネットゲの方がバグだらけでも、パッチで継ぎ接ぎできる。
失敗したら再パッチ。
そういう意味ではプログラマに緊張感がない。
565
(1): 03/11/27 21:43 ID:BoqYAr6p(1) AAS
>ゲームでもネトゲの場合だと、後々までの機能追加や修正に耐えられるような姿勢が求められるけどね。
ついでにいうと、継続的に運営し、かつアップデートすることも求められるね。
大変すぎ。

>失敗したら再パッチ。
>そういう意味ではプログラマに緊張感がない。
そうかねぇ?ビッグネーム以外は、それやると速攻で寂れると思うんだが…
566: 03/11/27 22:05 ID:xI+aEUwA(1) AAS
>>554
おそらくswitch文の羅列の方がコンパクトで速く動くよ
567: 03/11/28 02:52 ID:zaH9w9Q9(1) AAS
組み込みだしね
見た目がオブジェクト指向してるけどw
568: 03/11/28 02:59 ID:9gvB7mcn(1/2) AAS
ホンダの二足歩行ロボのソースも、case文の羅列が何十画面も続いていたぞ。
まさか制御系の常識なんてことはないだろうが。
569: 03/11/28 03:02 ID:9gvB7mcn(2/2) AAS
>>565
ネットゲーのパッチ当てほど緊張感を要するものはないと思うよ。

俺がJavaアプレットのゲームくらいしか経験ないけど、
下手なことしたら、二次災害で一挙に全プレイヤーのデータがおかしくなるから。
570: 03/11/29 23:15 ID:pBEeDpxB(1) AAS
アルゴリズム関連になるけど、いいですか?
縦シューティングゲームを作ろうと思うんですけど
リプレイを記録するには如何すれば良い?
自分ではコントローラーから入力された信号を
そのまま記録してtxtファイルにでも出力すれば良いと思ったんだけど、
それでは処理落ちの時やら
ゲーム内での自機の動作に関わらずランダムに動作する敵の行動が把握できない。
省4
571: 03/11/30 00:36 ID:+XdWbi7E(1) AAS
ランダムは本当にランダムなわけではないのだから、記録するときに何の障害にもならない。
ついでに入力そのものではなく、それをどう処理したかを記録すればいいだけの話。
572
(1): 03/11/30 00:59 ID:qgJCqKCU(1) AAS
>>ランダムは本当にランダムなわけではないのだから、記録するときに何の障害にもならない。

それは何故ですか?
ランダム=規則性がない → リプレイが表現できない
になるんじゃないでしょうか?
何か間違ってます?
573: 03/11/30 01:16 ID:qCnBVWJj(1) AAS
逆にソフトのみで規則性の無い乱数を
作成する方法があったら教えてほしい。
574
(1): 03/11/30 01:26 ID:N9tcc+S+(1) AAS
>>572
現状の乱数ルーチンは、ランダムのシードが同じなら乱数ルーチンを呼び出した回数ごとに値は常に同じ値になる。
(例外があるかは知らん。メルセンヌツイスター辺りは違うんだっけ?)
なので、ゲームを開始した時点で特定の値をシードに設定しておけば、基本的にはまったく同じ乱数が発生するので問題ない。
逆に、毎回違う値を出したい場合はシードに日付や時間を設定してやる。
コンシュ−マなんかでタイマーが無い場合は、タイトル画面などのユーザー入力を伴う部分で毎フレーム乱数を発生させておくことで
乱数に変化を持たせるようにしたりします(毎回まったく同じフレーム数でボタンを押せる人はいないので)
575: 03/11/30 03:48 ID:zskFBT42(1) AAS
リプレイが必要なゲームでは、ランダムシードも一緒に保存しておくので、
再現できます。

処理落ち:
描画も入力も全て処理落ちするのが原則なので、CPUにとっては処理落ちは無視できます。
人間が見たときに処理落ちしているように見えるだけ。
ま、おかしな作り方されてれば処理落ちでリプレイ狂うこともあるだろうが、それは設計を見直せ。
576: 03/11/30 07:28 ID:wLSg/D/g(1) AAS
フレームレート固定のゲーム(シューティング、アクション)でリプレイつけました。
・再現性のある乱数を使う
・キー入力の記録
だけでできます。

例えフレームレート固定でなくても、
更新時間とかdtも一緒に記録しておけば問題ないはず。

FPSのネットゲーでリプレイ記録できのは、あれはどうやってるのかな。
省1
577: 03/11/30 21:28 ID:8v/2nacI(1) AAS
>>574
メルセンヌはシードの桁がものすごく大きい(=周期がものすごく長い)だけで
普通の乱数と同じだよ。(あれは乱数の「質」のほうが本質)
578
(1): 名前は開発中のものです 03/12/01 15:57 ID:k4JdNCPO(1/2) AAS
PCで作成しているのですが、リプレイデータの保存はどうするのが
一般的なのでしょうか?

プレイ毎にデータ長が違ってくるので、現在、プレイ開始時に
ファイルを追加モードで開いて、プレイデータを直接ファイルに
書き込んでいき、プレイ終了時にファイルを閉じるという方法を
取っていますが、方法としてはどうなのでしょう。今のところ
トラブルはないんですが…。
579
(1): 03/12/01 16:09 ID:BBKzfG41(1) AAS
ファイルに書き出しながらってのはパフォーマンス的によくなさそう。

・いっぱいリプレイ用のメモリを確保しておいて、足りなくなったら記録打ち切り
・ある程度のメモリを確保しておいて、足りなくなったら新たに確保していく。
 確保したメモリはリストなどにして管理する。
で、プレイが終わったら一気にファイル保存(+開放)、あたりかな?
1-
あと 391 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.025s