画像(logo)

HOME/[C言語DXライブラリ]STGの作り方 目次/初日 STGの考え方

広告

[C言語 DXライブラリ STGの作り方]
初日 STGの考え方

広告

↓発売日:2018年09月22日↓

たった1日で基本が身に付く! C言語 超入門

新品価格
¥2,225から
(2018/10/8 23:10時点)

目次へ戻る

STGの考え方

STGを作ろうとして詰まるところはおそらくこんなトコロではないでしょうか。

1・動きがしょぼい

2・連射できない

3・敵データの数がすごい事になってきた

4・敵の弾データの数がすごい事になってきた

5・プログラムがすごい事になってきた

などなど。

今回使用しているDXライブラリ、またはグラフィック機能が充実している高級言語などを使用すれば動きのあるプログラムも意外に簡単に作る事ができます。

なんとなくプレイヤーを配置、敵を配置、動かしてみて、弾とばしてみて・・・。

「なんだ、STGなんて簡単に作れるじゃん!」

なんて思っていたら世の中そんなに甘くなく、あれよあれよと悲しい結果に。

弾幕系のような弾1000発軽く超えるような表示を全て個別に行う方はそうそういないと思いますが、ある程度リサイクルも頭に入れてプログラムを組んだのになにやら上手くいかない。

そんなSTG作りのギモンを解決していきたいと思います。

「動き」を数学の関数で表現

まず動きのしょぼさですが、x座標、y座標の縦横移動のみではどうしても動きの限界があります。

これを簡単な数学関数を使う事によって滑らかな曲線なども表現していきます。

↓y = a / x↓

画像(cdxs_1_1)

↓y = ax^2↓

画像(cdxs_1_2)

↓sin↓

画像(cdxs_1_3)

広告

「弾の入れ物」・「敵の入れ物」etc...

STGに登場する弾、敵などを全て個別に作るとなると膨大なプログラムの量になります。

なのでまず先に「弾の入れ物」・「敵の入れ物」などそれぞれ用意します。

そしてそこにタイミングが来たら「出現位置」・「動き方」・「ショットの種類」などを登録してその情報に従って動きなどを計算、表示していきます。

そして使い終わったらその入れ物を解放する事によって一定量で使い回せるようにします。

例えば一日1000人来店するレストランに必要な皿の枚数は1000枚ではないですよね。

同時に来店できる最大人数プラスちょっとあれば洗いながら回せますよね。

そんな感じです。

画像(cdxs_1_4)

たとえば自機ショットを打つまでの流れを見てみましょう。

1・ショット発射ボタンを押す

2・現在未使用の「弾の入れ物」を調べて使用中に

3・その時のプレイヤーの「弾の動き方」を登録

4・その「弾の動き方」に応じて発射・計算・表示

5・終わったら再び「弾の入れ物」を未使用に

こんな感じになります。

そしてここに当たり判定などを加えてSTGの骨組みを作っていきます。

では次回は実際にプログラムを組んでいきましょう!

次回

二日目 最低限のプログラム

□ページの先頭へ□

□目次へ戻る□

□HOME□

広告

↓発売日:2016年02月29日↓

12歳からはじめる ゼロからのC言語 ゲームプログラミング教室

新品価格
¥2,462から
(2018/10/8 23:25時点)

↓発売日:2018年06月22日↓

スッキリわかるC言語入門

新品価格
¥2,916から
(2018/10/8 23:15時点)

↓発売日:2018年03月09日↓

C言語本格入門 ~基礎知識からコンピュータの本質まで

新品価格
¥3,218から
(2018/10/8 23:16時点)

↓発売日:2017年06月14日↓

やさしいC 第5版 (「やさしい」シリーズ)

新品価格
¥2,700から
(2018/10/8 23:17時点)

↓発売日:2018年05月21日↓

作って身につく C言語入門

新品価格
¥2,462から
(2018/10/8 23:18時点)

↓発売日:2017年12月07日↓

新・標準プログラマーズライブラリ C言語 ポインタ完全制覇

新品価格
¥2,678から
(2018/10/8 23:19時点)

↓発売日:2017年02月08日↓

新・明解C言語で学ぶアルゴリズムとデータ構造 (明解シリーズ)

新品価格
¥2,700から
(2018/10/8 23:20時点)

↓発売日:2017年09月26日↓

かんたん C言語 [改訂2版] (プログラミングの教科書)

新品価格
¥2,916から
(2018/10/8 23:22時点)