音ゲーを作りたい

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ふらっと

音ゲーを作りたい

#1

投稿記事 by ふらっと » 13年前

音ゲーを作りたいと思っています。
それで、C言語を少し勉強してぼんやりとは理解できました。(正直完全には理解できていないです)
C++も基本中の基本だけ勉強しました。
ただ、実際音ゲーを作る要領がいまいちつかめなくて挫折しかけています。
とりあえず音ゲーだけが作れれば良いので、音ゲーの具体的な作り方やサンプルのソースコードを見て実際に作ってみながら勉強して、そこから自分で少しアレンジしていくという感じでいきたいと思っています。
しかし、そういったことを分かりやすく書いてくれているサイトはなかなか無いので困っています。
良いサイトや書籍があったら教えてください。
また、実際に音ゲーを作ったことがある方、アドバイスお願いします。

ちなみに開発環境は
Visual c++ 2008
Windows Vista
です

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 音ゲーを作りたい

#2

投稿記事 by softya(ソフト屋) » 13年前

ここのコンテンツのつ一つである「サンプルプログラミングの館」の「太鼓の鉄人」のサンプルは見られましたか?
http://dixq.net/sm/
Dixq(管理人)さんもあまり良いコードとは言えないと仰ってますが参考にはなると思います。

前提として、DXライブラリを使いこなせることが必要です。あと「太鼓の鉄人」の内部コード的にはシューティングの龍神録を使い回しているものと思われます。

「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ]」
http://dixq.net/g/
「龍神録プログラミングの館」
http://dixq.net/rp/

あとはDixq(管理人)さんがアドバイスもくれると思います。

「太鼓の鉄人」もですがDixq(管理人)さんの音ゲー「Aerobeat Plus」
 ↓
「空間をビートする音ゲー「Aerobeat Plus」」
http://dixq.net/Aerobeat/
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
ぱにしん
記事: 58
登録日時: 14年前
住所: 滋賀

Re: 音ゲーを作りたい

#3

投稿記事 by ぱにしん » 13年前

こんにちは、音ゲーを作った(が、途中で面倒になったり身内で不評だったりで途中でやめた)事のある人です。

確か一年前・・・自分でjubeatみたいなのを作りたくなって作ってみたのですが、操作があろうことかテンキーだったので「やりにくい」って評価をもらいました。(どうでもいい

とまぁ、それは置いといて、その時の私は殆ど太鼓の鉄人を下敷きに音ゲーを作ってました。
他は・・・あんまり参考にしてなかったと思います。探しても見つかりませんでしたし。

ふらっとさんがどのぐらいのレベルの音ゲーを作りたいかは分かりませんが、太鼓の鉄人の流れを理解するだけで殆ど作れるようになりますよ。
オフトピック
あの時私は一体どんな操作方法にすればやりにくくないゲームが作れたんだろうか・・・
マウス?アレ?それってAerobea(ry

アバター
Dixq (管理人)
管理人
記事: 1662
登録日時: 15年前
住所: 北海道札幌市
連絡を取る:

Re: 音ゲーを作りたい

#4

投稿記事 by Dixq (管理人) » 13年前

softyaさんからのパスで召喚しましたが、大したことが言えるかどうか・・。

とりあえず音ゲーに限らずゲームプログラミングはどれも骨格が大抵同じなので、基本さえ抑えれば特に問題なく作れると思います。
逆に言えばゲーム制作が未経験であれば、音ゲーと言わずもっと簡単なゲームを沢山作って慣れ、基本を抑える方が良いでしょう。

設計について、
http://dixq.net/g/
「ゲームプログラムの設計」
の章をお読み頂ければお分かり頂けるお思いますが、
ゲームプログラムは大きく分けて
・Update
・Draw
の2つに処理が分かれます。

また、実装の方法として
・リアル時間依存型
・フレーム時間依存型
の2種類があります。

リプレイデータを保存するのであれば、圧倒的に後者の作り方が楽です。

フレーム時間依存型の実装は、上に上げた
・Update
・Draw
に処理を分ける実装方法が一般的です。
処理落ちが発生した時は、Drawを飛ばしてUpdateを繰り返し行うことで調整します。

C++で作られているのであれば、
まずはこのUpdateとDrawに分けてゲームを設計する方法に慣れつつオブジェクト指向で
小さなゲームを作っていってはいかがでしょうか。

一番簡単なゲームはじゃんけんでしょうか。
簡単といっても、演出やエフェクトを入れたりするとドンドン難しくなります。
勝ったら周りをキラキラさせるとかだけでも、最初は難しいでしょう。
エフェクト関連はゲームプログラムにおいて非常に重要です。

それがつまらなければ2DSTGが簡単かつあらゆるゲームの基本になるのでおすすめです。
数百もの弾を打つ敵が大量に出てくるようなゲームは綺麗に設計しないと破綻すると思います。

STGが出来たら、処理落ちしないようにしてみて下さい。
リアル時間を測定し、Drawをスキップするようにします。
そうすればDrawに乱数を使ってはいけないこと、
Drawは単純に描画のみすべきであり、Drawメソッドに変数の値を変えるような処理を書いてはいけないこと
などがわかってくると思います。

音ゲーはその次に作れば、音ズレの修正方法や設計の仕方も分かり、作りやすいと思います。

まぁとにかくまずは簡単なゲームを沢山作って見ることですね。
作ったらここにコードを提示してレビューしてもらうといいと思います。
適切な設計方法についてのアドバイスが貰えると思います。

ふらっと

Re: 音ゲーを作りたい

#5

投稿記事 by ふらっと » 13年前

みなさんありがとうございました。
まずは練習でじゃんけんゲームからはじめてみます。
ゲーム作成は全くの初心者なのでこれからも沢山質問すると思いますが
どうぞよろしくお願いします。

閉鎖

“C言語何でも質問掲示板” へ戻る