1read 100read
初心者たちが勉強しながらBattleCityを作るスレ (335) TOP カテ一覧 スレ一覧 2ch元 削除依頼
スタッフロールの是非について考える会 (184)
面白いフラグ立てゲームの作り方 (105)
烈風伝ライクな戦国SLG作りませんか? (270)
【壮絶】ババァ1000人vsタイソン【格闘】 (229)
ツール・スクリプト総合スレッド (271)
お前等が初めて作ったゲームは (116)

初心者たちが勉強しながらBattleCityを作るスレ


1 :04/06/01 〜 最終レス :2013/10/28
前からゲームを作ってみたいなぁと思ってたんだけど
ひょんなことから「Microsoft Visual C++ 6.0」を手に入れました。
そこで、ファミコンで出た「BattleCity(バトルシティー)」を作ってみようと思います。
今でも、十分楽しめるゲームだと思います。
ネット対戦も考えていますが、まあ、まだ先の話です。
初心者の方々、BattleCityを一緒に作りませんか
ちなみに、C++歴 2時間です。
それじゃ、夕御飯までに猫でもわかる・・・で少し勉強してきます。
バトルシティを一行で説明すると。
「マイタンク(自機)を操作し指令部を護りながら敵タンクを全て破壊する」です。
BattleなCity(バトルシティー攻略ページ)
ttp://www5d.biglobe.ne.jp/~tic/index2.htm
あぷろだ
ttp://www.border.jp/uploader/upload.php
お勉強ページ 勝手にリンク 第2版
http://pc5.2ch.net/test/read.cgi/tech/967778156/l50

2 :
ない

3 :
最初の目標は
「戦車の絵をウィンドウに表示する」です。
その次の目標は
「キーボードからのキー操作で戦車の画像を動かす」です。
とりあえず、この2つをクリアしたいと思います。

4 :
バトルシティーは好きだった。がんばってちょうだい
でひとつ聞きたいのは>>1のプログラム経験。C++歴2時間なのはわかったけどその他の言語は修得してる?
もし全くの未経験者だったら完成はあやしくなるんじゃないかと思って

5 :
プロジェクトスレッドについて
概要や製作状況をまとめたWebページがあることが最低条件です。
この条件を満たさない場合は単発依頼スレとみなされます。
実際に動くものがあると説得力があります。

6 :
弾が当たって壁が壊れるところが難しいね

7 :
>>1
ひょんなことから「Microsoft Visual C++ 6.0」を手に入れました=Winny

8 :
ないってば

9 :
>>7
友人がWinnyでVC++落とす。
コピーして貰う。
 = ひょんなことから「Microsoft Visual C++ 6.0」を手に入れました。
かもね。

10 :
>>4
他の言語はVBしか使ったことがありません。
今日、猫でもわかる・・を見てVBより難しいことがわかったんですが、
なんとか形にはしてみます。
>>5
サイトを作らないとまずいんですか
動くものといってもウィンドウを出すものしか・・・
サイト明後日までには用意します。
ご忠告、ありがとうございました。
>>6
自分が見当違いなこと言ってるかも知れませんが、、
1ブロックを縦に4列、横に4列の16個で
弾が当たった方向の1列を消すってのはどうでしょうか
というより、16個で1ブロックを作るって言ったほうが早いですね・・・
素人考えですいません。
>>7 >>9
誤解させそうな文章ですね。すいませんでした。
実は、工業系の大学にいる友人から貰ったノートパソコンの中に入ってました。
大学に入学した時に買わされたそうです。
でも、まったく使わないそうで2万円で貰っちゃいました。
VC++が入ってるなんて知らなかったので>>1の様な文章になったんです。

11 :
ttp://www.kumei.ne.jp/c_lang/sdk/sdk_00.htm
なんとか↑のをコピペして、
ウィンドウを表示させることまでは成功しました。
(ちょっと感動、、、コピペしただけなんですけどね・・・)
ttp://www.kumei.ne.jp/c_lang/sdk/sdk_26.htm
今は、↑を読みながらビットマップの画像を
表示させるところを作ってます。
ちょっと質問があります。
このようなゲームを作るときはDirectXを使ったほうがいいんでしょうか?
まだ、先の話ですがネット対戦で10vs10を (できるならもっと多く。)
できるようにしたいと思ってるのですが。

12 :
10vs10はちと多いのでは?
4vs4あたりもちょっと多め。
2vs2が理想。
1vs1もまた理想。
でもまずは1vs壁から作らん事には・・・
わしもそのうち作るかも。(多分flashになりそうだが)
とにかく、ガンガレ。

13 :
なんかこのスレあたたかいな。
昔BASICやってたりとかしたから、応援したくなる。
とりあえずVCが分からんのでアレだが、
アルゴリズムは不変であろう。
応援する。
俺はHSPでくらいなら組めそう。
まあ、技術的に伸びることを考えればVCのほうがよいか。


14 :
DirectX じゃなくて OpenGL を使った方がよいと思うが。

15 :
ちなみに OpenGL と C++ のリンクおいときますね
ttp://www.center.wakayama-u.ac.jp/~tokoi/opengl/libglut.html
ttp://black.sakura.ne.jp/~third/system/opengl/gl.html
ttp://www1.kcn.ne.jp/~robe/cpphtml/index.html
ttp://www.kumei.ne.jp/c_lang/index_cp.html

16 :
まあ、こんな初期段階であれこれ言うのも何だと思うが、
> ウィンドウを表示させることまでは成功しました。
> (ちょっと感動、、、コピペしただけなんですけどね・・・)
俺にもこんな頃があったな。
この感動がずっと得られるような単純な人間だったら何だってできるようになるぜ。
継続は力なりだ。
頑張れよ!
ちなみにお前の現在位置は、数学で言うと一桁の足し算ができたぐらいだがな。

17 :
応援してますよ>>1
…でも、VB使えるなら…VBで組めば?
BMPもウィンドウもクソ簡単だよVBなら…
まあVC++の方が速いことは認めるが…
大した処理では無い上に、表示がDirectXなら…
VBでも変わらんよーな…winsockなら誰でも通信対戦作れるし…
まあ…VC++でDirectXの表示を解説してるサイト貼っとくね
http://www.monsho.hp.infoseek.co.jp/index.html

18 :
>>11
DirectXというか、まずDIBを勉強しなさい。DIBならDirectX使うときにも
応用が効く。ネコ26章のサンプルはDDBなのでゲームには向かない。
簡単に言うとDIBは仮想のビデオメモリのようなもの。直接書き込んで
bltするだけで好きな画像を表示できる。

19 :
けっこうまったりと助言が多くて良いスレですね。
フラッシュで作るんが一番簡単そう。
バトルシティーくらいなら、”もうだいたい出来てる”
って言えるくらいだもんなあ、フラッシュ

20 :
>>18
DIBってBitBltとかのこと?
あれだけでも十分ゲーム作れるよねぇ

21 :
別にC++屋・Java屋・VB屋になりたいわけじゃない
鯖屋にも興味がない
でもプログラムで遊んでみたい
でも時間はない
ひまわりで遊んでみませんか?
http://hima.chu.jp/
日本語でかんたんプログラミング!
「ひまわり」で学ぶアプリケーション作成
http://hima.chu.jp/hima-book/index.htm

22 :
みなさんどうもありがとうございます。
>>18さんが教えてくれたDIBで表示させることにしました。
(基礎?ぽいような気がしたので)
創作プログラミングの街
ttp://www.sm.rim.or.jp/~shishido/
の「BMPファイルからDIBを読み込む」
ttp://www.sm.rim.or.jp/~shishido/readbmp.html
のところにあったソースをコピペして画像を表示させるこに成功しました!
今、1行ずつ意味を調べてるところです。
画像を表示させるだけでもたいへんですね

23 :
何か普通にちゃんとやってるね
現段階でコピペすんのは構わないと思うんだけど、
動作内容を理解することの方がずっと重要だよ。
サンプルを一個動かしてみるたびに、
修正して何か応用品を作ってみるってのはどうかな。
もっと色んなことを学べるし、もっと楽しいと思うよ。

24 :
>>1
まずは数当てでも作ってみれば?
このままだと…コピペしかして無さげに見えるよ

25 :
サイト作りました(あぶない。。あと少しで嘘つくことになるとこだった
急いだのでかなり雑です。。。
http://www.geocities.jp/battlecityjp/
>>23
実は画像表示のソースを調べながら、
ちょっといじってたりして反応を調べたりしてます。
大したことはできないんですけどね
>>24
そうですね。
まだ、1つも自分で作ったものがないし、
少しは頭に入ってるか
今から数当てゲーム作ってきます。

26 :
初めてのC++でのゲームです。(数当てゲーム)
1時間もかかっちゃいました。
ソース↓
http://www.geocities.jp/battlecityjp/kazuate.txt
using namespace std;
を書かなかったおかげで、エラーばっかりでした・・・
ちょっと調べたら、
標準ライブラリがどうとかこうとか、、、
これが何なのかあまりわかってません
明日調べなければ・・・
関係ないですが、数当てゲーム、最高7回で成功

27 :
2,3日の学習でこれだけできれば問題ないっしょ。とっととバトルシティ作っちゃって下さい。
ちなみに細かいことだけど return に括弧はいらないよ。
俺もひまができたらバトルシティ作ってみよかな。

28 :
>>26
STLを使ったソースを参考にしてるな。STLを使わないんだったら
#include <ctime>
#include <cstdlib>
#include <iostream>
using namespace std;

#include <time.h>
#include <stdlib.h>
#include <iostream.h>
にしなさい。少なくとも今のソースにSTLのヘッダは不要。ゆえに
コンパイルも通るから。
STLは気が向いたら勉強すれば良いと思う。

29 :
・・・ごめんなさい恥ずかしいこと聞きますが
最近のCってprintf使わないモンなんですか?

30 :
勉強って書いてあるけど手っ取り早くおおよその全体を掴みたいなら
↓のライブラリを使うといいと思う
ttp://www3.justnet.ne.jp/~botchy/index.html
cの知識と高卒程度の四則演算が出来ればサクサク作れるよ
上のサンプル見てもワカランってな時は↓のサイトにゲームのサンプル載ってるから
参考にするといいと思う
ttp://ponk.jp/index.php


31 :
>>29
C++だとprintfよりcoutのほうが使われるね

32 :
>>30
ありがとうございます。
簡単そうなのでちょっと使って見ます

土日できなかったから、
今日こそは勉強するぞーっと思ったらこんな時間・・・orz

33 :
elを使って作るとほんとに簡単ですね
>>30さんに教えてもらったサイトを参考に
(自機の操作・弾・敵・当たり判定)まで作ってみました。(かなり適当ですが・・)
http://www.geocities.jp/battlecityjp/eltest.txt
(実行ファイルはサイトの方に。)
単純な動作しかしないのに、なぜか動作が重いです。
elを使うと簡単なんですが、
こんなに簡単に出来るものを使っていいのかと逆に悩みます・・・

34 :
>>33
簡単なようでそうでもないので。全部に手を出すとスゲー時間が掛かるので
まずelを使ってバトルシティの完成を目指すのがいいと思う。

動作についてはWindowモードだから重たいんじゃないかな。ウチのマシンでは
普通に動いているようだけど。移動スピードを早くすれば気にならないんじゃないかな。
ビルド時に最適化掛ければさらに速くなると思うので、当面は必要なものを追加していく方向でがんがれ〜。

35 :
> こんなに簡単に出来るものを使っていいのかと逆に悩みます・・・
最初はどうかと思ってたけど、
この姿勢はなかなかいいな。
向上心を感じるよ。でも、
> 簡単なようでそうでもないので。全部に手を出すとスゲー時間が掛かるので
> まずelを使ってバトルシティの完成を目指すのがいいと思う。
俺もこれに同意。
暫くの間、ゆるいライブラリに依存しててもいいんじゃないかな。
基礎構文がスラスラ出てきて、脳内コーディングもできるようになったら
DirectX なり SDL なり、もうちょっと難易度の高いものに朝鮮すればいいじゃない。
別に誰に急かされてる訳じゃないし、ゆっくりでいいと思うよ。

36 :
elもの足りなかったり、最終的にはdirectXで作りたいんだったら
ttp://www.twin-tail.jp/
にあるライブラリ使うと勉強になるかもしれない
el卒業で速攻directXやってもいいけどelとdirectXの中間くらいのライブラリだから
ステップアップにはいいかも
宣伝くさいがC++入門書には
これならわかるC++―挫折しないプログラミング入門 小林 健一郎 (著)
をオススメしとく。ゲーム作成っぽくPGを学べるからサクサク進めるよ

37 :
もう飽きたのか?

38 :
便りがないのは元気な証拠。

39 :
もう、一ヶ月も経ってしまったのですね・・・
忙しさにかまけて全く進めていませんでした。
>>34-36
ありがとうございます。
最初はelで作った方がいいみたいですね。
>>36
最初はelで作ってみるので、
お気に入りに登録しておきます。
>>37-38
すいません。。

40 :
処理の流れを簡単に考えたのですが、
上から順に
・フレームレートの調整
・自機移動
・敵機移動
・弾移動
・アイテムの当たり判定と効果実行
・弾の当たり判定
・画像の表示
こんな感じにしようかと思っています。
今は、いくつかゲームのサンプルを見てたんですが、
クラス?というものが使われているみたいなので、
クラスについて勉強中です。

41 :
>>1よ久しぶりに現れたな。
で、elがどうやってタイミング調整してるか知らんが、
本質的な処理ではないフレームレートなんかは後付けでいいんじゃないか?
初心者ならまず一通り動くものを作ったほうが良いと思わんでもない。

42 :
クラスって難しいですね
まだ、いまいち理解できてないです。。。
でも、なんとかクラスを使って自機移動まで作ってみました。
作ったクラスの2つです。
自機クラス
キャラクタークラス
【自機クラス】
自機の移動や画面からはみ出ないようにしています。
【キャラクタークラス】
自機・敵機・弾で共通化できそうな変数をまとめてます。
(x座標やy座標やスピードなど・・・)

キーボード入力の読み取りも
自機クラスに入れたかったのですが
どうもうまくいきませんでした。
ソースと実行ファイルは下のサイトにあります。
http://www.geocities.jp/battlecityjp/

43 :
次はマップを作ろうと思ってます。
自機クラスで画面の外に自機が出ないようにしてるので、
マップとの当たり判定もさせようと考えてたのですが難しそうなので、
mainの方で移動先の座標を出して、
マップとの当たり判定をして、大丈夫だったら自機クラスで移動。
ん〜なんかもっと綺麗に書きたい。。。

>>41
どうもです。
そうですね。フレームレートの調整はある程度できてからにします。
調整のしかたも思いつきませんし('';

44 :
http://www.geocities.jp/battlecityjp/s.html
まだ、足りないところがたくさんありそうな気がするのですが、
マップは大きなブロック(13×13)で作るとか、弾の大きさは・・・など
いろいろと決めました。
マップを作るうえで必要だったので。

45 :
>>44
地形に砂地もなかったか?
荒地だっけ?

46 :
よくわかんないけどガンガレ

47 :
なんか応援したくなったのでキャラ描いてみますた。
戦車とかはペイントなりなんなりで回転させてほすぃ(時間なくなったので。手抜きでスマソ)
ttp://www.border.jp/uploader/img/8846.png
足りないキャラはシステムが出来てからってことでおながいします。
>44
荒地とかあるのは続編のタンクフォースのほうだったような。
あそこまでのキャラを描こうと思ったら確実にRまつ。

48 :
_no
× 44
○ 45


49 :
>>47
ありがとうございます。
ちゃんとできたときの絵はどうしようかと思ってたので。
今、試験期間中のためあまり進められません。
終わってから進めようと思います。

50 :
楽しそうなスレだ
俺も試験終わったら、
ここ参考にしながらJavaで作ってみよう

51 :
>>50
協力するぜ。俺も試験終わったら。

52 :
elのサイト(もう閉鎖されてます)を見てたら、
Q&Aの「複数のCPPファイルから、el.hをincludeしたい。」
 メインとなるプログラムにはMAIN_PROGRAMを、
 それ以外のプログラムにはSUB_PROGRAMを定義して下さい。
 こうすることでel.hが実体を持たなくなるので、コンパイルが可能になります。
  main.cpp
   #define MAIN_PROGRAM
   #include "el.h"
  sub1.cpp
   #define SUB_PROGRAM
   #include "el.h"

これでキーボードの入力の読み取りを自機クラスに何とか入れることができました。
それと、マップとの当たり判定はちょっと複雑なんですがなんとかできました。
ちょっと複雑なんで他の方法がないか考え中です。
それに弾同士の当たり判定。
弾が小さくて速いので通り抜けそうで・・・
初心者でも簡単にできるかなと思ったけど結構難しいですね('';

53 :
ふつう速い弾の当たり判定ってどうするものなの?

54 :
>>53
点じゃなくて、線で判定する

55 :
斜めに飛ぶ弾とかがないから、矩形の判定処理で代用できると思うよ。
絵のほうは暇を見て増やしてまつ。

56 :
なるほど。
これでひとつ問題が解決できそうです。
ありがとうございます。
それにしても、開発の速度がどんどん遅くなってる・・・(--;

57 :
地道に進んでるようじゃのう。よしよし。

58 :
http://gamdev.org/w/?%5B%5B%c3%ca%b3%ac%c5%aa%b3%d8%bd%ac%a1%aa%5D%5D
こんなんあった

59 :
マップの表示とマップの障害物との当たり判定を作りました!
>>47さんから頂いた絵を自機に使いました。
レンガは・・・一部だけ使いました。次ぐらいに大きさを合わせます。
マップは今マップエディタを作る余裕がないので、
とりあえず、テキストから読み取るようにしました。
これなら、メモ帳で作れるので。

障害物との当たり判定は、
移動前と仮移動後の間のマスを1つずつ調べて、
障害物があったら、その障害物の前までの移動距離を返す関数を作りました。
その移動距離から移動後の座標を出すようにしてます。
なんだか間違ってそうなところがありそうで不安です・・・

次は、弾を発射です。
その次は、弾とマップの障害物との当たり判定です。
早くレンガを壊したい!!

60 :
>>59
順調そうでなによりだ
その調子でファイトー

61 :
自機はええなw

62 :
http://www004.upp.so-net.ne.jp/moyashikko/funa/tank.zip
これ作って友達に見せたら、バトルシティみたいって言われた。
誰も対戦してくれなくて、テストプレイも何もできない状態ですけどね…。w
横槍でごめりんちょ。

63 :
>>62
よくできてるけどバトルフィールドではないな。

64 :
>>63
たしかにバトルフィールドではないなw
>>62のはバトルシティを作ろうとして作ったんじゃないし
しょうがないさ

65 :
バトルフィールドも面白いんだよな。いまはRTSが近い感じだな。

66 :
>>58
おお、そこはこの前見ました。
スレ立てた時はここもそんな風にしたかったんですけどね。
自分に力なくどんな順序で作るかうまくイメージできなかったのでもう諦めました。
行き当たりばったり完成に向います('';
でも、完成したら、そこみたいにまとめるつもりです!
>>62
たった3日でそこまでできるんですか!すごい!!
自分はBattleCity作り始めてもうすぐ2ヶ月です・・・(まだまだ、完成は遠いでつ)

すいません、バトルフィールドってなんですか?
検索しても「Battlefield 1942」とかしか出てこなくて・・・

67 :
sage忘れちゃった。。
弾の発射とブロック(障害物)の破壊を作りました!
前回同様、自機の移動と弾の移動は速いままです。
画面の大きさを変えてみたんですが絵が変になるので今回は変えませんでした。
ポインタを使って自機クラスからマップクラスの関数を呼び出す方法を覚えたので
自機とマップとの当たり判定が自機クラス内で処理できるようになり、
mainが少しすっきりしました。
次はなにを作ろう・・・敵機かな。
敵機のAIは難しそうですね。。
とりあえず、敵機を作ってみます。

68 :
オレも勘違いしてたはw フィールドコンバットと。

69 :
なぜにビッグブリッヂ?ちょとワラタ

70 :
遊んでくれた人がいてうれしかったです。
遊んでくれてサンキューさんです。
友達はゲームしない人が多いので、感想も聞けなくて。
3日と言ってもお盆中に一日12時間くらいかけて作ったので、
けっこう時間はかかってます(笑)
敵機の移動アルゴリズムは手がかかりそうですねー!
がんばってください!

71 :
AIはどんなふうに作ればいいのでしょう・・・
今のところ思いついたものを下に書きました。
とりあえず、こんな感じで試してみようと思っています。
--------------------------------------------
敵機の目的:
 ・陣地の破壊
 ・自機の破壊
 
行動:
 ・初期位置から陣地へのルートを調べ、ランダムでルートを選ぶ。
(??%の確率で最初からレンガを無視してルート探索)
(陣地までのルートが無い場合:レンガを無視して再ルート探索)
(それでも無い場合:行ける所まで移動する。到着したら再々ルート探索)
 (移動中)
 ・陣地が直線上に存在した場合:??%の確率でその方向に1発撃つ。
 ・自機が直線上に存在した場合:何度もその方向に撃ちつづける。
(間に防弾壁がある場合は撃たない。)
 ・敵機同士が衝突したら再ルート探索。
 ・レンガと衝突した場合、レンガを破壊する。

72 :
オリジナルにはそこまでのロジックは多分入ってないと思われ。
そんなに賢いとあっという間にやられそうだ。
思考が馬鹿でも数多く敵が出てくれば結構強いと思うけどな。
プレーヤは陣地を守んなきゃいけないんだし。
最初は画面下真ん中への移動しつつ、適当にランダムな動きをし(障害回避)、
弾も適当に撃つって感じでもそこそこ遊べると思ふ。

73 :
とりあえずそれで作成してみると良いと思う。
バランスなどは実際に作ってからじゃないと取れないものなので。
経験をつむと調整作業を短縮できるようになるが、自力でできない
作業の省略は練習にならんのでまず作れぃ。

74 :
>71
行動は
・基本は直進
・前方が壁なら方向転換
・たまに方向転換
・前方に何もなくてもたまに撃つ
・前方に自機がいたら撃つ
これくらいの簡単ロジックでも十分ゲームになると思われ

75 :
パックマンみたいに数種類の超単純なロジックを揃えるのも

76 :
今まで、PCに触れないところに行ってました。
そして、久しぶりプログラムを見たら・・・
ごちゃごちゃしてて、自分でもさっぱり分からなくなってましたorz
ちょっと離れてただけでここまでわからなくなるとは・・・('';
今、簡単なフローチャートを書いて頭の中を整理中です。

77 :
ガンガレ

78 :
一念発起してモジュール分けをやるんだ。

79 :
漏れ、参加しようか?
マップエディタくらいなら作れるよ。
ゲームの基本的な仕様は今更ながら参加しづらいんだけども。

80 :
>>79
共同で製作しようって企画ではないんじゃないか?

81 :
>>72-75
どうもありがとうございます。
今、かなり賢いAIも考え中です。
まだ、先のことですがネットに対応して、「複数のプレイヤー vs AI」の時に使えそうなので。
>>77
ガンガレって「頑張れ」って意味だったのですね。知りませんでした.
ありがとうございます。頑張ります!
>>78
モジュールの意味は検索してなんとなく分かったのですが、
どう分けるのかイメージできなくて、
もう少し調べてみないとできそうにないです。
>>79-80
スレ立てたときは共同で作ろうと思ってたんです。
自分だけで作れる自信が無くて・・・。
今は、みなさんの助言のおかげで完成できそうな気がしてます。
マップエディタを作ってもらえるのなら、頼みたいのですが、
まだ、データの形が決まってないところがいくつかあるので('';

82 :
敵機のAIを作りました。
>>74さんのをそのまま使いました。ありがとうございます。
1.基本は常に前進
2.前方が壁ならランダム方向転換
3.xx%の確率でランダム方向転換
4.前方に何もなくてもxx%の確率で撃つ
5.前方に自機&陣地が存在したらxx%の確率で撃つ
(xx%は0〜100まで変えられます。敵機の種類ごとに変更可能。)
(実行ファイルの敵機は 3を1% 4を3% 5を50% にしています。)
思ったよりうまく動いてると思います。
でも、当たり判定を作って、速度調整をした後にもう一度
調整か改良しないといけないかもしれません。
何か動きが違う感じがするので。
次は、弾、自機、敵機の当たり判定を作りたいと思います。

83 :
右方向を向いて壁に密着して弾を撃つと、一番手前の一番上のブロックが
1個だけ残ってるね。

84 :
>>81
漏れも個人で作ってみる。
お互い頑張ろう。

85 :
バトルシティみたいなゲーム、ソース付きでBASICマガジンのホームページにうpされてるよ。
投稿プログラムのコーナーの2000年5月号のとこ

86 :
>>83
何度も試したんですが、そのバグが出てきませんでした。
なので、修正はもう少しかかりそうです..
>>84
はい!頑張りましょう。
>>85
どうもありがとうございます。
参考します!

87 :
弾-弾 弾-自機 弾-敵機 の当たり判定を作成しました。
一応、今は当たってちゃんと消えてるのですが、
ゲーム速度を落としたらバグがでてくるかもしれません(''
(自機は弾が当たっても消えません。)
------------
ちょっと質問です。
弾はshot[8]  敵機はenemy[4]の配列を使ってるのですが、
これは一般的な方法なのでしょうか?
いくつかプログラムを見たんですが、
違うやり方もあるようなので、ちょっと気になって。
ttp://www9.plala.or.jp/sgwr-t/c/sec15-5.html
最初は↑のような方法でしたかったのですが、
なんだか難しそうだし、変数が増えそうなので諦めました。

88 :
>>87
リスト構造を手っ取り早く使いたいなら、STLのlist(vectorでも良いけど)を使うと楽じゃない?

89 :
現在、自機の表示・移動まで作成しました。
次は弾の発射を作ってみようと思います。
( ・ω・)∩さんと同じようにELを使って作成しようとしたのですが、
なんだかファイル分割が出来なくて諦めてしまいました。
代わりに、ここのライブラリを使用しています。
ttp://www.interq.or.jp/black/minami-m/

90 :
>>87
リストは便利だけど、将来的に使い方を覚えるので良いと思うよ。
STLのListとそのページのやりかたは似たようなものなので両方勉強してみるのもよし。
メリットとしてはEnemy[4]だと敵が4機か1機か0機か関係ナシに4回チェックしなければ
ならないけど、リストなら1機なら1回だけしか処理を呼ばなくて良くなる。
場面ごとに出現する敵の数やアイテムの数が大幅に変動するようなものだとリストにしておけば
CPUパワーやメモリ消費を必要最小限に抑えることが出来るようになる。

ちなみに配列の敵の数は#defineか、const変数で定義した方が良い。あとで増やす時楽になるので。
#define ENEMY_VALUE 4
もしくは
const int ENEMY_VALUE = 4;
として、敵の配列の最大数として使用している4という数字をENEMY_VALUEに置き換えれば
4機じゃなくて8機にしたいときスムーズに変更できる。

91 :
初心者がSTLとかにいきなり手を出さない方がいいと思う。いろんな意味で。

92 :
とりあえずEffectiveC++とEffectiveSTLぐらいは一通り読んでから作った方が良いな

93 :
えー

94 :
STLのlistですか。_φ(・ω・ )メモメモ
このゲームは、ユニット数が少ないから配列でもよさそうですね。
でも、結構使えそうな気がするのでゆっくりと調べてみます。
どうもありがとうございました!
>>89
ファイル分割が出来ない理由って>>52ですか・・・?
間違ってたらすいません(''

95 :
今回、作ったところは下の3つです。
・弾の再装填時間を作成
・自機、敵機の停止時間を作成。(自機・敵機が一定時間動かなくなる機能)
・爆破表示 [爆破クラスの作成](自機・敵機が破壊された時のみ表示)
弾の再装填時間を忘れてました('';
敵機の停止時間は、動きを止めるアイテムのためです。
自機は味方機から撃たれた時のためのです。
次は、、、アイテム関連を作ります!

96 :
>>94
その方法は試したんですけど,改善されませんでしたorz
別のライブラリに乗り換えた今も,時々そのことを思い出して頭がもやっとします。

97 :
おー、ガンガッテるね。
そろそろ画像をうpしようと思って来たら丁度アイテム作成か!
もう用意してあるよ。でもアップローダが使えないみたいでつ。

98 :
こっちは?
http://gamdev.org/up/upload.php

99 :
>98
ありがd。さっそくうpしてきました。
ttp://gamdev.org/up/img/1326.png
ちなみにちゃんと組み合わせるとこんな画面になりまつ。
ttp://gamdev.org/up/img/1326.png

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
【忍者】2ちゃんねるがログイン制 (368)
SLG作ろうと思うんだが、アドバイスくれ (114)
純和風MMOを作ろう (101)
【壮絶】ババァ1000人vsタイソン【格闘】 (229)
Cでブロック崩しを作りたい (172)
2ちゃんねるでオンラインRPG制作 (123)
--log9.info------------------
戦後最大のチャンスに反核サヨクが大はしゃぎ(笑) (177)
今回の事態を「民主党大人災」と呼ぼう (123)
原発破戒録カイジ (153)
皆さん!東京高検へ東電捜索・清水正孝拘留の要望を (512)
大震災 備え怠り 再臨界 (174)
計画停電・第3グループ友の会 (122)
放射能】滅亡へのカウントダウン中【原発】 (189)
東電賠償を考える-福島の暴走を許すな (156)
高岳製作所と東光電気とが持株会社設立 (179)
東京に最終処分場(使用済み核燃料)を建設しろ (124)
関電の停電テロは起きるか観察するスレ (149)
【超伝導】スーパーグリッド【高圧直流送電】 (343)
条件付き原発推進運動 (123)
関西電力、被災した電力2社支援へ 東電と東北電に (257)
柏崎刈羽も稼動すべき (161)
再生可能エネルギーに関する資料・データ室 (276)
--log55.com------------------
ウェブブラウザ総合スレ Part30
iPhone 4sであと一年頑張るスレ Part31
iPhone 7/7Plus Part4
iPhone 7/7Plus Part3
iPhone 7/7Plus Part2
iOS8.xを語るスレ Part44
【下駄】SIMロック解除 iPhone4S以下専用59台目 [転載禁止]&#169;2ch.net
Sleipnir for iOS part1