トップページgamedev
996コメント396KB

【初心者歓迎】スレを立てる前にココで質問を【Part5】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。04/03/06 00:58ID:FXdKwbSn
ふと疑問に思った事があったらスレを立てずにまずはここで質問
してみましょう。あなたの長年の悩みがたった一つのレスで解決して
しまうこともあります。回答があるまでに数日間かかることもあるので
辛抱強く待ちましょう。

前スレ
ゲームに関する質問はここでしてね
http://pc2.2ch.net/test/read.cgi/gamedev/1057318143/
【初心者歓迎】スレを立てる前にココで質問を【その4】
http://pc2.2ch.net/test/read.cgi/gamedev/1044954179/

その前

【その4】http://pc2.2ch.net/test/read.cgi/gamedev/1043417025/l50
【Part3】http://game.2ch.net/test/read.cgi/gamedev/1032814540/
【Part2】http://game.2ch.net/test/read.cgi/gamedev/1013645518/
【Part1】http://game.2ch.net/test/read.cgi/gamedev/1005038203/

関連スレ・その他
>>2-3
0746名前は開発中のものです。04/07/19 00:50ID:HMZmVFac
OpenGLのどこがOpenなのかと小一時(ry
Mesaの事を指してるのか?
規格自体はDirectXもOpenGLも公開されてるだろ。
その上でボードメーカーが独自の実装で対応してくるわけで。
規格策定者がM$かSGIとか色々な人たちの集まりかが違うだけで。
0747名前は開発中のものです。04/07/19 00:54ID:IJbVGYi4
>>746
初心者向けに噛み砕いたので言葉足らずになっちょるのは勘弁しておくれ
そのへんまで丁寧に説明しだすと長くなりそうだったのでな
0748名前は開発中のものです。04/07/19 01:00ID:ApxmKmGm
>>745
悪いことは言わない。まずは質素なシステムのものを作ることをオススメする。
冗談でも何でもなく、本当の話。
0749名前は開発中のものです。04/07/19 01:06ID:IJbVGYi4
>>733
吉里吉里のスクリプトは知らんので概念的な話だけする。
1.まず、ある程度ランダムな組み合わせを数種類用意する。
{"運動","運動","寝る"}
{"運動","勉強","寝る"}
{"勉強","勉強","寝る"}
2.それを出したい確立にあわせて複製する
{"運動","運動","寝る"}
{"運動","運動","寝る"}
{"運動","運動","寝る"}
{"運動","勉強","寝る"}
{"運動","勉強","寝る"}
{"勉強","勉強","寝る"}
3.乱数を引いて、引いた数字nに応じてn番目の組み合わせを適用する
n=5だったら{"運動","勉強","寝る"}

健闘を祈る
0750名前は開発中のものです。04/07/19 01:11ID:lwkR0NhW
すいません、最後に皆さんにご質問させて下さい。
いろいろな方のご意見を聞いたところ現在のPCにほぼ標準に入ってるOS、Windowsですが購入する時点で2,3万追加されていてそれがほぼ直で
2,3万Microsoftへ入るそうなのですがこういった部分でMicrosoftが安定して日本で稼がれている状況でソースは公開されない。
こういった状況で安易にWindowsOSで適当にVCとかでプログラムを打ってマウスがどうやって動いてるかとかそういった部分を考えずにプログラムを
打てる状況にある日本のソフトウェア産業、皆さんはどういった考えをお持ちでしょうか。
いずれ崩壊するとか当分はMicrosoftだよりなど皆さんのご意見お願い致します。
0751名前は開発中のものです。04/07/19 01:13ID:ApxmKmGm
>>750
スレ違い。
0752名前は開発中のものです。04/07/19 01:14ID:IJbVGYi4
>>750
ねえ僕、WSとか汎用機とか組み込みとかいう言葉を聞いたことはないかい?
ないの?あっそう。困ったな・・・おじさん話長くなりそうだから他の人に任せるよw
0753名前は開発中のものです。04/07/19 01:17ID:ZjuA9JH9
どこかのラマの人がアセンブラを知っているとDXなんかのシェーダーを組むときに野生のカンがつくって言ってたなあ……
アセンブラってJPとかいうコマンドが出てくる奴だったっけ?
075473304/07/19 01:25ID:5FveKx0n
>>749
>2.それを出したい確立にあわせて複製する
目からウロコ……!!
ランダムで出た値と確率の合わせ方でごっちゃになっていたのですが、組み合わせのほうを複製すればいいんですね。
ありがとうございました! がんばります。
0755名前は開発中のものです。04/07/19 01:37ID:IJbVGYi4
>>754
概念はわかってもらえたようじゃね。
まあ、蛇足かもしれんが実際の実装では、
「乱数がnだったら何番目の組み合わせを引く」かを表す配列を作った方がいいぞ
{1,1,1,2,2,3}
みたいのを作って
乱数が1〜3なら1番目の組み合わせ、といった感じじゃな
075673304/07/19 02:01ID:5FveKx0n
>>755
それは「組み合わせを複製する」のではなくて、
「乱数の範囲によって選ぶ組み合わせを変える」ということですか?

乱数≧99なら1番目、乱数≧75なら2番目、乱数≧50なら3番目・・・
といった感じでしょうか。
0757名前は開発中のものです。04/07/19 02:08ID:IJbVGYi4
>>756
そういうことじゃ、プログラムの条件分岐で組んでもいいんじゃが、
テーブルにしといた方が後々修正しやすい、ということじゃ
0758名前は開発中のものです。04/07/19 02:11ID:ApxmKmGm
説明した本人に横槍入れるのもなんだが、>>755>>756はイコールじゃないだろ;
まぁ>>756の考え方が出来るならそれに越したことはないけど。
075973304/07/19 02:14ID:5FveKx0n
わかりました。やってみます。
ありがとうございました。(^人^)
0760名前は開発中のものです。04/07/19 02:16ID:IJbVGYi4
>>758
まったくそのとおりなんじゃが、
「まあ概ねわかってるみたいだし、前には進めそうなのでいっか」
と大人の対応をしたつもりだったんじゃが、
ここは厳しく突っ込んだ方がよかったんかのう?この場合w
076173304/07/19 02:20ID:5FveKx0n
ありゃ、解釈間違ってたんですね。読解力なくてすみません…。
本当はどういう風だったんでしょうか。
0762名前は開発中のものです。04/07/19 02:23ID:IJbVGYi4
いや、条件分岐を使わずに配列を使って楽をする方法、を提示したわけじゃが、
本来あるべき条件分岐に引き戻ってしまった、というだけじゃて。
どっちでもやりたいこたぁ実現できるので気にせず進むとよろしいぞ。
076373304/07/19 02:32ID:5FveKx0n
ありがとうございます、ちょっと分かりました。
とりあえず「配列」でぐぐってみます。こっち使ったほうがすっきりしそうですね。
0764名前は開発中のものです。04/07/19 02:37ID:ApxmKmGm
>>760
俺は子供か(´д`;)

まぁそうだろうとは思ったんだが、違うものは違うと説明したほうがいいかなと。
余計なことしたんだったら謝る(-人-)
0765名前は開発中のものです。04/07/19 15:24ID:PDTxUtS9
質問なんですがスマッシュブラザーズのような対戦アクションをつくろうと思うのですが
思考ルーチンがうまく思いつきません。
やはり行動やキャラの位置などで評価をつけて最適なものをさがしていくしかないのでしょうか?
0766ぁきまさ04/07/19 16:01ID:j7btYjVr
http://www.1101.com/morikawa/index_AI.html
きっとこういうことです。
あと、質問はageていいと思うよ。
0767名前は開発中のものです。04/07/19 16:41ID:SVeDBz/F
板違い、スレ違いならスマソ

ゲームデータにあるグラフィックデータの解析ってどうやるの?

具体的には、圧縮されたグラフィックデータファイルにグラのデータがあって、
そこから抜き出して、フォーマットを調べる。
ってことをやりたんだが。
0768名前は開発中のものです。04/07/19 16:43ID:SVeDBz/F
すまんage忘れた。
それから言葉遣いが悪かった。

やりたいんですが、よろしかったら教えてください。
ですた。
0769名前は開発中のものです。04/07/19 16:44ID:SVeDBz/F
…ageれてなかったし。スレ汚しゴメンナサイ
0770名前は開発中のものです。04/07/19 16:46ID:zNSTrUiZ
>>767
ttp://ku-www.ss.titech.ac.jp/~yatsushi/analyze.html
とりあえずここ全部読め
直接は参考にならんだろうけど
0771名前は開発中のものです。04/07/19 16:49ID:SVeDBz/F
>>770
d 逝ってきます
0772名前は開発中のものです。04/07/19 16:52ID:ApxmKmGm
ここ(ゲ製板)で解析話ってアリなのか?
0773名前は開発中のものです。04/07/19 20:32ID:ZjuA9JH9
>>766
それは違うだろ……
おそらくスマブラの思考ルーチンも似非AIで真性AIなんて使ってないと思う。
ていうか真性AI使ってるゲームってがんばれ森川君とガンパレ(これも怪しいが)ぐらいしか知らんぞ

似非AIっていうのはあらかじめ定められた条件分岐で意思を決め、成長しない思考パターンのことね。
イマドキの真性AIは学習機能が必須。
0774名前は開発中のものです。04/07/19 20:33ID:NZda3o20
微妙だな。解析したものでゲーム作るんなら関係あるだろうが。
077577004/07/19 20:36ID:TZoI5FHR
それなりにゲ製作の糧になりそうなんで今回はアリかなと思ってレスした
ちょうどピッタリのURLを控えてたってのもあるけど

単なるクレクレだったらナシだね
(たまに立つ「PS2のムービーってどうやってパソコンで再生するの?」みたいなスレ)
0776ぁきまさ04/07/19 21:26ID:j7btYjVr
>>773
真性AIで学習させておいて、
学習機能を取り払って似非AIを実装してるんじゃないかなぁと勝手に思ったんですが、
しょっぱなから似非AIを構築するんですね。
スマブラ級になると(天下の任天堂様なだけに)えらくソースコードが複雑になりそうなんで、
しょっぱなから似非AIは無いだろうと勝手に考えてました。
0777名前は開発中のものです。04/07/19 22:09ID:ZjuA9JH9
>>776
そんな無駄なことはせんだろう……
簡単なのだったら、
・自分との距離と残HPから敵を検索、ロックオン
・攻撃開始、撃破、相手から致命傷を受ける、および長時間の格闘を要した場合は↑に戻る
のが一番単純かな。スマブラをやりこんで研究するしか手がないが、ゲームでありがちな一般的AIなんかはゲームの製作本に良く載ってるよ。
森川君の学習機能は人間の脳細胞のネットワークをマネして、周囲の環境に対応する行動との関連度合い(重み)を正誤から判断して毎回調整式で調整してるっぽいね。
ボタンがある→押した:(ユーザー「正解」)→ボタン・押す間の重みを強くする
鳥がいる→投げた:(ユーザー「不正解」)→鳥・投げるの間の重みを弱くする
ウンコがある→嗅いだ:(AI本体「不快」)→ウンコ・嗅ぐの間の重みをとても弱くする
のような感じで。
実際は属性分け(リンゴで学習した「丸い・食べる」間の強い重みを丸い爆弾でも適用して爆発させてしまう、とか)もしてるっぽいし、
もしかしたら多段階で判断させとるかもしれん。
「ニューラルネットワーク」「パーセプトロン」とかで検索するとわかるかも……生半可な知識だが。
0778ぁきまさ04/07/19 22:55ID:j7btYjVr
>>777
業界でも(概念としては)意外と単純に実装するんですね。
http://www.1101.com/morikawa/index_AI.html
なんか最近このURL張るの多いですが。一応。
0779名前は開発中のものです。04/07/19 23:37ID:IJbVGYi4
>>765
まあ、その手合いの対戦ゲーぐらいだと、本当のAIまでは普通持ってない。

ごく簡単に概念だけ説明すると
1)相手との距離、前に起こした行動やらをもとに「現在の状態」数を作る。
2)「現在の状態」の数だけ「その際取りうる可能性のある行動」テーブルを用意しておく
3)乱数を引いて、「取りうる行動」テーブルから次に取る行動を決める

この「行動」テーブルを
{ぬるい反応...厳しい反応}と並べておいて
「easy」だとなるべく左から「hard」だとなるべく右から取るようにするのが普通
0780名前は開発中のものです。04/07/19 23:46ID:IJbVGYi4
779補足
2D格ゲーあたりで、「very Hard」あたりにすると、
反応自体はエグいけど、案外行動が単調になって読みやすくなったりするのは
テーブルの候補が狭まって、次の行動の候補が限られてくるためだったりする。
078176504/07/19 23:48ID:akKgvtvQ
みなさんありがとうございました。
とりあえず>>779さんの概念を参考に
まず攻略本を買ってきてキャラの動きなどや必勝パターンなど研究し
実際に再度注意しながらスマブラをやって勉強しようと思います
078277004/07/20 00:20ID:mfOQLZ8/
>>777
学習ならパーセプトロンだろうけど、今回はオートマトンっぽい気がする

>>781
スマブラは複雑だからまずは初期の格ゲーから見ていくのがいいと思う
例えばスト2のCPUガイル戦だと

こちらがある程度間合いを取る→ガイルはしゃがむ
├┬→こちらが近づく→ガイルは足払いをする
│└→こちらが近づかない→ガイルはカウントが溜まったらソニックブームを撃つ
│  └→ガイルはソニックブームを撃った後こちらに近づく
└┬→こちらがジャンプで近づく→ガイルはサマーソルトキックで反撃する
 └→こちらがジャンプで近づく→ガイルはカウントが溜まってないのでジャンプキックで反撃する

こんな風な状態遷移をするのよ
>>779の言う「行動テーブル」をガイルの場合で例に表しただけだけどね
0783名前は開発中のものです。04/07/20 00:21ID:mfOQLZ8/
名前消し忘れ・・・スマン
078477904/07/20 00:41ID:jDncQmgy
>>782
補足さんくすこ

研究題材の初期格ゲーだと、スト2はもちろんだが、
案外おすすめなのがスーファミで一杯出たスト2の粗悪コピー系粗製濫造格闘だ。
何とは言わないがあのへんとかこのへんとかなw
クソゲーっぽいのの方が良い、この場合。
なぜかと言うと、テーブル割りが単純なので、素人でも分析しやすいのだわw
0785名前は開発中のものです。04/07/20 09:38ID:TIjHVPPU
>779

これ、うまくやれば学習型にもできるな。
選択肢に用意してない行動は学習できないけど。
0786とむ ◆TOM/oiT7jE 04/07/20 15:19ID:zMYLWV5u
誰かペイペッポオのAAだしてください
0787名前は開発中のものです。04/07/20 18:30ID:CjjqkQkQ
AA板にでも行きやがれ
0788名前は開発中のものです。04/07/20 23:44ID:opbEx0+r
>>785
どんなタイプのAI(GAでもNNでも)を持ってきたとしても
選択肢に存在しない行動は取れないよ。
形はどうあれ、最終的に「ゲーム」という極度に抽象化されたものへのアウトプットが必要だから。
多くの場合には行動に修練度(時間や精度みたいな)的なパラメータを持つ事で、行動の範囲を広げる。
0789名前は開発中のものです。04/07/21 17:03ID:5QCYqUEJ
バーチャファイターは一時期学習機能ついてたけど
あれは確かCPUがレバーを直接入力してたよな。

VF1でアキラの膝をCPUが出すけど、どうやってるのか開発者がわからんかったとか。
0790名前は開発中のものです。04/07/22 21:45ID:z1h/Hfir
質問させて頂きます。
Unix Linuxでゲーム製作している板はございませんか?
0791名前は開発中のものです。04/07/22 21:48ID:dsDe4Hb2
[game] ゲーム on Unix
http://pc5.2ch.net/test/read.cgi/unix/1082601568/
【GBA】Linuxから目覚めるぼくらのゲームボーイ!
http://pc5.2ch.net/test/read.cgi/linux/1070983168/

SLGスレとMMORPGスレでLinux使ってる人がいた
079279004/07/22 22:00ID:z1h/Hfir
どうもありがとうございました。m(_ _)m
0793名前は開発中のものです。04/07/23 21:36ID:7gbUqWWz
んーと、吉里吉里のトランジションルールを作りたいんだが、
問題が一般的すぎるのでここに書きます。

800x600くらいの領域を、ランダムな傾きの直線で一様に埋めたいんだが、
どういう方法が密度バラつきなくできますか?

今やってる方法は、
1) MTで-10000〜9999な乱数を4つ取る
2) 1)を2点の座標とみなし、2点を通る直線を適当に800x600の矩形でクリッピング

これでも結構偏りが出てる気がする。気がするだけかもしれないけど…
なんか定番のやり方とかあったら教えてください。
0794名前は開発中のものです。04/07/23 21:59ID:BeLzsHsh
その画面を何に使うか目的が見えないので(吉里吉里シラネ)、
的外れなのかもしれんけど、
とりあえず乱数で取った点が(800,600)の矩形内だったら、
乱数を引きなおしては?線が短くなって無意味になる時がある気がする。
0795名前は開発中のものです。04/07/23 22:20ID:7gbUqWWz
>>794
目的は、画面フェイドIN/OUTの時に使う定義ファイルで、
スクリーントーンみたいな均一な模様にしたいのです。

アドバイスのとおり、矩形におさまるような点は無視するようにし、
さらに乱数のフィールドを8000x6000にして中央を取るようにしてみたら
大分偏らなくなりました。ありがとうございました。
0796名前は開発中のものです。04/07/24 04:03ID:qEmxnU+2
物体の衝突をテーマにしたゲームの作成について、意見交換とういうか
ブレーンストーミングするスレ立てたいのだけど、これはローカルルール
に違反しないかな?

↓のゲームっぽいもの作成したので、導入としてこれを使うから
単発スレのような感じになってしますから少し無理でしょうか?
http://www.geocities.co.jp/SiliconValley-Bay/4652/balls.htm
http://www.geocities.co.jp/SiliconValley-Bay/4652/cabin.htm
0797名前は開発中のものです。04/07/24 06:20ID:fm3xWK8O
やっぱ単発スレとみなされてしまうのではないでしょうか
↓ここはどうですか?

ゲームのための物理(力学)
http://pc5.2ch.net/test/read.cgi/gamedev/1018255106/
0798名前は開発中のものです。04/07/24 06:23ID:sBREqJXF
>>796
【Collision Detection】
http://pc5.2ch.net/test/read.cgi/gamedev/1015484028/
0799ひろさん ◆EriosvaGhM 04/07/24 06:41ID:1lN+r1r0
         ,r::::::::::::::::::::、:、   / ̄ ̄ ̄ ̄ ̄ ̄ ̄
          |:::∧_∧::::::::|:::|   |
         ⊂(@∀@)つ|:::| <>>1クズ・・・っ!ゴミ・・・っ!
       //(手  塚)//::::!
       |:::|/とヽ ♂ θ|:::| :::/  
    / ̄ ̄旦 ̄ ̄ ̄/|
  /______/ | |
  | |-----------| |

   _
  / /|)
  | ̄|
/ /
080079604/07/24 07:20ID:qEmxnU+2
レスありがとうございますm(_ _)m

むむ、やはり単発スレという感じになってしまいますか。
衝突の手法についてではなく、衝突を使ってどの様なゲームを作成するか
というのを気楽に話し合うスレにしたかったので、物理やコリジョンを扱うスレでは
ないかもです(コーディングについては出来るものとして進める:ちなみに私は
ペナルティ法等知りません^^;)。

すれ立てるとすればもう少し板の雰囲気等も考えてスレ立てることにしますね。
0801名前は開発中のものです。04/07/24 12:02ID:9Bmm6sMI
ネタを出し合うだけなら雑談でもいいし下のでもいいと思う。

アイディアがあるが技術が無いので代わりに作って2
http://pc5.2ch.net/test/read.cgi/gamedev/1027414183/l50
0802名前は開発中のものです。04/07/24 12:30ID:muzUYG7A
DirectXの質問なんですが、
ビルドしてVCから実行するとHALで起動して普通に実行できるのですが、ビルドしたEXEファイルを
直接実行するとREFになっていますみたいなメッセージがでて強制終了します。プロパティをみると
REFになっています。何とかHALで起動して実行させたいのですがどこをいじればよいのでしょうか?

使用ソフトはVisual Stadio AcademicでビデオカードはGeforceFX5200です。
0803名前は開発中のものです。04/07/24 13:03ID:w3BXFz/1
>>802
>どこをいじればよいのでしょうか?
あんたのプログラムのどこか。
0804名前は開発中のものです。04/07/24 17:10ID:deJPmHn6
>>802
こっちで聞きなされ、と誘導してみる

DirectX総合スレ
http://pc5.2ch.net/test/read.cgi/gamedev/1083728025/l50
0805名前は開発中のものです。04/07/25 22:42ID:wTIwkwfC
グラフィックやサウンドなど入れとく変数(リソースっていうのかな?)は
普通はローカル変数に入れとくもんですか?それともグローバル変数ですか?
0806名前は開発中のものです。04/07/26 01:53ID:xL5qDpJf
>>805
バッファ
0807名前は開発中のものです。04/07/26 02:37ID:+vmEbW+C
>>805
わたしはstaticな感じのクラスが管理してる。
でもって戻り値にIDを返す。そのIDを指定して描画とかする。
てことで物自体はグローバルな感じ、それにアクセスするためのIDはローカルな感じ。

、、でも私の頭ではその程度しか思い付かないというだけで、普通はもっとかっこいい方法で管理してるのかも。
0808名前は開発中のものです。04/07/26 04:05ID:IvYgsk6a
>>807
staticな感じのクラスってのがよくわからないけど、

とりあえず、全体で同一の実体にアクセスしたいんであれば、
http://www002.upp.so-net.ne.jp/ys_oota/mdp/Singleton/
Singleton パターンを使うのが普通じゃないかな。

グローバルだと実体の所在が把握しづらくなることがあるから止めといた方がいいね。
0809名前は開発中のものです。04/07/26 10:52ID:KAV4hfSh
わたしはスケベチックな感じのクラスが管理してます。
0810名前は開発中のものです。04/07/26 21:43ID:DTawJWmS
3DMMORPGのエミュレートサーバを作るにはどうしたらいいですか?
0811名前は開発中のものです。04/07/26 22:42ID:boyt2ViD
1)
パケットモニター等を使用して、
クライアント上からコマンド(キャラクタ移動等も立派なコマンドだ)を送ってみて、
その際にどのようなパケットが発行され、
サーバからどのようなパケットが帰ってくるかを調査する。
多くの場合暗号化されているだろうから、その暗号解析も必要。
2)
前ステップで得られたパケット情報から、クライアントサーバー間の
プロトコルとネットワーク仕様を推測し、仕様を固める。
3)
前ステップで推測したプロトコル仕様を実現するサーバプログラムを記述する
ここから先は自前でネットゲーを作るときと一緒なので省略。

大まかにはこんなもんだ、
ステップ1とステップ2が終われば80%できたと言ってしまっていいかもしれん。
(ネットゲーサーバ作りで一番大変な「プロトコルとネットコード設計」が終わってるんだから)
0812名前は開発中のものです。04/07/26 22:48ID:MCmYCtp8
>>808
わお、勉強になり舛田。
staticな感じってのは
class hoo
{
static int load(char* fn);
static void draw(int num);
}
て感じのアクセサでhooが実体を一元管理。でもって
int bar = hoo::load("orebaka");
hoo::draw(bar);
て使うものでスタ。漏れ脂肪。。。
0813名前は開発中のものです。04/07/26 23:01ID:B/ZqUo2m
>>808
アホ丸出しな質問かもですが、なぜみんな
ClassHoo* hoo = new ClassHoo();
て書くんでしょうか、、ほとんどの場合
ClassHoo hoo;
でいいと思うんですけど。delete忘れたら悲しいし。
javaではclass変数が実質的にポインタだし、GCもあるのでいいと思うんですが、C++においては違和感が、、
0814名前は開発中のものです。04/07/26 23:13ID:lLBPWVrI
>>813
質問の意図がいまいちわからんのだが

> ClassHoo* hoo = new ClassHoo();
> て書くんでしょうか、、ほとんどの場合
> ClassHoo hoo;
> でいいと思うんですけど。delete忘れたら悲しいし。

これは、C++についての意見なのかな?
0815名前は開発中のものです。04/07/26 23:15ID:/sNbjoGs
そうでつ。
0816名前は開発中のものです。04/07/26 23:41ID:lLBPWVrI
>>808の例ではシングルトンにするために
> ClassHoo* hoo = new ClassHoo();
しています。

> ClassHoo hoo;
こう宣言できちゃうと、どこでも宣言できちゃうので、
実体が1つであることが保証できなくなります。
なので、コンストラクタとデストラクタを
private にして、そのクラスのメンバ関数からしか
呼べなくしています。

メンバ関数の中で
> ClassHoo hoo;
と宣言しても、それはローカル変数にしかならないので
> ClassHoo* hoo = new ClassHoo();
と宣言してポインターを保持しておきます。

これでいいかな?
説明下手で申し訳ないけど
0817名前は開発中のものです。04/07/26 23:48ID:DTawJWmS
>>811
分かりやすい!ども、ありがとうございます。
0818名前は開発中のものです。04/07/28 00:43ID:9Fh+7n1B
>>816
813は多分、クラスの中で、
> static ClassHoo hoo;
とするのはマズイの?と聞きたかったのでは!?
多分、これをやると、main関数が実行される前に、
staticなClassHooが作られるからマズイのかな?と思ってみたり。
0819名前は開発中のものです。04/07/30 21:21ID:DrPY9mrp
ClassHoo hooで宣言するとコンストラクタを無視してクラスが作られるの?
0820名前は開発中のものです。04/07/31 11:11ID:uFPG2A3V
バトルロワイアルの禁止エリアをシミュレートしたいのですが、エリアが分断されないようにするには、どうすればよいですか?
0821名前は開発中のものです。04/07/31 14:24ID:wQlcxQ++
0.禁止エリアは「禁止エリアの候補」からランダムで選ばれるようにする。

禁止エリアの変更を行う毎に以下の処理を行う。
1.新たに禁止エリアとなったエリアを「禁止エリアの候補」から外す。
 (禁止エリアを通常のエリアに復帰させる場合、まず復帰させるエリアは全て復帰させ、禁止エリア以外のエリア全てを「禁止エリアの候補」にしてから2へ)
2.「禁止エリアの候補」を順番に調べていく。調べる対象と隣接するエリア(東西南北の4方向移動なら、対象の縦横ナナメ周囲8マス)に
  “禁止エリア”が2つ(“マップ外縁”があれば1つ)以上見つかった時点で3へ。(無ければ次のエリアを調べる)
3.“チェック用の仮想マップ”を現状に加え“対象エリア”が禁止になった状態にする。
4.“対象エリア”以外の「禁止エリアの候補」をひとつ選んで基準点とし、仮想マップ上で移動経路探索を行う。基準点から移動可能な場所全てをチェック。
5.“対象エリア”および基準点以外の「禁止エリアの候補」全てについて順番に調べる。仮想マップ上で「移動可能範囲になっていない」(分断された)エリアが
  見つかった時点で、“対象エリア”を「禁止エリアの候補から外す予定のエリア」とする。
6.「禁止エリア候補」の全てをチェックし終わったら、「禁止エリアの候補から外す予定のエリア」を「禁止エリアの候補」から外す。
0822名前は開発中のものです。04/07/31 15:17ID:aIOUs0Nk
>>821
ありがとうございます!
0823名前は開発中のものです。04/07/31 18:50ID:rDiQSa23
ウルティマオンラインやエイジオブエンパイア等のゲームって
どのような言語やソフトを使って作られているんですか?
0824名前は開発中のものです。04/07/31 19:55ID:PXK/3MpL
AoEは九部九里VC++だろうと思われ。
UOはクライアントはVC++のはず。
サーバーはSolarisのはずだからccだろうなぁ。
その時代のWin32ゲームなら言語はまずC/C++(C++でない可能性も高い)、
だろうと思われる。
0825名前は開発中のものです。04/07/31 20:32ID:rDiQSa23
>>824 ありがとうございます。
最近のゲームの場合はどうでしょうか?
0826名前は開発中のものです。04/07/31 20:37ID:1SHYiP+f
>>825
大半がc/c++でしょ。
msがpreview code(dx、win、sdk、ddk)出すのが、必ずc/c++が最初だから。
delphiで作ってたところあるが、今はc/c++だし。
0827名前は開発中のものです。04/07/31 22:28ID:PXK/3MpL
>>825
処理系でいうと、洋ゲーに関して言うなら、
多数派がVC++、少数派でmingw/gccってとこじゃないか?
delphiは欧州で強いという話はあるが、
あくまでもゲーム以外の一般アプリ(という言い方も変だが)の話だし。

国産エロゲとかそのへんに関してはシラネ。
0828名前は開発中のものです。04/08/01 00:15ID:9/8mpdqF
WinGWを伴して作ったゲームを
販売してもいいんですか?
(ライセンス料とか払う必要がありますか?)
0829名前は開発中のものです。04/08/01 00:25ID:rKSFvTvE
公式ページ行ったら?
0830名前は開発中のものです。04/08/01 00:50ID:huOwEYht
 【騎士】Knights of the Temple【アクション】 
http://game8.2ch.net/test/read.cgi/game/1091288352/
鎧を着た騎士が剣や斧やメイスや弓で敵を倒していくゲームです。
グラフィックはかなり綺麗です。

公式  http://www.knightsofthetemple.com

体験版 http://www.gamershell.com/download_6588.shtml
0831名前は開発中のものです。04/08/01 01:55ID:+s4oYwTh
リーグ戦のプログラムを作りたいのですが、どうしても、最後のほうで、無限ループになってしまいます。
出場者リスト作成

リスト一番上から、ランダムに対戦相手を決める

その二人を抜く

リスト作成に戻る

どうすればよいですか?
0832名前は開発中のものです。04/08/01 02:41ID:aZwyLY/F
「ランダムに対戦相手を決める」んじゃなくて
「ランダムに対戦カードの順番を並び替える」にすればよろし。
0833名前は開発中のものです。04/08/01 09:17ID:8L+/zjIn
>>832
ありがとうございます。
0834名前は開発中のものです。04/08/02 11:15ID:o7BCJFlk
C#でゲームを作ろうと思っているのですが、ちらつきが多くてゲームになりません。
描画命令はGDI+のDrawImageを使っています。
0835名前は開発中のものです。04/08/02 11:23ID:t6J1geIS
で?
0836名前は開発中のものです。04/08/02 12:17ID:jDxAxQMU
は?
083783404/08/02 13:31ID:o7BCJFlk
質問抜けてました。
GDI+のDrawImageを使ってキャラクター等を描画しているのですが、
FPSが少なくてキャラクターがスムーズに動きません。
GDI+でスムーズに描画させるにはどうしたら良いでしょうか?

それと、GDI+は以前のGDIより遅いと言う噂があったのですが
これ本当ですか?
0838名前は開発中のものです。04/08/02 13:39ID:z1MrJQ8z
画面のちらつきはFPSと無関係だぞ。
FPSが100を越えたとしても、ちらつくものはちらつく。
0839名前は開発中のものです。04/08/02 13:46ID:z1MrJQ8z
まず、描画したい画面と同じ大きさの描画領域を用意し、
そちらで描画を行ってから、描画領域の内容を表示して味噌。
そうすればちらつきはなくなるから。
0840名前は開発中のものです。04/08/02 13:51ID:z1MrJQ8z
>>839
一つ忘れてた。WM_PAINTで表示する場合は、
背景を描画しない設定で窓を作らないと、
何をやってもちらつくぞ。
0841名前は開発中のものです。04/08/02 19:34ID:icJl35Ah
PCにもとから内臓されている
MIDI音源を使用したMIDI音楽を録音して
有償配布する場合。MIDI音源の製作者に
許可、もしくはライセンス料を払わなくてはならないのでしょうか?
0842名前は開発中のものです。04/08/02 20:15ID:xSwisWHX
>>841
曲がオリジナルであるなら問題ない。
ギターで曲を演奏し、それを録音し有償配布したとして、
ギターの作成者にライセンスを払う必要がないのと同じ。
0843名前は開発中のものです。04/08/02 20:41ID:icJl35Ah
>>842
ご教授ありがとうございます
0844名前は開発中のものです。04/08/04 00:44ID:4mXvMeO/
質問です。
内部640x480x16bit(R5G5B5)で持っているバッファを高速でウィンドウに表示する方法がわかりません。
ディスプレイの色数が32または16bitの場合、あらかじめピクセルフォーマットを調べて変換テーブルを作っておき
 for(x=0; x<m_width; x++,p1++,p2++)*p1 = table[*p2];
というようにしていますが SetDIBitsToDevice で転送したほうが倍早いです。
インラインアセンブラで書いてみてもまったく変わりませんでした。
 lodsw  mov ax,[ebx][eax*2]  stosw  loop
何か良い手法はありますでしょうか。
0845名前は開発中のものです。04/08/04 00:59ID:SrAClrkI
もしかして、SetTimerやKillTimerを使ってないか?
■ このスレッドは過去ログ倉庫に格納されています