初心者のためのゲームプログラミング
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001ー
02/06/04 00:45ID:cA3D98JA将来は、企画もできるゲームプログラマーになりたいと思ってます。
そこでなんですが、私はまだパソコン歴2年くらいしかありません。
また、プログラム歴は0年です。
なので、どこからどうやって勉強していいのかまったくわかりません。
そこでなんですが、みなさん私に
どこからどのような過程で勉強していけばいいのか教えてください。
RPGを作りたいです
0852名前は開発中のものです。
04/03/15 17:37ID:P7rTFcv2"シミュレーションゲームを作らない?"というスレはどうだろう?
0853名前は開発中のものです。
04/03/15 21:40ID:BH49Bw7k0854名前は開発中のものです。
04/03/15 22:24ID:nyov8lS7地形(マス目)を作成
level2
キャラクターを地形の上に表示させ
マス目どうりに動かせるようにする
level3
キャラクターをクリックしたときに
そのキャラの移動範囲を表示できるようにする
なんてのはどうだ?
0855名前は開発中のものです。
04/03/15 23:13ID:r4QYmWoo>845みたいなのもあるし、シムシティーもそうだし、
フライトシミュレーターなんてのもあるし。
そういえば、RPGツクールを使って作られた>845みたいなシミュレーションがある。
どうしてそこまでRPGツクールにこだわるのかと思った。
0856名前は開発中のものです。
04/03/15 23:56ID:F/LM2FGLhttp://gamdev.org/up/img/320.lzh
開発環境:Delphi
ジャンルはウォーシミュレーションでいいんじゃね?
戦術シミュレーションかパックマンに習って
「ファミコンウォーズ」風ゲームを作らない?
大戦略、ファイヤーエンブレムどれが人集まるんだろ
アドバンスウォーズを勝手に移植するスレもいいな
0857名前は開発中のものです。
04/03/16 00:27ID:k49tdsBjhttp://gamdev.org/up/img/321.lzh
level1の地形ってひょっとして障害物も置くの?
level3はとりあえずそういうの考えなくていいのかな
0858名前は開発中のものです。
04/03/16 01:10ID:k49tdsBjhttp://gamdev.org/up/img/322.lzh
とりあえず>>854は全部やってみた
間違いあったら修正よろ
今の時点でやれそうなのは色々な地形、複数ユニット、敵ユニットぐらいかな
level4は通行不能な地形と移動ポイントを2以上消費する
地形の実装を実装しろ、かな
0859名前は開発中のものです。
04/03/16 09:16ID:k49tdsBjhttp://gamdev.org/up/img/324.lzh
とりあえずlevel4を勝手に設定して勝手に作ってみた
消費移動力
草原1、沼3、岩山(通り抜け不可)
ユニットの移動力6
あとは>>858で言ってたとおり
説明するのって結構難しいな
シンプルな文章を書ける>>854が文才ある気がした
デバッグ用の数字をマップに出してるけど
あれはあんまり意味ないです
1以上なら通行可能なだけ
リリース版では消します
level5ってやっぱり生産?
生産はなくてもゲームになるから(ネクタリスまんせー)
複数ユニットを登場させるほうがいいかな
そろそろ敵も出さないと
関連ありそうなスレさがしてきたけどもし再利用するなら
「作るのがいちばん簡単なのはシュミレーション?」がいいと思った
再利用のほうがこの板っぽいけどややこしい
モナーシュミレーションゲーム作成中
http://pc2.2ch.net/test/read.cgi/gamedev/1023699667/
HSPでシミュレーションRPG
http://pc2.2ch.net/test/read.cgi/gamedev/1036923414/
こんなシュミレーションが欲しい!!!!
http://pc2.2ch.net/test/read.cgi/gamedev/1014058208/
作るのがいちばん簡単なのはシュミレーション?
http://pc2.2ch.net/test/read.cgi/gamedev/1028807575/
0860名前は開発中のものです。
04/03/16 10:27ID:PRaC3s4rhttp://gamdev.org/w/
0861854
04/03/16 16:29ID:WfRA8YU2てかlevel1〜3をやってくれてるし。感動。
あとスレについてですが、新しく作りましょうか?
タイトルは"シミュレーションゲームを作らない?(仮)"(システムを決めてから再び考えます)
スレの再利用に関してですが、「作るのがいちばん簡単なのはシュミレーション?」だと
"どのジャンルのゲームが一番作りやすいか"という議論をしているところと勘違いされかねませんし。
それとシステムに関してはファイアーエムブレムがいいと思います。
ダメージは攻撃力−防御力で簡単に出せますし、複雑なシステムもないし。
0862名前は開発中のものです。
04/03/16 17:05ID:WfRA8YU2そろそろ敵を表示したほうがいいと思います。
ということで、
level5
敵を表示しましょう
また、自キャラを移動させたときに攻撃可能範囲を表示しましょう
level6
攻撃可能範囲内の敵をクリックしたときに
敵を消滅させましょう
ひとまず思いついたのはこれくらいかな。
あとはなにがあるかな?
0863名前は開発中のものです。
04/03/16 17:38ID:PRaC3s4r「シミュレーションゲームを作らない?」だとURL長すぎになっちゃうので、「SLGを作らない?」にしてみた。
もちろん新スレ(立てるなら)のタイトルをコレにしようとかいうわけじゃないです。
SLGを作らない?
http://gamdev.org/w/?%5B%5BSLG%A4%F2%BA%EE%A4%E9%A4%CA%A4%A4%A1%A9%5D%5D
まだ、概要とか成果とか埋まって無いです・・・
0864名前は開発中のものです。
04/03/16 21:04ID:k49tdsBjグッジョブ
0865名前は開発中のものです。
04/03/17 01:48ID:eKCgaPao次に読むといいお勧めの本とかありますか?
Cはダイテルの本が評判良かったのでそれををやったんですが、
C++ではEffective C++とかプログラミング言語C++の方が評価されてるみたいなので。
ttp://www.1point.jp/~book_2ch/program/cpp.html
0866名前は開発中のものです。
04/03/17 09:06ID:QDIYdbpohttp://www.1point.jp/~book_2ch/program/oo_uml.html#fundamentals_of_computing_cpp
言語を理解するのもいいけど、
オブジェクト指向を理解できてなきゃ話にならない。
C++あんまり覚えて無くてもこの本がオススメ。
0867名前は開発中のものです。
04/03/17 10:05ID:eKCgaPaoamazonのレビューで
>この本はデザインパターンのバイブルとして名高く、ソフトウェア技術者は一度は目を通すべき本でしょう。
>しかし、読みやすくは有りません。例や参照している文献はいかにも研究者向けの難解なものが多いし、本題とは関係のないところで躓くことも多いです。
とあるのですが、プログラミング初級者でも理解できるでしょうか?
でもバイブルとの事なのでとりあえず買ってみようと思います。
それともう一つ質問させて下さい。
この本はオブジェクト指向の解説をしている本っぽいですが、
言語自体の解説本も「やさしいC++」以外に読んだ方がよいのでしょうか?
0868名前は開発中のものです。
04/03/17 10:57ID:QDIYdbpoそりゃ日々精進ってのは変わらないよ。
もう6年ぐらいプログラム組んでるけど、
言語について書かれた本はいまだに必要だし、
使っていない機能や理解できてない機能も結構ある。
でも、目標がゲーム製作なんだから、
とりあえずクラスと関数とその他もろもろが理解できたら、
ゲーム一本ぐらい作ってみないと言語博士(※)になっちゃうぞw
とりあえずその本読み終わったらインベーダーゲームでも作ってみたら?
※言語博士・・・言語仕様ばっかりに詳しくて何も作れない奴のこと。
0869名前は開発中のものです。
04/03/17 12:02ID:eKCgaPaoCとwindowsAPIでなら多少ゲームを作った事はあるんですが、
C++を使って作った事はまだありません。
とりあえずの目標は初期のドラクエみたいなRPGなんですが、
なるべくC++の利点を活かして作りたいと思っています。
…といってもまだあまり利点が分かっていないので、
上のオブジェクト指向の解説本を読もうと思ってます。
そういう意味で、言語の解説本で読んでおいた方が良いものがあったら教えて下さい。
0870名前は開発中のものです。
04/03/17 12:07ID:QickIzjRなんでも人に聞くんじゃなくて、せっかく>>866が良い書評サイトを
紹介してくれてるんだから、まずそっちを隅々まで読もうよ…
この辺とかさ↓
http://www.1point.jp/~book_2ch/program/index.html#cpp
0871名前は開発中のものです。
04/03/17 12:15ID:GSE5TmmVしむら、うえ、うえ
0872名前は開発中のものです。
04/03/17 14:08ID:QDIYdbpoとりあえずインベーダーゲーム組んでみればわかると思うけど。
>とりあえずの目標は初期のドラクエみたいなRPGなんですが、
これをいきなり作るのは不可能だ。
もうちっと簡単なプログラムでレベルアップしてからでないと手が出ないよ。
あと、いきなりそんなにたくさん本を読んだってしょうがないと思うよ。
本に書いてあることとか、言語がどうしてそういう仕様になっているのか
いくらかプログラムを組んだ経験がないと理解できないと思う。
>>866の本を一通り読んだら、インベーダーゲーム(別のでもいいけど)みたいな
簡単なゲームを一度作ってみることをオススメする。
多分、それすら手が出ないことがわかると思う。
何をクラスにしてどう作ったらいいのか全くわからないと思うよ。
これは本を何百冊読んだってどうにかなるもんじゃないと思う。
ここまできたら、また聞きにくるといい質問ができるよ。多分w
千里の道も一歩からということで・・・。
0873名前は開発中のものです。
04/03/17 14:34ID:EmljVs5P>とりあえずの目標は初期のドラクエみたいなRPGなんですが、
>なるべくC++の利点を活かして作りたいと思っています。
まず、「ドラクエみたいなRPG」をCで作れる?
あるいは作れなくても、描画の流れやイベント、戦闘などのシステム
を具体的にどういった処理で実現していくべきか、イメージできる?
ゲームの基本的なシステムがわかってないと、「C++の利点」以前の問題
で躓きまくることになるよ。C++の利点をいかせる(オブジェクト指向的
な設計で自分にも他人にもわかりやすいコードにまとめられる)対象は、
あくまで「自分が理解しているもの」のみだからね。
C++でゲームを作りたいのであれば、この「具体的な処理をイメージでき
る」ゲームを増やしていきながら(C++のクラスベースのプログラミング
にこだわらず実験プログラムを書いて処理の流れを確認しながら)、順次
それらのゲームをC++らしく書いてみるとよいかもしれない。
0874名前は開発中のものです。
04/03/17 15:15ID:eKCgaPao分かりました。
まずは上の本を読んで簡単なゲームを作れるようになったら…って事ですね。
出直してきます。
>>873
RPGは作った事がないのですが、マリオっぽいゲームなら作った事はあります。
コードは自分でも理解に苦しむほどぐちゃぐちゃでしたが。。。
0875854
04/03/17 15:52ID:H5VmjpEJ0876854
04/03/17 17:16ID:R1oCtKcLhttp://pc2.2ch.net/test/read.cgi/tech/1079511296/l50
0877名前は開発中のものです。
04/03/17 17:34ID:ycXlUMNn0878名前は開発中のものです。
04/03/17 17:36ID:403EAZKv0879名前は開発中のものです。
04/03/17 17:40ID:QDIYdbpo0881名前は開発中のものです。
04/03/17 20:45ID:qr99gRGO林晴比古さんのビギナー編を現在読んでいます。
866さんの本とかも読んでみたいので、明日あたり本屋いってみよかと。
在学中にするべきこと、他お勧めの本数冊教えて頂けると幸いです。
0882名前は開発中のものです。
04/03/17 22:54ID:PWfg0zqh情報系の授業以外もしっかり受けろ。
まずこれで応用のできるできないの差がつくぞ。
0883名前は開発中のものです。
04/03/17 23:29ID:GSE5TmmVム板に立てたスレはどうする?
削除依頼出してこっちに新しいスレ立てようか?
0884名前は開発中のものです。
04/03/18 02:18ID:ymGNyYl1スレ立てはなんか、自治スレで一悶着ありそうだね。
オレは問題ないと思うが。。。
0885名前は開発中のものです。
04/03/18 07:08ID:LRxcG2hIhttp://pc2.2ch.net/test/read.cgi/tech/1079511296/
みたいなスレならまったく無問題だと思う。
0886名前は開発中のものです。
04/03/18 11:11ID:OoL8tssjたしか、スレ移動依頼もOKだったと思う。それを試してみるといいかも?
http://info.2ch.net/guide/adv.html
>5. 掲示板・スレッドの趣旨とは違う投稿
>スレッド
> その掲示板の趣旨に無関係なもの、多少関係があっても他にふさわしい掲示板があるもの、
> 掲示板の趣旨より掲示板自体の事象や参加者を重要視するもの、などは移動します。
0887名前は開発中のものです。
04/03/18 14:48ID:6KpM+Afihttp://gamdev.org/up/img/329.lzh
プログラムの内容とか議論したほうが盛り上がるかなと
考えたけどDelphiだと誰も理解してくれない事に気づいた
おまいら使用言語は何ですか?
0888名前は開発中のものです。
04/03/18 15:41ID:ZV++S3v10889名前は開発中のものです。
04/03/18 18:11ID:6KpM+Afihttp://gamdev.org/up/img/330.lzh
生徒募集age
一人っていうのもなんだかなんだか
0890名前は開発中のものです。
04/03/18 18:54ID:5evSSl0U使用環境は、VC++&Win32SDK(描画はDIBSection)
0891名前は開発中のものです。
04/03/18 19:47ID:ymGNyYl10892名前は開発中のものです。
04/03/18 21:26ID:tScuYvbf俺はVC++だ。C言語が一番多いと思われ。
0893名前は開発中のものです。
04/03/18 21:29ID:sTUyKY6OCygwinだとそのままではD3DXSpriteが使えなくて困った。
0894名前は開発中のものです。
04/03/18 22:15ID:6KpM+Afihttp://gamdev.org/up/img/331.lzh
http://giggle.cside6.com/hotate/をみて
次はターンかと思いやってみますた
level7〜の出題おながいします
アップローダはDelphi率が異様に高いのにどういうことなんだ_| ̄|○
ところでおまいら作らないの?
0895まとめページ
04/03/18 22:19ID:6KpM+Afihttp://gamdev.org/w/?%5B%5B%A5%B9%A1%BC%A5%D1%A1%BC%A5%DE%A5%EA%A5%AA%C9%F7%B2%A3%A5%B9%A5%AF%A5%ED%A1%BC%A5%EB%A5%A2%A5%AF%A5%B7%A5%E7%A5%F3%A4%F2%BA%EE%A4%EC%5D%5D
テトリス風落ちものゲームを作れ
http://gamdev.org/w/?%5B%5B%A5%C6%A5%C8%A5%EA%A5%B9%C9%F7%CD%EE%A4%C1%A4%E2%A4%CE%A5%B2%A1%BC%A5%E0%A4%F2%BA%EE%A4%EC%5D%5D
「パックマン」風ゲーム作らない?
http://gamdev.org/w/?%5B%5B%A1%D6%A5%D1%A5%C3%A5%AF%A5%DE%A5%F3%A1%D7%C9%F7%A5%B2%A1%BC%A5%E0%BA%EE%A4%E9%A4%CA%A4%A4%A1%A9%5D%5D
SLGを作らない?
http://gamdev.org/w/?%5B%5BSLG%A4%F2%BA%EE%A4%E9%A4%CA%A4%A4%A1%A9%5D%5D
0896873
04/03/18 22:24ID:5evSSl0U参加したいけど、今はドラ○エもどき作るので精一杯だw
数ヶ月前にCで一度プロトタイプ作ってえらいしんどかったから、今度は
C++で最低限画像周りや各種ウインドウ、データはクラス化しようとして
いるんだけど、どうなるか(とりあえずビットマップクラスはできた)。
ただ、シミューレーションも前から作ってみたかった分野だから、その
うち作るかも。といっても、私が作ると戦闘より内政中心になるかな・・。
0897名前は開発中のものです。
04/03/18 22:34ID:oWCniDLh自機を移動させたら、自機の右下に"E"と表示して動けなくしましょう
level9
自機を移動→自分のターン終了→敵が移動(動きは適当でよい)→敵のターン終了→自機の移動→・・・
という流れになるようにしましょう。
こんなもんかな?
次は移動後に待機、攻撃と書かれたメニューを表示、かな。
ちなみに俺は今一生懸命作ってる最中。
つかDirectX9なんでむずい。
0898名前は開発中のものです。
04/03/18 23:57ID:ymGNyYl1段階的学習!
http://gamdev.org/w/?%5B%5B%C3%CA%B3%AC%C5%AA%B3%D8%BD%AC%A1%AA%5D%5D
いっそのこと全部対象のスレを立てる?
いや、「おまいらに課題〜」スレを再利用したほうがいいのかな?
とかいいつつ、自分は作ってないわけだけど…
土日にひまがあったら作るよ。
0899名前は開発中のものです。
04/03/19 00:09ID:4agRkEapテトリス→ブロック崩し→パックマン→スーパーマリオ→ギャラガ
の順でやっていくにはブロック崩しとギャラがが足りない
>>897
出題乙
>>898
グッジョブ
0900名前は開発中のものです。
04/03/19 01:30ID:4agRkEaphttp://gamdev.org/up/img/333.lzh
900&333げっと
>>896
RPGのLevelを作ってくださいよ
>>898の「FF風RPGを作れ」は途中で終わってるみたいなので
0901名前は開発中のものです。
04/03/19 04:33ID:4agRkEaphttp://gamdev.org/up/img/334.lzh
ややこしくなってきたのでちょっと整理してみた
http://gamdev.org/img/img-box/img20040319042433.jpg
とりあえず我流だけどこういうの書くのってどんな記法がいいんだろ
やっぱりフローチャートが無難なのかな
0902名前は開発中のものです。
04/03/19 05:20ID:hksvIlGQ我流、っつか、何ができて何ができないのか整理できてないじゃん。
何について書きたいのか焦点が絞れてないから駄目なんじゃん。
プログラムもヤバクなってきてると予想。
とりあえず言葉から定義しなきゃ。
・こっち側の行動を プレイヤーフェイズ
・あっち側の行動を エネミーフェイズ
ってつけたらどうかな?
続く。
0903名前は開発中のものです。
04/03/19 05:28ID:hksvIlGQプレイヤーフェイズでプレイヤーができる操作は(つまりプレイヤーフェイズ時)
・メニューを出す(右クリック)
・ユニットの選択(カーソルと決定ボタン)
だけ。(いまのところ)
メニューから選べる項目は(つまりメニュー表示状態)
・ターン終了(プレイヤーフェイズを終了し、エネミーフェイズに移る)
だけ。(いまのところ)
で、なんか移動しないと攻撃できないような変な仕様になってるから
ちょっと変えて移動と攻撃を同列においてしまってはどうだろうか?
こうしておけばやりたいことが増えてもユニットアクションの追加で対応しやすい。
ユニットを選択した後は(つまりユニット選択状態)
・ユニットに依存(ユニット選択後ユニットが取れる行動をユニットアクションとする)
としておく。(移動・攻撃だけじゃないっしょー)
ユニットアクションは
・移動(行動後、特定のユニットアクションの使用が不可)
・攻撃(行動後、ユニットの行動を終了する)
だけ。(いまのところ)
0904902
04/03/19 05:35ID:hksvIlGQ0905名前は開発中のものです。
04/03/19 06:49ID:QGkp3Hf9メニュー
↓↑
入力待ち
↓↑
行動キャラの選択
↓↑
移動位置の選択
↓↑
使用アイテムの選択→(待機の場合)→[入力待ちへ]
↓↑
使用対象の選択
↓
バトル(アイテムの使用)
↓
[入力待ちへ]
こんな感じ。キャンセルボタンを押した時、一つ戻るのと入力待ちまで
戻るの違い。これは好みの問題でどちらでもいいと思う。
0906905
04/03/19 07:18ID:QGkp3Hf90歩移動した後という意味でなら攻撃できるけど。別の意味で?
FE以外あまり詳しくないから分からんけど、FEのはこういうタイプ。
TOだとATB?があって、移動しない方が後の行動を早くできるとかあるけど。
FEはそういう部分がかなり曖昧。攻撃を受けると全部に対して反撃できるし、
物交換は何人のキャラ(射程1)ともでき、物交換をした後にさらに行動でき、
装備変更だけなら行動しなかったのと同じ扱いになる。
だから、一つの武器を使いまわしながら攻撃したり、行動し終わったキャラの
装備を変更してやっつけ負けしないようにしたりできる。
これも好みの問題だけど、ルールそのものであり大事な部分。
既存のルールと同じゲームでも、キャラクターとかを変えるだけで
かなり面白いけど、新しいルールを考えてみるのも面白いかも。
0907名前は開発中のものです。
04/03/19 13:10ID:hksvIlGQちゃうちゃう、プログラムの設計の部分よ。
プログラムみると移動してからでないと
攻撃できない組み方になってたから、
ちと上手くねぇなと思ったの。
自由度を上げるならユニットの全ての行動を
ユニットアクション(>>903参照)としておいた方がいいでしょ。
#装備変更の話はユニットアクションじゃないな。
#物交換はユニットアクションだね、プレイヤーが物交換を指定したら
#対象になるそれぞれのユニットのユニットアクション(物を渡す)をそれぞれ実行かな。
#つまりユニットアクション(物交換)から別のユニットアクション(物を渡す)を発動させることもできるようにするわけ。
移動
攻撃
反撃
その他・・・
とユニットが行う全ての行動をユニットアクションとしておく。
ルールはどうであれ、こうしておけばプログラム組みやすいでしょって話よ。
0908名前は開発中のものです。
04/03/19 13:37ID:z33hohCOワラタ
0909905
04/03/19 18:40ID:QGkp3Hf9>移動してからでないと攻撃できない組み方に
>なってたから、ちと上手くねぇなと思ったの。
これはFE型の特徴だから、作者さんがこのタイプの選んだという事でもある。
>自由度を上げるなら
>とユニットが行う全ての行動をユニットアクションとしておく。
やはりここがポイントだね。Delphiが分かれば見られるんだけど。
作者さんの了解が取れるなら変更したバージョンも見てみたい。
>ユニットアクション(物を渡す)をそれぞれ実行かな。
物を渡される側もユニットアクション扱いという事ね。
0910897
04/03/19 20:31ID:xo1oo3KNlevel1
ttp://gamdev.org/up/img/336.zip
つーかDirectX9むずすぎ。
ソースはあんまり見ないで下さい。穴ありまくりかと。
0911897
04/03/19 20:34ID:xo1oo3KN.exeしか入ってねー
0912名前は開発中のものです。
04/03/19 22:17ID:38ca+b1O移動後、もしくは移動前に移動、攻撃、待機と書かれたメニューを出す
かな?
なんかほかにある?
次くらいからHPや攻撃力の設定かなぁ・・・
0913名前は開発中のものです。
04/03/19 22:23ID:bP/tfYyEあと、そろそろ独立スレにしたほうがいいかな、とか。
ム板にたってるのと同じでいいなら立てるけど?
0914名前は開発中のものです。
04/03/19 22:26ID:Heidd7j6> http://gamdev.org/img/img-box/img20040319042433.jpg
> とりあえず我流だけどこういうの書くのってどんな記法がいいんだろ
今ならUMLのステートチャート図かな。
0915名前は開発中のものです。
04/03/19 22:58ID:Heidd7j6課題の代わりに自分で開発計画を立てることが異なりますが。
「どんな難しいことでも、簡単なことに分ければ難しいことはない」とか、
正確には思い出せませんが、そんな先人の言葉があったような気がしまふ。
つーわけで初心者の皆様頑張ってちょんまげ。
0916名前は開発中のものです。
04/03/20 05:56ID:AEyHgQWAおねがいします
0917名前は開発中のものです。
04/03/20 10:22ID:HjCApWI8初心者専用スレ「シミュレーションゲーム」を作らない?
http://pc2.2ch.net/test/read.cgi/gamedev/1079745509/
今ある完成品をまとめページか、スレのほうに貼り付けると良いかも。
0918名前は開発中のものです。
04/03/22 21:08ID:l+XOFhlp0919名前は開発中のものです。
04/03/23 15:11ID:nM/D3667初心者にやさしくねぇ・・・当たり前だが。
スレで紹介されてる移動アルゴリズムがさっぱりわけわかめ
0920名前は開発中のものです。
04/03/23 15:35ID:PfXAGYNfでも、ダイクストラ法とその応用は結構基本なんで、がんばって覚えるといたほうがいい。
あっちのスレで出てたJavaで動くダイクストラ法の解説なんか分かりやすくない?
あとは、1回手でやってみると理解できるかも(結構めんどくさいけど)。
0921名前は開発中のものです。
04/03/29 15:31ID:U4Wt6qgVの解説サイトとか見てて眠くなってしまう・・・
どうすればいいのですかっ????!!
0922名前は開発中のものです。
04/03/29 15:56ID:gISmMFTt大方の作法を覚えたら必要なAPIだけ見ればいいと思うんだけど。
全部覚えたいとか?
0923名前は開発中のものです。
04/03/29 18:45ID:JJulnly40924名前は開発中のものです。
04/03/30 00:59ID:QXDOuGpk手元にある2種類のパッドの右アナログスティックのデータが入る
DIJOYSTATE2構造体のメンバが異なっているので困っています
手動でコンフィグするしかないんでしょうか?
0925924
04/03/30 01:00ID:QXDOuGpkDirectInputアナログスティック×
DirectInputでアナログスティック○
0926名前は開発中のものです。
04/03/30 15:07ID:ppW+wOLXパッドによって異なるので、プレイヤーにconfigしてもらうしかない。
0927名前は開発中のものです。
04/03/30 15:40ID:Pg71ArAR配置固定のゲームだと、ゲームする前にボタン配置に慣れる必要があって疲れる。
0928名前は開発中のものです。
04/03/31 11:39ID:A6pWBXlbよりDirectXの勉強のほうが楽しいわ、
オホホホホ
あぁWIn32APIわけわかんね
0929929
04/04/01 02:33ID:KHDslUNr使っている言語はC++です。
ゲームと言っても15パズルやクイズなど簡単な物しか作れていませんが・・・。
色々作っていくうちに自分にも欲がでるようになり、メインの部分だけでなくタイトル画面やエンディングなど作りたいという気持ちが芽生えました。
しかし、ここで困った事が。
部分部分は作れたのですが、それのつなげ方がわからないのです。
一番シンプルに、タイトル画面でボタンを押すとメインが始まりクリアするとフェードアウトしてエンディング、そしてタイトルに戻るという流れにしたいのです。
全体をループさせてるのですが、そのループ内でまた部分部分でループを作るなど考えているのですが・・・。
一般的な方法を是非御指導お願いします。
0930名前は開発中のものです。
04/04/01 02:43ID:9wC3azdeと、メイン部分しか作ったことのない俺が言ってみるw
0931名前は開発中のものです。
04/04/01 03:07ID:hm1FO9Sr俺はJava使いだけど、処理ごとにクラスを分けて、
while(true)ループ内でタイムライン管理してるな。
例を流れにすると
タイトル→メイン.Start関数呼び出し→メインループ→クリア後処理呼び出し(フェード関連関数)
→エンディング関数呼び出し→初期処理→タイトルへ
といった具合に。スタートを押したらゲームスタートさせる関数を呼び出して、
その関数の中にはゲームの開始処理が時系列で書いてあるって感じ。
0932名前は開発中のものです。
04/04/01 03:07ID:ree+3Ujsclass Scene { public: virtual void step () {} };
// 継承クラスのstep()では各場面の独自の処理を定義する
class TitleScene : public Scene { public: void step (); };
class MainScene : public Scene { public: void step (); };
class EndingScene : public Scene { public: void step (); };
Scene *currentScene; // グローバル変数
色々方法はあるけど、とりあえずC++を使ってるんだったらこんな感じでクラスを作って、
メインループの中でcurrentScene->step()を呼び出すようにすれば、currentSceneの
中身を入れ替えるだけで各場面を行ったり来たり出来るようになると思います。
0933932
04/04/01 03:09ID:ree+3Ujs0934929
04/04/01 03:44ID:KHDslUNrとりあえず、皆さんに教えてもらった方法を実践したいと思います。
本当にありがとうございました。
0935名前は開発中のものです。
04/04/03 11:35ID:CEwxIkewそのポインタのあぶねー使い方をやめろ。
0936名前は開発中のものです。
04/04/03 13:07ID:RGZrBuJ3とりあえず対案を提示してみてくれ。面白そうなので。
0937名前は開発中のものです。
04/04/03 20:39ID:CEwxIkew>Scene *currentScene; // グローバル変数
こんな怪しいものじゃなくて、管理クラス用意しろ。
0938名前は開発中のものです。
04/04/03 21:11ID:BY5/8S1Mで、その管理クラスを用意する利点はどこら辺にあるの?
0939名前は開発中のものです。
04/04/03 23:12ID:Z6SyAO1fてか、いちいち食ってかかるような手間じゃないと思うんだが
0940名前は開発中のものです。
04/04/04 01:27ID:2FxHnCxPまあ、>>939の言うとおりだ。
もちろん、管理クラスを作っても、
インスタンスをグローバルにおいちゃったら駄目だぞ。
0941名前は開発中のものです。
04/04/04 07:03ID:RKul7yqWまぁ、最低限インスタンスがないときは、NULLポインタで明示する
ような簡単な仕組みは必要かも。管理クラスのメンバーか
グローバルかってのは、あまり危険度と関係はないとおもわれる。
ようはちゃんと使用前にインスタンシエートされ、使用後にかたずけられる
ことさえ保証されていればいい。管理クラスのコンストラクタ・デストラクタ
でちゃんとやってなかったら結局危険なのには変わりはない。
Scene *currentScene = NULL; // グローバル変数
init(){ currentScene = new Scene; }
purge() { if( currentScene ) delete currentScene; currentScene = NULL; }
0942名前は開発中のものです。
04/04/04 07:17ID:K1YqnP+3え、じゃどうすんの??
・pImplで?
・シングルトンで?
・メソッドの引数渡しのみ
上二つはほとんど同じだしな
下みたいな徹底は果たして可能なのか?
0943940
04/04/04 14:54ID:2FxHnCxPもちろん「メソッドの引数渡しのみ」。
キチンと設計ができていれば、問題ないはずだよ。
また、「メソッドの引数渡し+受け取ったポインタのメンバ保存」もホントはしちゃ駄目。
必要ならその都度引数で渡してもらう。
徹底は可能かどうかってのは、その人次第だから勝手にしてくれ。
ちなみに俺はできてるよ。
0944931
04/04/04 15:12ID:F19YKyuz色々言われてるな(^_^;)
キチンと拡張性を考えるんだったら、遷移テーブルを作ってシーンオブジェクトが
終了するときに返すリターンコードで次のシーンを決められるようにしたほうが
いいと思います。各シーン間をつなぐインターフェース役の関数なりクラスを
ひとつひとつ書く必要があるんでちょっと面倒ですけどね
0945940
04/04/04 15:15ID:2FxHnCxP管理クラスを作ってもScene *currentScene = NULL;←こういうの作って
使いまわすってことは関数内でのみで完結するならやるけど
普通はやらないよ。(※)
処理的にも ポインタに突っ込む=カレントのチェンジ とするよりも
カレントのチェンジ処理をする場所を固定しておいて、
次のカレントチェンジのリクエストを出して、
カレントのチェンジ処理のところに来て、はじめてカレントのチェンジ処理を
実行するってしたほうがバグが出にくいんじゃないかな。
※糞設計にぶちあたって使わなきゃならないときもあるけど。
そのときはリスト・ツリー構造のくせに個々を識別するIDが無い。
配列で管理してるくせに時と場合によって順不同になる場合。とかだけかな。
ちなみにこーゆー場合は使うしかない。と思うw。
0946名前は開発中のものです。
04/04/04 21:08ID:v1VWQRb5「初心者のためのゲームプログラミング」だぞ
俺は質問した香具師じゃないが、初心者の俺には全く意味分からん
シングルトンって何?遷移テーブルって何?
(…いや別に知りたくなったら自分で調べるから教えてくれなくていいけどさ)
とにかく説明してくれるんなら、
もっと分かりやすく簡潔に教えてあげてくださいよ、先輩方。
0947名前は開発中のものです。
04/04/04 23:05ID:ENOyCk/Q1: タイトル画面 時間経ったら2へ スタートは5 オプションは3
2: デモ画面 終わったら1へ
3: オプション画面 EXITは1へ 操作コンフィグは4へ…
みたいの。
シングルトンてのわぁー、なんだ、
二ついらない一つでじゅうぶんなオブジェクト(うまい例が思いつかん)を、
一つだけ作るっていちいち覚えとくのがマンドクセので、オブジェクトに自分で何とかさせるd。
0948名前は開発中のものです。
04/04/04 23:56ID:8gl5+fjottp://www.interq.or.jp/moonstone/person/del/seki_00.GIF
0949名前は開発中のものです。
04/04/05 00:33ID:CGA6pWZs二つ要らないというか、あったら困るオブジェクトといえば入出力。
0950名前は開発中のものです。
04/04/05 01:16ID:2yX+Kvf5キチンと拡張を考えるなら
シーンを複数同時に再生できるようにするね。俺なら。
ゲームでは別々の世界(シーン)を同時に動かさなきゃならないなんてのがよくある。
画面に映すものはアクティブなカメラによって決定する。
こうすれば、クロスフェードや2画面以上のプレイなんかの設計も楽だ。
さらに次のシーンのロードを別スレッドで処理できるようにして
先読み処理なんかも入れられるようにするとこの辺は煮詰まってくるかな。
まだまだ修行がたりねーよ、にーちゃん。
シーンをネストのあるタイムラインとして考えればどう設計すればいいかはわかってくるはず。
Flashとかモデリングソフトのアニメーションツールさわってみなはれ。
0951942
04/04/05 10:25ID:LanhLWmnサンクソ
引数のみならず、ポインタ(オブジェクト)の保存もなしか?
# ハンドルオブジェクト(ユニークなIDを保持したもの)での保存もなしなのか?
しかし、徹底できたときのことを考えると、挑戦しがいははありそうだ
レス数が950を超えています。1000を超えると書き込みができなくなります。