- 1 名前:名前は開発中のものです。 [2008/01/03(木) 04:55:57 ID:29lql27X]
- 疑問に思うことがあれば、スレを立てずに、まずはココで質問。
スレッドを立てる前にはローカルルールを読みましょう。 pc8.2ch.net/gamedev/ ※ >>980 を踏んだ人は次スレ立てをお願いします。 【アップローダ・避難所・Wiki】 ゲーム製作技術板公式Wiki gamdev.org/w/ ゲーム製作技術板公式アップローダ gamdev.org/up/ ゲーム製作技術板公式掲示板避難所 bbs.gamdev.org/gamedev/ ゲーム製作技術板予備 yy13.kakiko.com/gamdev/ アップローダー予備 gamdev.hp.infoseek.co.jp/ gamdev.orgが落ちるたびにあげてみるスレ pc8.2ch.net/test/read.cgi/gamedev/1107022166/
- 737 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 10:22:20 ID:yEMc6CZY]
- 三方向に射出した後、うねうね軌道が動かないならそっちの方がいいな。
うねうね動く場合でも8〜16方向くらいあらかじめ用意したほうがいいと思うけど。
- 738 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 11:20:31 ID:yueRKLvK]
- マジかみんな
描画用の関数にラジアン角度を引数に取るよう作ってたんだが、むしろこっちが異端か?
- 739 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 13:49:35 ID:KHsY3oV1]
- 太鼓の達人のようなゲームをつくろうと思うのですが、
どのような言語やソフトを使えばよいのでしょうか? C言語を半年勉強した程度の能力はあります。 どなたか、わかる方答えていただけると幸いです。
- 740 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 14:51:13 ID:yEMc6CZY]
- 電子工学だと思う。
- 741 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 14:53:28 ID:oCV1Xu4/]
- C半年だとコンソールアプリになるな
- 742 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 15:02:17 ID:Uuvipq4f]
- ターゲットを決めるのが先かな
Windows?
- 743 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 15:15:16 ID:KHsY3oV1]
- 真面目に答えていただいてありがとうございます。
>>741 具体的にどのようにしたらよいのでしょうか? >>742 Windowsです。 こちらに関しては呆れるほどに初心者ですので、燗に触るようでしたら スルーしていただいて結構です
- 744 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 15:35:12 ID:QAuvnuXl]
- >>740はスルーかよ
入力デバイスどうすんのって話だと思うが とりあえず、コンソールでも1キーだけでも動くもの作ってみたら? BGMは必須だと思うけど、その他のAV的要素ってあとからでもOKだろうから
- 745 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 15:46:44 ID:KHsY3oV1]
- >>744
すみません、前者がよくわかりません。 後者は、要するにプログラムを書いてみろって事ですよね。 BGMについては用意してあります。自分で作曲したもので太鼓の達人ができたらいいなと思って このスレに書き込んだものですからw >>740 すみません、違う話だと思ってしまいました。 入力デバイスはキーボードでいこうと思っています。 別に電子太鼓を作ろうとまでは思っていませんのでw
- 746 名前:744 mailto:sage [2008/04/02(水) 16:59:48 ID:QAuvnuXl]
- 太鼓の達人ってゲームに必須な要素って多くないと思うから、まずは最低限必要なものを作るところから初めてはどうか、という意味。
さすがにコンソールアプリでは難しいかもしれないけど 音楽鳴らせて、キー入力のタイミングが判断できればOKなのかな?
- 747 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 17:13:28 ID:KHsY3oV1]
- >>746
そういうことですね、 音楽鳴らせて、キー入力のタイミングが判断できれば成り立ちますね。 言語はCで、Visual C++ 2008 Express Editionを使って やってみようと思いますがどうでしょうか?
- 748 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 17:40:33 ID:oCV1Xu4/]
- 太鼓の達人ってbm98みたいなもんじゃね?
曲弾きたいだけなら、プログラム作らなくてもあれでも代用できそうな気が ちょっと古いけど
- 749 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 17:56:35 ID:KHsY3oV1]
- >>748
確かに代用できるかもしれませんが、 太鼓の達人のノートの種類が大まかに2種類なのに対し、BM98は最低5key以上となっています。 数箇所のkeyを使わない設定となると、見栄えが悪いと思います。
- 750 名前:730 mailto:sage [2008/04/02(水) 19:21:02 ID:5WZMzuoU]
- >>735-737
有り難うございます。 大変助かりました。 どちらの方法も試してみて、良い方法を使おうと思います。
- 751 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 20:24:48 ID:1sA0ZO96]
- 太鼓の達人は太鼓叩くからおもしろいんであって
太鼓なかったら地味だと思うんだが
- 752 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 20:36:46 ID:Blss73IL]
- DS版が否定された
- 753 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 22:23:19 ID:Fyx9iI0t]
- ひとつ聞きたいんだが
by -= 1; ↑これだと一瞬だけ座標が変わるだけじゃない? 徐々に上に移動って意味はこれでいいのかな?
- 754 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 22:43:45 ID:KHsY3oV1]
- >>751
太鼓よりもコントローラの方が得意な人も多いと思いますし、 キーボードで設定しておけば、USBコンバータを使えば太鼓でもプレイが可能なのでは?
- 755 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 00:41:35 ID:BL3q8jAP]
- あの太鼓って、外側は実は木製なんだよな。
分解写真見てびっくりした記憶。 >752 否定していいと思うんだ。(ぼそ) >753 何の話だ? ぷちエスパーすると、毎フレームbyが初期化、または定数がセットされるなら一瞬だけ。 描画条件やタイミングによっては動かないかもしれない。 普通は、byはフレームごとに初期化されない(値が保持される)ので 毎フレーム1ドットずつ動く計算になる
- 756 名前:755 mailto:sage [2008/04/03(木) 00:45:15 ID:BL3q8jAP]
- ああ、すまん。ブロック崩しの人か。
>755での暴言は忘れてくれ。
- 757 名前:名前は開発中のものです。 [2008/04/03(木) 06:18:34 ID:mgvlg8ul]
- DXライブラリを使って2次元アクションゲーム作ってるんですが、
なんというか、どうもRPGツクールと同じように 「1から作ってるわけじゃなく、すでにあるものを組み合わせてるだけ感」があって(もちろんRPGツクールほど顕著じゃないですが)、どうにも作ってていまいちノれないんですが そこで質問なんですが、ウインドウズプログラミングを使って1から作るのと DXライブラリで作るのでは同じゲームを作るとしたとき、だいたいどのくらい効率や時間は違いますか? やっぱりウインドウズプログラムの方が極端に時間がかかりますか?
- 758 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 07:08:17 ID:BL3q8jAP]
- これからDirectXとかの勉強をします、とか言うなら半年くらいのオーダーで違う
- 759 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 11:47:10 ID:bFlfPZb3]
- >>757
どうせDirectXを習っても、自由度が高すぎるからDXライブラリみたいなライブラリを自前で作ってると思うよ。 結局のところ3Dモデルや画像読み込んでいじくるのが目的の大半で、 読み込む処理は決まりきってるし、動作と座標はスクリーン座標かワールド座標で管理するだろうし。 仮にC言語周りは完璧でDirectXを覚え始めるとして、スプライト、入力処理、音響処理のラッパーを作るとなると 2ヶ月程度。3D周りに手を出すとさらに2〜5ヶ月。 作った後は、DXより自分好みにライブラリを作ってるだろうから開発効率いいんじゃね?
- 760 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 14:37:47 ID:u2kemPAd]
- DXライブラリにしても、そのまま使うんじゃなくて
さらにラッパを用意したりする人も多いけどな。
- 761 名前:名前は開発中のものです。 [2008/04/03(木) 14:45:18 ID:mgvlg8ul]
- >>758-759
なるほど、だいたい感じはわかりました。 ありがとう。
- 762 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 18:12:31 ID:/J2vdBIl]
- 数百くらいあるオブジェクト同士の当たり判定をしたい場合、総当り以外に何かいい方法ありますか?
総当りでチェックしながら、一回判定したのは外していくという方法以外思いつきません…
- 763 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 18:47:20 ID:IqOcn4qg]
- 1Dなら二分木、2Dなら四分木、3Dなら八分木
という方法で空間を分割することで 当たり判定の最適化ができます
- 764 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 18:50:56 ID:HifUC8Yv]
- 【空間分割による最適化】
隣の部屋(room ≒ portal 、block 、area)で誰と誰がどのように触れ合っているか等 毒夫にとっては全く関係のない話なのです | \ | ('A`) ギシギシ / ̄ノ( ヘヘ ̄ ̄ アンアン/
- 765 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 22:10:07 ID:/J2vdBIl]
- >>763-764
ありがとうございます キーワードがいただけたので、あとは自分で調べて見ます
- 766 名前:名前は開発中のものです。 mailto:sage [2008/04/06(日) 22:08:08 ID:7HPWr1su]
- 戦略シミュレーション作ろうとしているのですが、平面座標で
CPUがプレイヤーの駒に対し障害物があった場合、障害物から 左右に走査線を走らせ、反対側にたどり着けば 角(横3px以内、45・90・135)の点を全てストックして、現在の座標より直進で進める もっとも外側に近い点を目標とし、再びループ。 という仕組みでコードを組んでいますが、障害物の深度から検索しているので 正確なルートを確保できません。 何かアドバイスを頂けないでしょうか。
- 767 名前:名前は開発中のものです。 mailto:sage [2008/04/06(日) 22:46:38 ID:+JZYHxk+]
- 「経路探索」といえば「A*」
- 768 名前:766 mailto:sage [2008/04/08(火) 16:53:31 ID:U0qhjBuH]
- >>767
ありがとうございます。難しそうですが、チャレンジしてみたいと思います。
- 769 名前:名前は開発中のものです。 [2008/04/10(木) 09:03:53 ID:xSsqVcTa]
- 単発質問スレが乱立しやすいこの板では
この類のスレは常時ageの方がいいのではないかと言ってみるage
- 770 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 12:30:51 ID:4RKOcDZu]
- それもそうだな
- 771 名前:名前は開発中のものです。 [2008/04/10(木) 12:34:40 ID:nQoNMMIw]
- だが断る
- 772 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 15:29:09 ID:jGCpfgDP]
- いやいいこと言ってるかも
- 773 名前:名前は開発中のものです。 [2008/04/10(木) 16:33:45 ID:kl6WBrXE]
- >>770-772
お前ら言ってることとやってることが違うじゃねぇかw
- 774 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 19:14:58 ID:KzinQoVU]
- たしかにいいことだ
- 775 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 19:17:47 ID:IRGlQQnq]
- どうでもいいことだ
- 776 名前:名前は開発中のものです。 [2008/04/10(木) 19:57:46 ID:xSsqVcTa]
- >>770-772
お ま え ら
- 777 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 22:05:07 ID:W5MU10M/]
- ローカルルール読め阿呆で十分
- 778 名前:名前は開発中のものです。 mailto:sage [2008/04/11(金) 19:11:04 ID:8wte2Ya/]
- javaでゲーム作成ってスレ落ちたままだけど誰も立てないの?
javaマでゲーム作ってる俺はよく覗いてたのに。
- 779 名前:名前は開発中のものです。 mailto:sage [2008/04/11(金) 19:26:28 ID:inAxJvIm]
- この板でも落ちるのか…w
ひょっとしてもしかすると次の中に無い? Javaでゲーム作る話してるキチガイがいるよ(藁 ttp://pc11.2ch.net/test/read.cgi/gamedev/1013953851/ むしろjavascriptでゲーム作ろうぜ ttp://pc11.2ch.net/test/read.cgi/gamedev/1048171505/ JAVAアプリでゲーム ttp://pc11.2ch.net/test/read.cgi/gamedev/1033926010/ Javaアプレットのゲームの限界は! ttp://pc11.2ch.net/test/read.cgi/gamedev/1005230153/ 【JAVA】2Dアクションゲームを作る【初級】 ttp://pc11.2ch.net/test/read.cgi/gamedev/1094602659/
- 780 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 04:23:06 ID:bJw5ptYJ]
- >>778
みんな誰かが立ててくれるのを待ってたりしてなw 無いのならいっそのこと自分で立てたらどうよ?
- 781 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 06:54:49 ID:33XEr2k7]
- 俺のプロバもう久しくスレ立てられないのよ。
- 782 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 07:18:07 ID:y8iAp7J0]
- ●買え、●
- 783 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 07:59:00 ID:5Otwi7xM]
- スレ建てできるjava使いがいないなら、
テンプレを用意して頼み込んでみたら良い人(つまり俺以外)が、 建ててくれるかもしれないぞ!
- 784 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 11:56:34 ID:hx3BYZRW]
- おk代行スレ行ってくる
- 785 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 23:45:57 ID:sQo000PS]
- pc11.2ch.net/test/read.cgi/gamedev/1208005024/l50
Javaでのゲーム作成 3本目 できたなんかあったら追加してくれ
- 786 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 00:10:37 ID:sQCOMomw]
- ●じゃなくて株主優待でもいいんじゃね?
今は暴騰してるけど
- 787 名前:名前は開発中のものです。 mailto:age [2008/04/13(日) 00:19:01 ID:zflyFYlt]
- DirectXに関して質問です。
黒のバックに白の点がいくつか描かれているテクスチャがあります。 この白の点の数をカウントし、その数に応じて処理を変えたいです。 シェーダー(HLSL)を使って、このカウント値を取得したいのですが、どのようにすれば良いでしょうか?
- 788 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 01:09:44 ID:xnDBZw+p]
- そのカウント値っては予め数えてある値なのか、それともシェーダー上でカウントするのかどっちなんだ?
- 789 名前:名前は開発中のものです。 mailto:age [2008/04/13(日) 01:20:20 ID:zflyFYlt]
- シェーダー上でカウントしたいです。
白の点の数はフレーム毎に変化します。
- 790 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 01:38:23 ID:N62LMulN]
- ピクセルの数をカウントするなら簡単だよね
不定の面積を持った点だと困るな、 画像処理してデジタル化してから スキャーンして、見付けたら別の色で塗りつぶし また、スキャンし、終わるまで。 塗りつぶした回数を数える。 誤差がでるだろうな
- 791 名前:名前は開発中のものです。 mailto:age [2008/04/13(日) 03:09:15 ID:zflyFYlt]
- すみません、「その回数を数える」というのは具体的にどうするのでしょうか?
シェーダプログラム内でカウント数を保持する方法があるのでしょうか?
- 792 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 16:36:05 ID:Z1kaHYoi]
- >>790-791
最近のシェーダーの仕様とか組み方とかよく知らんのだけど 俺がRadeon9800でPS2.0使ってた頃は出力はr0のみだった。今は違うのか? 少なくとも当時は、1パスでパーピクセルの処理結果を一箇所に集計して〜 みたいな使い方は出来なかったと記憶してる
- 793 名前:名前は開発中のものです。 [2008/04/13(日) 16:38:09 ID:zbXHPuUk]
- 3Dのゲームでよくライフが2Dスプライトでキャラの上に表示されてたりしますが
そのスクリーン座標ってどうやって取得するのでしょうか?
- 794 名前:793 mailto:sage [2008/04/13(日) 16:58:28 ID:zbXHPuUk]
- 事故解決しました・・・スレ汚しすみませんでした・・・
- 795 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 17:02:47 ID:Z1kaHYoi]
- >>793
自分でワールド、ビュー、プロジェクション行列を設定してるんだから その逆を辿ればスクリーン上の任意の点のワールド座標は取得できる 意味が分からないときは是非お買い求めください。 ボーンより www.borndigital.co.jp/book/program/4-939007-37-5/4-939007-37-5.html つか素直にID3DXSprite::SetTransform使え オブジェクトの真上に来るようなワールド行列をぶち込めば済む
- 796 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 17:04:34 ID:Z1kaHYoi]
- ち、営業失敗か
- 797 名前:793 mailto:sage [2008/04/13(日) 18:13:15 ID:zbXHPuUk]
- >>795
レスどもです。後述のやり方使わせていただきます。 本ほしいけど高いです・・・1ヶ月生活切り詰めれば買えそうだけど・・・
- 798 名前:787 mailto:age [2008/04/13(日) 19:38:00 ID:9OE2EiOk]
- >>792
今も基本的に各出力画素に出力ですね。 ピクセルシェーダを以下のようにして、最後の画素(画面右下?)に合計値が出力されるように 試みてみました。 void PS( float2 in_Tex : TEXCOORD0 , out float4 out_Color : COLOR0 ) { in_Tex.x = in_Tex.x + g_Ofs.x; in_Tex.y = in_Tex.y + g_Ofs.y; static float4 SumColor = float4( 0.0 , 0.0 , 0.0 , 1.0 ); SumColor += tex2D( TexSamp , in_Tex ); out_Color = SumColor; } 結果は、普通にテクスチャの絵がそのまんま出力されてしまいました・・・ ピクセルシェーダ稼動中はSumColorの値は保持されると期待したのですが、 毎ピクセル計算する度にSumColorはクリアされちゃってるってことでしょうか。 staticの存在意義が分かりませんね・・・
- 799 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 21:16:01 ID:VIYt+noJ]
- DirectXの質問ですが
LPDIRECT3DSURFACE9のGetDCで WinAPIを使用(TextOutなど描画処理)すれば それでデバイスを使用した高速描画ってことになるんですか?
- 800 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 22:29:32 ID:zLBVEijV]
- >>799
デバイスのコアな部分までは分からないから言い切れないけど TextOutなどGDIを使用する限り、ならないって事になってる。 GDIはプリンタにも共通して使用できなければならない。
- 801 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 22:44:05 ID:H29I1VXA]
- 基本的に手抜き用だから性能気にするなら使うの止めた方が良い。
- 802 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 22:55:49 ID:0WnkT/ZQ]
- たまにWinAPI使ってテクスチャーに描いて、
フレーム毎の描画はテクスチャーマッピングで済ますんじゃね?
- 803 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 23:46:57 ID:Z1kaHYoi]
- まぁ恥ずかしい長文を画面いっぱいに描画するなら
普通のWindowsアプリ同様に差分描画は必須だろう 毎フレーム全文をTextOutとかは想定外の使い方
- 804 名前:787 mailto:age [2008/04/14(月) 01:13:34 ID:juYmtKjM]
- ttp://www.hsjp.net/upload/src/up15435.jpg
やりたいことはこれです。 「テクスチャを参照する際にピクセルシェーダを活用することが有効です。」 とありますが、具体的にどんなシェーダ処理になるのでしょうか? だいたいの方針などでも十分ですので、ご助言ください。
- 805 名前:名前は開発中のものです。 mailto:sage [2008/04/14(月) 01:17:20 ID:PJR5ohHg]
- うわぁ著作物を無断ぽくうpする知的障害者ってまだ死滅していないんだなぁ(棒読み
- 806 名前:名前は開発中のものです。 mailto:sage [2008/04/14(月) 03:55:35 ID:EkC361iO]
- ここはあくまでゲーム制作の初心者を対象にしているスレ。
平気で無断うpするようなネット初心者はお呼びでない。
- 807 名前:799 mailto:sage [2008/04/14(月) 20:20:32 ID:acAkUx6Q]
- >>800-803
ありがとうございます。 現在SRPGのようなものを製作しているのですが、各キャラのアニメの処理落ちがひどく DirectXを導入しようと思ったのですが、使い方を誤っていたわけですね;
- 808 名前:名前は開発中のものです。 [2008/04/14(月) 23:22:29 ID:D8DlEzlI]
- >>755
要するにボールの座標(by)を常に保存しとくのに 入れ物がいるってことでしょうか? 「bflag=0の間」って定義じゃ意味として間違ってるんでしょうか?
- 809 名前:名前は開発中のものです。 mailto:sage [2008/04/14(月) 23:43:26 ID:1JnIIKqn]
- >>808
byに200が入ってたとして、 by -= 1;するとbyは199になる 次にby -= 1;をしたときは200から199じゃなくて199から198になる
- 810 名前:名前は開発中のものです。 mailto:sage [2008/04/14(月) 23:57:30 ID:jqKpEXH3]
- まるまるソースアップすればすぐ解決しそうだけどね
ローカル変数でしたとかありそうだし
- 811 名前:名前は開発中のものです。 mailto:sage [2008/04/15(火) 00:27:38 ID:8mjR27PX]
- まさかずっと考えてたのか・・・
とりあえず自機は動いてるみたいだし >>720丸写しで動きそうな気もするんだがね まあ、>>810だろうな
- 812 名前:名前は開発中のものです。 mailto:sage [2008/04/15(火) 23:34:09 ID:R308PVzI]
- 敵とか主人公とかアイテムの画像はひとつの配列入れて描いたほうがいいの?
それともべつべつ?
- 813 名前:名前は開発中のものです。 mailto:sage [2008/04/15(火) 23:35:32 ID:VPYFMazR]
- 大体の場合画像はいっぺんで描いた方が早いよ
- 814 名前:名前は開発中のものです。 mailto:sage [2008/04/15(火) 23:52:03 ID:805Lw7LR]
- >>812
んなもんどっちでやってもゲームは作れるよ。好きにすれ ところで俺がたった今3秒でひらめいた糞ゲーは 主人公が敵になったりアイテムが仲間になったりするんだ。凄いだろ? だから敵とか主人公とかアイテムは共通の手続きで取り扱いたいね ひとつのリスト(配列)に入れるというのは悪くない考えだ
- 815 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 00:05:58 ID:4gn/04tn]
- オブジェクト指向でのデータ構造に関する質問です。
シューティングゲームの敵オブジェクトを数種つくるとき、 1.親クラスを同じにして種類ごとのクラスをつくる 2.一種類のEnemyクラスのオブジェクトをたくさん作って、種類を表す変数kindの値によって挙動を場合分け 3.一つのEnemyManagerクラスをつくって、必要な変数を配列として保持し、各敵をインデックスによって管理 4.その他俺が考え付かない素晴らしい方法 のどれをすべきなのでしょうか。ご指導頂ければ幸いです。 的外れなこと言ってたらごめんなさい^^;
- 816 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 00:11:20 ID:6tcgJhqC]
- >ご指導頂ければ幸いです。
先生、手を動かす前から悩む子は嫌いだな 手が使えないなら口を使ってもいいんだよ とりあえず1〜3を全部やれ。すると人は4に行き着く でもそれが勘違いだったことに気づくのに時間はかからない そのときHSPは救いの手を差し伸べるだろう
- 817 名前:815 mailto:sage [2008/04/16(水) 00:24:52 ID:4gn/04tn]
- >>816
一通り試してみたけど違いが分からなかった、という前提でお願いします。 俺が気付かないだけで「これはやっちゃダメだろ」みたいのがあるのかな、って。 つまりHSPから出直せってことですか?
- 818 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 00:27:15 ID:1RgW84Mk]
- 1&2
- 819 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 00:51:51 ID:HSHLz9Y4]
- 自分が組みやすいように組めばいいよ
ゲームの規模やシステムによって最善は変わってくるだろうし
- 820 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 01:14:15 ID:6tcgJhqC]
- >>817
>一通り試してみたけど違いが分からなかった、という前提でお願いします。 なら話は簡単だな。どれでやってもゲームは作れるってこと あとは自分の都合にあったやり方を選択すればいいだけ 作るときの人数構成は。一人で作ってるのか、2〜3人で作ってるのか ゲーム自体の規模は。敵の数は、種類は、ステージ構成は、2Dなのか3Dなのか 敵やステージのデータを誰が作るのか、誰が調整するのか、自分なのか それとも仲間なのか、それはプログラマなのか、それとも絵描きなのか いや絵もプログラムも作れない妹にやらせるのか、などなど 実際に1〜3全部やってみたのにそれぞれの得手不得手、長所短所が 見えないなんてことは絶対にありえないからな
- 821 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 09:12:06 ID:Fn26u7Ao]
- >>815
俺ならこうする。 class Enemy { int x; int y; int life; void draw(int x, int y); void move(); } class Enemy1 extends Enemy{ void draw(int x, int y) { ... } void move(int x, int y) { ... } } 1. 敵は共通して現在の座標、ライフ、描画メソッド、移動メソッドを持つ。これを基本クラスとする。 2. 個別の敵オブジェクトは基本クラスであるEnemyクラスを継承して実装する。 3. EnemyManagerは敵オブジェクト(インスタンス)を配列、連結リストなどで保持して一括管理する。
- 822 名前:815 mailto:sage [2008/04/16(水) 21:13:41 ID:4gn/04tn]
- >>820
違いが分からなかった、というのはおかしいですね。すみません。 どれが最適か分からなかった、と言いたかったのです。 >>819さんの言うとおり、結局は個人の好みに行き着くのでしょうか。 >>821さんのように、1+管理クラスでやってみようと思います。皆さん回答ありがとうございました。
- 823 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 22:39:55 ID:8TmMLG1t]
- 小品ならそれでもいいけど
中作以上だとクラスがあぼーんする
- 824 名前:名前は開発中のものです。 mailto:sage [2008/04/17(木) 11:28:54 ID:zg8t/6Yz]
- >>823
規模や状況によって最適解は変わるってアドバイス受けてるんだから それくらい作ってりゃ気付くでしょ
- 825 名前:名前は開発中のものです。 [2008/04/18(金) 19:51:15 ID:rgTpHM1z]
- ブロック崩しの者です
あれから試行錯誤してみましたがイマイチ解決に向かいませんでした ただボールが勝手に浮上していくときもあったのでこれはもしかすると・・・なのでしょうか www2.uploda.org/uporg1374806.zip.html いろいろいじって汚くなったのでかなり削ってしまいましたが 間違いなどを指摘していただければありがたいです ちなみにスペースキーを押したらボールが浮上することだけを考えたので 壁に当たったときの挙動などは考えていません
- 826 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:28:24 ID:rLjiap3t]
- DrawBox(bx,by,bx+10,by+10,GetColor(0,140,140),TRUE);
bx=jx+45;←この行 by=jy-10;←この行 if(bflag ==1){ は要らないんじゃないか?
- 827 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:34:11 ID:rgTpHM1z]
- >>826
それなしでやったところ、ボールが画面左上端に表示されてしまいました bfag==1にボール座標を書いてるのですが認識されてないんでしょうか?
- 828 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:38:32 ID:d+O1TZBw]
- bx,byが値入れられる前に一度使われてるぜ
あと、 >DrawBox(bx,by,bx+10,by+10,GetColor(0,140,140),TRUE); >bx=jx+45; >by=jy-10; ←ここで上書きされてるから上昇しない >if(bflag ==1){ (略 上の真中2行削除して、メインループの前の宣言時に int bx = jx + 45, by = jx - 10; とでもしとけ と実行してないけど言ってみるテスト インデントは綺麗に使おうぜ
- 829 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:40:46 ID:d+O1TZBw]
- ってフラグ類も初期化されてなくね?
- 830 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:41:19 ID:rLjiap3t]
- 変数に初期値を入れてないからbflagの初期値は不定じゃないかな?
bx,by,bflagを初期化してみたら?
- 831 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:42:21 ID:JOpRcNIL]
- bflag=1もループ前にないといけないな
|

|