シューティングゲーム製作技術総合 2機目

このエントリーをはてなブックマークに追加
1名前は開発中のものです。
ゲームプログラマなら誰もが通る、もしくは、通った道。青春の香り?
それは「シューティングゲーム製作」・・・。

このスレでは、そんなシューティングゲームの製作技術や技術の検証、成功談
失敗談笑い話、難易度の設定方法論、多弾の是非などについて語り合いましょう。
もちろんBulletMLなどで弾幕を作成してみたり、自分の作ったシューティングを
晒してみたり、プロジェクトをはじめてみるなどもOK!

ただし、シューティングの未来とか既存のゲームの話題などは、関連する他の
スレでやってくれ。

■ 前スレ

シューティングゲーム製作技術総合
http://bbs.gamdev.org/test/read.cgi/gamedev/1056635103/
2関連スレ:04/01/10 21:08 ID:hzI9eQA5
話題元:
http://bbs.gamdev.org/test/read.cgi/gamedev/1054379053/25-43

関連スレ:
PCで出来る2Dシューティング(STG)総合スレ8
http://game5.2ch.net/test/read.cgi/game/1070455886/
★シューティングゲームは終わらない-STAGE25-
http://game4.2ch.net/test/read.cgi/famicom/1072799633/
G-わんげ鳩大往生XII〜絆ダウン〜 4stage
http://game4.2ch.net/test/read.cgi/arc/1069685469/

参考スレ:
プログラミング言語 Lua
http://pc2.2ch.net/test/read.cgi/tech/1034182349/
FPS(フレームレート) VSYNC(垂直同期 リフレッシュレート)
http://bbs.gamdev.org/test/read.cgi/gamedev/1063274576/
リフレッシュレートに関する論争
http://mimizun.com:81/2chlog/tech/piza.2ch.net/tech/kako/972/972165437.html
3関連サイト:04/01/10 21:09 ID:hzI9eQA5
関連サイト:
STGと弾幕美を語ろう
http://www.h5.dion.ne.jp/~tamainu/stg1.htm
フリーソフトで面白いゲーム まとめページ シューティングカテゴリ
http://www.frgm.org/cgi-bin/s.php?g=stg&b=n
BulletML
http://www.asahi-net.or.jp/~cs8k-cyu/bulletml/
白い弾幕くん(BulletML+Lua)
http://user.ecc.u-tokyo.ac.jp/~s31552/wp/sdmkun/


エフェクト作成ツール:
aBOM
http://www1.odn.ne.jp/ceb94660/
BombMaker(explosion maker)
http://www.pluto.dti.ne.jp/~nkf/
Detonation
http://www.vector.co.jp/soft/win95/art/se173882.html
GraphicsGale
http://www.tempest-j.com/
Lapislazuli
http://ysserve.cs.shinshu-u.ac.jp/~xyuichi/
発色弾
http://diry.net/mia/
4名前は開発中のものです。:04/01/10 22:19 ID:MAO3kbsW
糞スレの4をゲットする俺
5名前は開発中のものです。:04/01/11 00:48 ID:YNggyZ3k
>>1
乙彼。
6名前は開発中のものです。:04/01/11 01:29 ID:Fq7cUK2P
乙です!
前スレさくっと埋まっちゃって、どうなるのかと思ってた。
7名前は開発中のものです。:04/01/11 16:59 ID:JrgtC6Ag
今まで作ろうと思いつつ踏み込めない・・・
その理由は漏れがシューティング下手だから。東方妖々夢のエクストラが越せないし(つД`)
やっぱ作るならそのジャンルのゲームはかなり上手くないと駄目だと思うのですよ。
調整とか難しいだろうし。
喪前さん方はやっぱ上級者なんでつか?大往生2周できたり??
8名前は開発中のものです。:04/01/11 23:25 ID:vT4ZLugu
>>7
シューティングが苦手な人のためのシューティングを作ればいいやん
9名前は開発中のものです。:04/01/11 23:41 ID:aynjpAkM
俺その具体的なアイデアひとつ持ってるけど内緒
10名前は開発中のものです。:04/01/12 00:48 ID:/JBSp5TR
シューティングに限らないけど、テストプレイするうちに自分だけどんどん旨くなっちゃって
リリースするときにはやっぱり難しくなってる罠、ってのが存在する。

というか、ゲームが上手いのとバランス取りが上手いのってどれくらい相関あるんだろね?
11名前は開発中のものです。:04/01/12 01:08 ID:7KOQusKL
テストプレイってのは自分がやるもんじゃないぞ
12名前は開発中のものです。:04/01/12 01:21 ID:sGmS4QDP
>>7
漏れもエキストラクリアできてないw
まぁ、まだプログラムの勉強始めたばっかだから、時間的余裕はあるし
一番最初に作るであろう習作は難易度とかそういうのあんま考えずに
自分の思うまま作ろうかと考えてる・・・。
うーん、STGもプログラムも精進せにゃなぁ・・・。
137:04/01/12 01:49 ID:dfeXEKEr
>>10
前に格ゲーみたいの作ったらバランス面でボロクソ言われたんですよ。
いいテスターがいればいいんだろうけど・・・友達いない罠(つД`)

>>12
おお!仲間だ・・・w
確かに習作なら好きに作ればいいとは思うけどね・・・。
でも一応プログラミングは分かるんだよなぁ・・・やっぱそれなりに面白いものを作りたいしね。
でも何よりの問題は絵描くのがめちゃくちゃ時間かかることかな。大体途中で飽きちゃうんだよね・・・。
つーかゲームって一人で作るもんじゃないよな。うん、分かってるんだ・・・でも友達いないんだ・・・
14名前は開発中のものです。:04/01/12 10:59 ID:qiUVhG4U
シューティングは相当難しくしても大丈夫でしょう。
A級シューターの腕ってのは、ある意味極限までイッちゃってるから。
もっとも、やる気にさせるくらい面白くないと駄目だが。
15名前は開発中のものです。:04/01/12 15:51 ID:TBQQ9OX4
>>7
東方のシューティングの場合はHardクリア辺りで十分かと。
何故ならあれは難易度=弾幕密度なだけで、根本的な違いがないから。

大往生2周なんて現状ですら日本で20人かそこらしか居ないようなレベルですよ。
大往生の真髄ってのは2周目ですが、実際は1-3以降はずーっと一緒なのです。
個人的には、1-3までノーミスノーボムクリアできた人ってのは、
大往生とはどういうゲームなのか、ってのがよく分かってる人だと思ってます。(笑)
1615:04/01/12 15:59 ID:TBQQ9OX4
>>7さんが東方と大往生の名前を出していたから使いましたが、
要するに、東方や蜂などのゲームの性質の特徴を理解していれば、
上手下手はあまり関係ないんじゃないかなと。
だけどある程度はゲームの先に進まないと性質の違いを理解できないから、
その辺は、やっぱりやりこまないとダメかな。って感じです。

ケイブのユーザーズルームの中に、
弾幕製作の仕方について書かれてるけど、あの辺がかなり興味深い。
バランス取り、というか道中の製作の仕方のコツが書いてある。
177:04/01/12 17:29 ID:4bVbjk9r
>>15>>16
なるほど。助言サンクスです。
ケイブのユーザーズルーム見てみました。
かなり面白いですね!じっくり読んでみようと思います。
で、四の五の言わず取りあえず作ってみようかな。
もしできたらここにうpしますね。いつになるか分からないけど。
18名前は開発中のものです。:04/01/13 21:18 ID:ept7m4ul
このスレがあって良かったー。ほっとしてます。

フリーのBCC簡易統合環境で
スケルトン+サンプルソースをいくつかdropすればできあがり、の
STGスケルトンを作れたらなぁ、と妄想したんだけど、
DirectXの知識を持ってないことに気づいてガックリ。

webを探していてほかにそういった用途に向きそうだと思ったのはygs2k。
Cでシューティングを書くための基本に慣れるには最適に見えます。

HSPも1画面シューティング向けっぽい。
ygs2kよりもdll開発情報が充実しているので、
STGに特化したライブラリを発表しあってウマー、なんて妄想も。

とりあえず小さいプログラムをいくつか書いて慣れてみるかなぁ。
19名前は開発中のものです。:04/01/14 09:14 ID:7uniqTLw
そりはSTGのフレームワークを作ろうという話?
(各自フレームワークもどきは持ってると思うけど統一はされてないか。)
2018:04/01/14 12:08 ID:tfvL3SeZ
どっちかというと、1画面サンプルを充実させようや程度で。
シューティングに不要な部分はごっそり削ってコンパクトに。

高度なフレームワークへの関心もありますが、
俺は低レベルなので提示されても読みきれなかったり。
21名前は開発中のものです。:04/01/14 13:58 ID:nbJ/e9+X
シューティングに不要な部分ってのがいまいちはっきりしない・・・
シューティングといっても千差万別っぽいし、アクションと内部的にはアクションとかと
そう変わらないと思うし。
Windows依存の部分とか?
22名前は開発中のものです。:04/01/14 14:33 ID:tfvL3SeZ
俺も積極的に削れという意味合いで言ったわけでもないので、気にしないで。
意味無い発言するなゴルァってことならごめんね。
23名前は開発中のものです。:04/01/16 23:22 ID:anD9wBgh
プログラム初級者です。敵のプログラムとして
while(1){
 for (i=0;i<7;i++){
  fire();
  wait(5);
 }
 wait(11);
}
のようなことを並列に実行させるのに、いままでは敵ごとに同じような関数を書いていました。
射撃、状態遷移、カウンタが一定値になったら次の状態に遷移、という具合に。
細部の違う敵を作るときのための定数分離も行いましたが、
行動そのものが違う敵の記述にはやはり同じような関数を書く必要が出てしまい、
億劫になってコーディングが頓挫してしまいました。根性ないです。

言語仕様策定などゲームデザイン本質に関係のない煩雑な作業をせずに
簡易言語で敵を記述するツールはないものでしょうか?

前スレやwebやプログラミング板を眺めて、使えそうなものは
(1) 組み込み言語
(2) 独自言語をバイトコードに翻訳するコンバータと、
  ゲーム内でバイトコードを解析して逐次実行するエンジン
(3) コードサイズやコンパイル速度に糸目を付けず、
  独自言語を並列動作用の手続き群に翻訳するコンバータ
あたりと思ったのですが、luaスレもXMLもパーザも俺には高等すぎて理解不能でした。
(2)は以前やってみたのですが、パーザの知識がなく言語仕様が粗末なままで、これまた挫けました。
(3)は原始的な思いつきなのですが、なんとなく勉強不要そうなのでここから手をつけてしまうかも。
24名前は開発中のものです。:04/01/17 10:28 ID:LAGexk6l
シューティングで使える
フリーのグラフィック素材はない?
25名前は開発中のものです。:04/01/17 14:09 ID:6BFWwDHe
シューティング用にフリーのグラフィック素材を探したことないからわからねえや、ごめんな

http://www.google.com/search?lr=lang_ja&q=シューティング%20素材&num=100
たしかにすぐに見つかるってわけでもないようだ

俺は素材探すのマンドーだから、全部自分で作ったよ。そのほうが
使えないものを没にする時間の無駄がまったくなくて、楽だった。
EDGE、JTrim などのグラフィックエディタ、
発色弾などの爆発パターン生成ツール、
DoGAなどの、パーツからオリジナルメカを作ってすぐに画像にできるツール、
そのへんを使った。

最近は絵の質感統合がマンドーだからGDIでテキトウに描くだけ済ませてる。
これならbmp読み込みなどの処理をする必要もないしな。今は万人にオススメできる方法じゃないけど
26名前は開発中のものです。:04/01/17 16:27 ID:fwLYS3oP
DoGAのはパーツに著作権があるからなあ。

海外の素材サイトなんかも著作権侵害してるとこばっかだし、
結局、素直に自分で作るか誰かに頼むのが一番よさげよ。
27名前は開発中のものです。:04/01/17 17:13 ID:6BFWwDHe
DoGA L1 なら、ダウンロードも利用もフリーだぜ

> 商業利用の場合は、別途DoGAの許諾が必要です。
これはL3のところに書いてあるけど、L1やL2も同じかこれより甘いだろう
売るようなシューティングを作るなら別だけど、今回の話題とは違うってことで
28名前は開発中のものです。:04/01/17 17:27 ID:Zw9Xjimx
「フリーのグラフィック素材」ってだけで、
フリーソフトを作るのに限定した話ぢゃないと思うぞ。
29名前は開発中のものです。:04/01/17 18:27 ID:6BFWwDHe
文脈と俺脳内常識から、フリーのシューティングを作る用途限定だと、勝手に判断させていただいた。
30名前は開発中のものです。:04/01/17 19:19 ID:gPQ3Vre9
>>24
ttp://www.angel.ne.jp/~hamham/
前スレに出てたような気もするがここのDot
31名前は開発中のものです。:04/01/17 20:09 ID:6BFWwDHe
>>30
こりゃすげーや。事前連絡さえすれば改造二次使用まで可なんて、懐が深いなー。
32名前は開発中のものです。:04/01/17 20:11 ID:6BFWwDHe
前スレに出てたフリー素材はこれ
ttp://www2u.biglobe.ne.jp/~presys/kg_cn03.htm
33名前は開発中のものです。:04/01/19 03:09 ID:c7S0qGSI
>>23
弾幕記述言語BulletMLってのがあります。
ttp://user.ecc.u-tokyo.ac.jp/~s31552/wp/libbulletml/

これを使った有名なゲームは、白い弾幕くんとかNoiz2sa系なんかがあります。
とりあえず、白い弾幕くんを落として
どんな弾幕が表現できるか見てみると良いかと。
34名前は開発中のものです。:04/01/19 05:17 ID:/QPgdvG1
>>28
DOGA-Lは同人OKですよ
FAQにわざわざ記載されてます
商業・営利利用もプロフェッショナル登録をすればOKです
35名前は開発中のものです。:04/01/19 05:46 ID:zcCFBDmJ
> DOGA-Lシリーズは、より多くの方々にCGアニメの楽しさを知っていただきたいという目的で開発されました。
> ですから、その開発や配布につきましては採算性を度外視しており、いわば慈善事業として行っております。
> ですから、当チームとしては、Lシリーズを商業・営利目的で使用して欲しくないという想いがあります。
> でも、どうしても仕事で使いたいという方には、少し多めに使用料をいただくことで、商業・営利利用を許可し
> ています。それがプロフェッショナル登録です。ですから、使用料が高くなる(20000円)というだけで、機能が
> 増えたり、サポートがちゃんと行われるというようなことはまったくありません。

> L3で制作された映像には、必ずL3のパーツが使用されます。L3のパーツの著作権は、DoGAが所有してお
> りますので、結果的にL3で制作された すべての映像は、制作者とDoGAの共同著作物になります。 各ユー
> ザーに対して、個人レベルでの使用や、映像やCG系のコンテ スト等に出品するといった活動に対し、DoGA
> がその著作権を行使することはありません。しかし、商業利用の場合は、別途DoGAの許諾が必 要です。

20000円払えばパーツ込みで商業利用可能ってことやね。
個人的にはDOGAのスタンスに賛同できないので、係わり合いになるつもりはないけど。
36名前は開発中のものです。:04/01/19 14:31 ID:hX0EFZ+Q
>>33
質問するときに情報は小出しにするな、の法則を破ってしまいました。申し訳ない。
BulletMLの可能性の高さはABA gamesのC++/Dソースと同梱XMLを見るにつけ実感していますが
導入には知識を要し挫折中です、今の俺では無理ぽ

針弾や時間変化する弾サーフィスを表示できるようなLibBulletMLサンプルがあれば…と思ったら
rRootageがそうだったのですが、BulletML部分だけ抜き取って手元のスクラッチに追加するのは
やはり難しすぎて断念しました。

(3)を選び、現在作業を進めています。
>>23は100行かそこらのコンバータを2個書き実現しました。ごくごく簡易に字句/構文解析するだけ。
敵オブジェクトのほうはプログラムカウンタとワークエリアを追加しただけで済みました。
やりたいことはその程度の簡単なことだったようです。
37名前は開発中のものです。:04/01/19 14:47 ID:nwDoLjxZ
>>35
最後の1行同意
>結果的にL3で制作された すべての映像は、制作者とDoGAの共同著作物になります。
こんなんで使いたいヤシの気がしれん
3835:04/01/19 15:01 ID:zcCFBDmJ
ああいや、私の場合はどっちかというとDoGAという団体の活動に対しての話なのですが。
68時代からずっと見てきたからなあ。
ま、シューティング制作スレなんで細かい話はパス。(ていうか忘れたともいう)
39名前は開発中のものです。:04/01/19 15:27 ID:87PEBcDk
Metasequoia+Lightflowでいいやん
40名前は開発中のものです。:04/01/19 17:29 ID:qC1ADMdT
>>39
限りなく正解に近い!
41名前は開発中のものです。:04/01/19 20:59 ID:vheVuNH1
VCとDirectXでシューティングを作りたいのですが
参考になるようなHPが中々ありません。
なにかVCとDirectXでシューティング作りについて詳しく
解説や説明されているHPってありますでしょうか?
42名前は開発中のものです。:04/01/19 22:39 ID:AC/8im3w
>なにかVCとDirectXでシューティング作りについて詳しく
>解説や説明されているHPってありますでしょうか?

なんかね…
まずVCをマスターしてから改めて質問しな
43名前は開発中のものです。:04/01/19 23:20 ID:hX0EFZ+Q
VC++やDirectXの解説サイトは山ほどあるよな。そこで情報をつまみぐいすればいいんじゃね?

もしプログラム言語をまったく知らずに
いきなりVC++を買ってシューティングを作り始めるというのなら、とめはしないが
とりあえずHSPなど楽に書ける言語から始めて
シューティングづくりのおおまかな雰囲気をつかんでみるのもいいよ、と言っとく
44名前は開発中のものです。:04/01/20 10:48 ID:RZvxjPZr
45名前は開発中のものです。:04/01/21 17:54 ID:u8s8daqp
敵雑魚とか弾など、頻繁に出現/消滅するオブジェクト管理に線形リストを考えてたんだが、
実際にはあんま線形リストにする必要が無いような気がしてきた。
データ挿入時も頭から空き探したところでオーバーヘッドは無視できるレベルだしなぁ。
46名前は開発中のものです。:04/01/21 17:59 ID:SP7g+oHo
んなもんC++のSTLコンテナ使えば一発よ。
アルゴリズムとか実装の理屈さえ理解しているなら、
STLコンテナを使わない手は無いぞ。
47名前は開発中のものです。:04/01/21 18:30 ID:u8s8daqp
STLの存在は知ってるけど今まで全く使ったこと無いんだよね
これを機にSTL覚えようかとも思ったがなんかマンドクサ
48名前は開発中のものです。:04/01/21 18:34 ID:SP7g+oHo
struct Unko { ... };
list<Unko> unko_list;

これでうんこリストの完成だ
使い方(挿入、削除、全参照など)は至って簡単だ
Webで探すなりマニュアル読むなりするがよい
49名前は開発中のものです。:04/01/21 18:55 ID:Bwdxi7H0
>>45
間に挿入すると、弾が激しく重なるような弾幕出すときにアレだから。
必ず最後/最初に新しいオブジェクトがつくのがいいのら。
50名前は開発中のものです。:04/01/21 19:39 ID:u8s8daqp
ざっと調べたが、STLのlistの内部実装がワカラン
頻繁に挿入/削除を繰り返したらOS管理のメモリ領域が不連続領域だらけになりそうなヨカソ
STL使えば実装は楽だろうけどそれ以上のメリット無いんでは?
51名前は開発中のものです。:04/01/21 19:45 ID:SP7g+oHo
>>50
もしかしてnewとかdeleteとか頻繁にやってるとか思ってる?
STLは速度特化で作られたもんですよ。更に実装も楽。使わない手は無い。

怒蜂家庭用スレに誤爆してしまった…_| ̄|○
52名前は開発中のものです。:04/01/21 22:28 ID:ob6bWGML
>>50
STLのほとんどの実装はメモリ再利用するみたいだからダイジョウブだと思うよ。
気になるならアロケータを作成するという手も。

>>49
オレなんか毎回(表示優先度→Obj作成時間)でソートしてから表示してるぜ!
53_:04/01/21 23:12 ID:caBBi+Ux
>もしかしてnewとかdeleteとか頻繁にやってるとか思ってる?

やってないと言いきれない罠
54名前は開発中のものです。:04/01/22 02:33 ID:pyBmnAL/
>>49
弾に大小があるなら、
大きい弾を下、小さい弾を上に描画すると親切かも。
見栄えにもよるけど。
55名前は開発中のものです。:04/01/22 20:01 ID:cutdAgu4
>>54
ゲーム的に元々優先順位が違う敵弾はそれでいいんだけど、
隙間のない連続弾とか、「しなる弾幕」(某氏の日記から名前拝借)とか、
弾と弾が激しく重なりまくるケースで、
配列の空き要素探索方式だと表示順序がメタメタになってちょっと気分悪くなるでし。

>>52
> オレなんか毎回(表示優先度→Obj作成時間)でソートしてから表示してるぜ!

作成時間までも。豪快ですなそれわ。
56名前は開発中のものです。:04/01/22 20:10 ID:IKlU6HR0
>>51,52
STLのメモリの利用方法って簡単に調べる方法あるの?
それともSTLのソース読んでみるしかないのかな。
57名前は開発中のものです。:04/01/22 21:27 ID:eyjWj0aK
昔のアーケードのような16bit8MHzCPUで作ってたシューティングと比べると
ものすごい勢いで富豪プログラミングが可能っぽ
58名前は開発中のものです。:04/01/22 22:37 ID:Qk+I4mvX
開発の手間をいかにして削減するかのほうがよっぽど重要。
俺の場合はSTL無しの言語なんかやってられんわ…マンドクサ
59名前は開発中のものです。:04/01/22 23:02 ID:0588/fxz
>>57
確かにそうなんだが、「10年前のハイテク」に敗北してるとも言える>富豪コーディング

CPU能力もメモリ環境も一昔前では考えられない程向上してるのに、出来た代物は10年前の
ゲームにすら及ばなかったらカコワルイわな。

STLのListは興味深い話だと思う。
シューティングに限った話じゃないけど、俺のコード設計の場合アプリケーション起動時に
必要なメモリを確保して、その後は終了まで一切新たにメモリ確保はしない。
極端な話、ゲームの真っ最中にnewに失敗したらどうすんのか?と考えるワケよ。
それにアーケード基板やゲーム専用機はメモリ容量は最初から決まってるから動的に確保・開放
する必要も無い。
STLの実装がどうなってるかは知る由も無いが、もし内部でメモリの動的確保してるとしたら
俺は使うのを躊躇うよ。
60名前は開発中のものです。:04/01/22 23:30 ID:Pxj5iZvR
>CPU能力もメモリ環境も一昔前では考えられない程向上してるのに、出来た代物は10年前の
>ゲームにすら及ばなかったらカコワルイわな。
普通に作ってる限りそんなことないと思われ。

>極端な話、ゲームの真っ最中にnewに失敗したらどうすんのか?と考えるワケよ。
失敗することが問題ではなくて、何時失敗するか予想しづらいことが問題ね。
分かってると思うけど、一応つっこんどく。

>STLの実装がどうなってるかは知る由も無いが、もし内部でメモリの動的確保してるとしたら
>俺は使うのを躊躇うよ。
アロケータを自分で書けばいいんじゃない?
61名前は開発中のものです。:04/01/22 23:41 ID:Qk+I4mvX
>>59
もしかして自力でメモリマネージャ書いてる?
62名前は開発中のものです。:04/01/23 01:49 ID:2C3G9lep
>>59
プログラムはゲームの面白さにはあまり貢献できないんだよ。。。
63名前は開発中のものです。:04/01/23 02:35 ID:2C3G9lep
ああ、面白いとかいう話じゃないのか。
カンチガイスマソ
64名前は開発中のものです。:04/01/23 03:47 ID:1U2cSSBw
10年前っつーと94年。
ダラ外やレイフォースが出ているが、それよりすごいのみんな作れるの?
すげぇな。
65名前は開発中のものです。:04/01/23 07:29 ID:SVri5Lwq
どうせ趣味でやってるプログラムなんて自己満足の世界なんだから
本人が納得のいくようなコーディングができればいいんでないの

その結果できたもんが面白ければみんなが遊んでくれて
面白くなければ見向きもされない、それだけのこと。
66名前は開発中のものです。:04/01/23 07:46 ID:5KW+1OFa
富豪的プログラミングやってて気づいたんだが、
結局、昔からのテクニックや資産を受け継いでなくても
それなりに作れてしまう罠。

んで、PC以外の環境で作ることになりそうなんだけど、手も足も出ないよ_| ̄|○
昔ながらの擬似タスクの実装とか、動的メモリ確保なしでやりくりするような
低コストでゲーム作る方法はどっかで得られないものか・・・
67名前は開発中のものです。:04/01/23 08:46 ID:uc+jGZlE
普通そういう環境の場合って環境作りから始めるのが普通じゃねーか?
http://www.alfasystem.net/dojo/room5/ShikiMaking/
つーか動的メモリ確保無しとかありえねー
68名前は開発中のものです。:04/01/23 09:14 ID:HdDlN+Yo
(1)自分でメモリ管理モジュールを書く
(2)その辺に落ちてる再利用可なmallocライブラリを移植する
(3)newlibを移植する
とか。
ゲームなら(1)で十分?
GBAとかならまだ(ゲームの規模にもよるが)十分富豪的に出来ると思うけど、
8ビット機とかだとつらいかもね!

>>64
意図的に話を摩り替えて煽ろうってのも結構カコワルイな。
天然だったらごめんw
69名前は開発中のものです。:04/01/23 09:22 ID:sxqkMlFd
なんでもかんでも必要オブジェクト数ぶんmallocしておいて
あとはオブジェクトへのポインタのリストをソートするだけじゃダメなのか?
動的な配置が必要になるほど高度なもの書いたことないからわからなくて。
70名前は開発中のものです。:04/01/23 10:00 ID:uc+jGZlE
>なんでもかんでも必要オブジェクト数ぶんmalloc
これが富豪プログラミングだということなんだよ…
アケ基盤とか家庭用機ってのは非常にメモリが少ないんでメモリ管理が大事なわけ
71名前は開発中のものです。:04/01/23 10:07 ID:HdDlN+Yo
必要な分だけmallocするなり配列定義するなりして、要求に応じて
使っていくのが(1)なわけだな。
72名前は開発中のものです。:04/01/23 10:59 ID:sxqkMlFd
メモリ制約の大きい環境では、節約のために
動的なメモリブロック解放と再配置が必要、ということか。
大変なんだな…

疑似タスクはバイトコード実行エンジンの規模を小さくする以外に方法あるのかな。
73名前は開発中のものです。:04/01/23 12:02 ID:1U2cSSBw
>>68

>>CPU能力もメモリ環境も一昔前では考えられない程向上してるのに、出来た代物は10年前の
>>ゲームにすら及ばなかったらカコワルイわな。
>普通に作ってる限りそんなことないと思われ。

この流れから行くと10年前のものより良いもの作れて当たり前、と読めたんですが。
強者ぞろいだなー、と普通に感心してしまったんですが。
煽るつもりはなかったので天然すか・・・ orz
74名前は開発中のものです。:04/01/23 12:12 ID:h9/WNcZg
>>73
安心しる
漏れも同感だ

>普通に作ってる限りそんなことないと思われ

これどういう理屈か全く理解できんが
75名前は開発中のものです。:04/01/23 13:56 ID:sxqkMlFd
単に誤解してるだけでは。
>>68はいまどき敵弾が画面内に16発しか出ないとかフレームレート30しか出ないとか
そういった意味の話をしてる。
>>73とか>>74は、怒蜂より面白いゲームが作れるのかーヘェーとか解釈してる。
まぁ俺も最初に読んだときは釣られそうになったけどね。
敵を一体作るたびに面白いゲーム作るのって難しいなと痛感してるから。
76名前は開発中のものです。:04/01/23 15:41 ID:HuVJb4mk
つーか10年前のゲームを知らんだけだったりしてな
温故知新ですよ
77名前は開発中のものです。:04/01/23 16:35 ID:HdDlN+Yo
>>73-74
だからなんで
・富豪 vs 旧来手法
という話を
・面白い vs つまらない
・技術的に高度 vs 高度でない
に摩り替えたがるのかなー?
それぞれ独立な話でしょ。

まぁ、>>73-74的な話に付き合うならば、富豪的プログラミングをしようが
しまいが、面白い奴を作れる奴は作れるし、作れない奴は作れない。それだけの話。

>>普通に作ってる限りそんなことないと思われ
>これどういう理屈か全く理解できんが

「ハードが足を引っ張ることはない」という意味で、ゲーム作りの実力が同じなら、
富豪的に作っても少なくとも出来が下回ることは無い(実力が普通に出せれば)とい
うこと。実力が無いなら当然劣るものしか作れないだろうね(当たり前だけど)。
78名前は開発中のものです。:04/01/23 16:40 ID:47ipkBgb
10年前のPC98のゲームということじゃねえの?
色数とか弾数だけなら負けねえっとことでは。

まぁ、10年前の良作の足下にも及ばないものが多いのも事実。
(スカッシュボムとか今新作とし出しても十分通用しそうだしな)
79名前は開発中のものです。:04/01/23 16:48 ID:HdDlN+Yo
10年前の駄作を上回るゲームも多いけどな。そういう話でしょ?
80名前は開発中のものです。:04/01/23 17:16 ID:HuVJb4mk
後付けカコワルイ
81名前は開発中のものです。:04/01/23 17:43 ID:2C3G9lep
10年なんて適当に言っただけだろうし、あんまり突っ込むのもどうかとw。
だいたいゲームなんて10年前どころか20年前と比べたって、進化してるのは
ハードウェアとグラフィックだけだ。
82名前は開発中のものです。:04/01/23 17:45 ID:h9/WNcZg
うむ、かなりイタイな
83名前は開発中のものです。:04/01/23 18:00 ID:sxqkMlFd
プログラミングの技術はwebに転がってるけど、
シューティングをどう作ると面白いのか、っていう技術はほとんど知られてないよなあ
このスレでそういったネタも扱えると面白いんじゃないかと思うんだが
84名前は開発中のものです。:04/01/23 18:45 ID:2C3G9lep
商業作品を例に出して、面白さの研究をするってのは悪くないが
スレの内容として微妙だと判断する人もいるかも試練。
85名前は開発中のものです。:04/01/23 19:20 ID:kBv6DFGk
何のゲームのどこが面白かったを語るぐらいなら問題無いんでないかい?
スターソルジャーはオモロカッタな。
あれで初めて敵の早回しという概念が出たと思う。


以下読まなくてもいい文章。

どう作ると面白いのか?ってのはシューティングの概念から外れそうだな。
突き詰めると映画マンガ音楽ゲーム、全てのものに当てはまるようなものになるだろうし。
緩急のリズムやら意外性やら呼吸の間やら、何に対して爽快感などの快楽を感じられるか?
ストレスによる圧迫とそれが解放された時の快楽など、精神の奥深くを理解しないといけない。
優れた芸術家ってのはそこら辺を計算でなく感覚で判っているような人たちだと思う。

なのでどうすれば面白く作れるか?を話し合っても、結論が出なくて荒れるだけだと思うぞ。
86名前は開発中のものです。:04/01/23 19:39 ID:uc+jGZlE
王道シューティング(ショット&レーザー&ボムだけのゲーム)だとしたら、
それなりにシューティングをやりこんでないと面白いのは作れないかも。
敵配置や敵の攻撃とかは実体験によって得られるもんだと思うんで。

だけどオリジナリティが無いと既存ゲーと似たようなものになっちゃう。
当然プログラムの能力が無いと実装すらできない。(w
まーその辺の能力が揃って面白いゲームが作れると思うんだけどね
87名前は開発中のものです。:04/01/23 19:49 ID:sxqkMlFd
結論の出ないネタを振るつもりはなかった。
いわゆる早回しには二通りあるとか、そういった事実を述べるだけでいいと思ってたんで。

ネタを仕込んでも調整が足りなければつまらんゲームになってしまうけど、
何も知らないで天然ゲーばかり作っているよりは進歩があるんじゃないかな。
88名前は開発中のものです。:04/01/23 20:57 ID:U4LkXWfs
当たり判定の管理ってどうやってる?
特に擬似マルチタスクを用いてプログラミングしているとき、どうやって相手を特定するのか
自機、自機弾、アイテム、敵機、敵機弾などの判定の仕方とか

静的にデータを持ってるならオブジェクト数分ループすれば良さそうだけど
89名前は開発中のものです。:04/01/23 21:08 ID:Y07GaPJT
今のコンシューマハードなら、シューティング程度なら
十分すぎるほど富豪的プログラミングできるはずだぞ。
動的メモリ管理についてはOOスレでフレームになってたので読みたまえ。
90名前は開発中のものです。:04/01/23 21:09 ID:uc+jGZlE
>>88
あんまりいい方法じゃないと思うんだけど、
俺が擬似タスクを使ってたころは毎フレーム当たり判定領域を登録してた。
擬似タスク処理、そのへんを詰めていくと変になる。色々と上手くいかなくて。
今はタスク処理など使わずに普通にSTLコンテナ使ってます
91名前は開発中のものです。:04/01/23 22:20 ID:VX58rWFU
前スレにも書いたけど、
(1)管理オブジェクト(orメインループ)内で全組み合わせで当たり判定
(2)当たっていたらそれぞれのオブジェクトに何と衝突したかを通知
こんな感じ。
管理オブジェクトは画面内のオブジェクトをタイプ別にリストとかで持ってるわけね。

どのオブジェクトタイプとオブジェクトタイプを当たり判定すべきなのかは
ハードコーディングしてる(自弾と敵、敵弾と自分、敵と自分…とか)。

って、擬似タスクの話じゃないね。ごめん。
9259:04/01/23 22:37 ID:jmlq0XPJ
なんか一人上手な方が暴れてたようですな…
93名前は開発中のものです。:04/01/23 23:20 ID:HdDlN+Yo
>>83-87
面白さを議論するなら、PCゲーム板のスレが参考になると思うんだが。
あそこは開発者もいっぱい見てるみたいだしね。時々そういう話の流れになるw
94名前は開発中のものです。:04/01/24 01:22 ID:si7fT7Mo
アケ板のシューティングスレ等は、蜂マンセーなのもいれば、蜂はシューティングをダメにした元凶という意見があったり千差万別で興味深い
95名前は開発中のものです。:04/01/24 01:31 ID:Fkqm/vjA
ゲーム性が別ものだもんね
オレは蜂好きだけど蜂の真似して作られた弾幕シューは嫌い…
ケイブ以外が出してる弾幕シューはつまらん!
96名前は開発中のものです。:04/01/24 01:48 ID:hdpwY7zN
つ〜か、弾幕ゲ〜見てると、作ってる人間が楽しんでるだけにしか…。
人を楽しませるって感じがしないのは古い人間だから?
97名前は開発中のものです。:04/01/24 04:11 ID:/yUJix79
>>96
実際そういうのは多いと思う。
でもそうでないものもちゃんとあると思う。
98名前は開発中のものです。:04/01/24 07:15 ID:sdetncSJ
弾幕シューって、ただ弾を撒き散らしてるだけじゃ駄目なんだよ。
そこがケイブシューと他の弾幕シューの違い。
ほんとにケイブんとこは見事に考えられてる
99名前は開発中のものです。:04/01/24 07:56 ID:7GC4w7/6
>>98
激しく同意。
>>94の意見が出るのもわかるけど、
それは、蜂が駄目にしたんじゃなくて、
見た目の面白さだけ真似たゲームが駄目にしたと言っていい。

決して、ケイブは弾幕(だけが)がすごい、面白いわけじゃない。
100名前は開発中のものです。:04/01/24 08:49 ID:sdetncSJ
弾幕シューだけども「自機ありき」と「弾幕ありき」の違いがあるわけ。

ケイブのユーザーズルームに、自機にこういう動きをさせるには、どういう弾幕ならできるか?
ということを考えてる、と書いてあるっしょ。自機を動かすための弾幕なわけで。
大量の弾が高速に襲ってくるが決まった動きをしてれば死なないように出来てる。
そのケイブの意図した動きが出来なければ、追い詰められて死ぬ。
ん?ケイブシューターは池田に踊らされてるのか?w

それ以外の真似ただけのゲームってのは、自機の動きはお構いなしに弾を出してる感が強い。
そうすると、発射時は幾何学的に美しい模様をしていても、自機に到達する頃には、
各種の発射源からの弾がごちゃ混ぜになったばら撒き弾になってることが多い。
だからステージ全般(道中、ボス)を通して主に自機の周りの細かい弾避けがメインになる。
なんでもないところで操作ミスによる死が多い。

それぞれどう感じるかは人それぞれ。
俺は前者を突き詰めたのが大往生であり後者は東方だと思ってる。両方とも俺は好き。
101名前は開発中のものです。:04/01/24 11:59 ID:8QS1Kqgv
なんだよおまえら。俺の言いたいこと全部言ってくれやがって。
そんな俺も蜂フォロワーは作りたいけど、基本に戻ってタイガーヘリフォロワーからやってるYO
102名前は開発中のものです。:04/01/24 12:12 ID:Cn4Vy1KG
最近のシューティングって、弾幕の濃さだけを求めた結果、当たり判定がコックピットだけとか、
1ドットとかばかりになってしまった弊害を生んでるけど、どうだろう。

俺は理不尽なミスを感じるので否定派
大往生のプロモムービー見たとき「お前死んでるじゃん!」、「なんで死んだんだよ!」
と思ったことひとしきり。
103名前は開発中のものです。:04/01/24 12:26 ID:5eFTySam
昔のシューティングって、弾の速さだけを求めた結果、当たり判定が自機の大きさ以上とか、
自機の大きさをはみ出した四角とかばかりになってしまった弊害を生んでるけど、どうだろう。

俺は理不尽なミスを感じるので否定派
雷電の自分プレイを見たとき「オレ死んでるじゃん!」、「なんで死んだんだよ!」
と思ったことひとしきり。
104名前は開発中のものです。:04/01/24 12:31 ID:/yUJix79
>>103
雷電もトライゴンさえも自機より判定がでかいということはないが。
105名前は開発中のものです。:04/01/24 12:45 ID:XkCLoQQN
翼の先まで正確に当り判定を定めた所で果たして面白くなるのかどうか。

横にロールしてる時は当り判定が小さくなるとか、
変形によって判定を変化させるとかその程度か?
106名前は開発中のものです。:04/01/24 12:46 ID:Cn4Vy1KG
弾と自機の接触が見た目より大きいのはソルバルウとSYDくらいだね(斜前で死ぬ)
大抵はキャラクタ絵に収まる矩形で判定されてるはず

今なら中心間の距離等で判定するのがお手軽
107名前は開発中のものです。:04/01/24 12:47 ID:5eFTySam
そうなの?なんか感覚的に
「△」これを自機としたとき左上と右上の何も無い部分にまで
当たり判定があるように感じる
108名前は開発中のものです。:04/01/24 12:48 ID:Cn4Vy1KG
>>105
いくらなんでもそこまでせんでもよいと思うが(w
109名前は開発中のものです。:04/01/24 13:31 ID:sdetncSJ
>>102
弾幕の濃さとか当たり判定とかが小さいとかは、弊害とはいわんやろ。
それはそういうシステムなのだと考えるものじゃないかな。

理不尽なミスってのは例えば某スレで上がってるpersec47の高難易度面で出てくるような
突然「全方位で超速弾なのに密度MAXな弾幕」にぶち当たるとかじゃないのかね。
高速弾だろうが高弾幕密度だろうが、それぞれ理詰めで抜けられる。
但しそれをどう感じるかは微妙。理詰め要素が好きな人もいれば嫌いな人もいるし。
ただアケシューターってのはそういうのが大好きな奴が多い。と俺は思う。俺もそうだしw

シューティングって見た目地味だから、弾が多くて派手にするという点では、
弾幕が濃いってのは売り物としては成功なんじゃないかな。
110名前は開発中のものです。:04/01/24 13:33 ID:sdetncSJ
なんか書いてて無茶苦茶になってる…
perser47ってランダムで敵キャラ生成するんだけど高難易度面だと絶対無理な弾幕が生成されるんですわ。
それに対して彩京シューの高速弾やケイブの高密度弾幕は理詰めで抜ける道が用意されてる、って話っす。
111名前は開発中のものです。:04/01/24 14:04 ID:Cn4Vy1KG
>>109
確かに弊害というのは語弊があるかもしれないけど、昨今のシューティング(特にオンライン物)
見てると、猫も杓子も軒並み弾幕・当たり判定小さいというのばっかりになってしまって、食傷
気味になっているんだよね。
それがシューティングのプレイヤー離れを起こしている要因にもなっていると思うし。

現在のアケシューターが弾幕を求めているのは分かるけど、それは結果的に弾幕に対して適性が
あったものだけが残ったもので、多くのものは離れてしまったのでは?、と。

かく言う俺にとって至高のシューティングは未だに雷電なんで、今となってはこんなのマイノリティ
の戯れ言なんだろうな。
112名前は開発中のものです。:04/01/24 15:13 ID:+8GD8bLj
>>105
傾いたときに当たり判定が小さくなるのはポピュラーですよ。
必死で避けてる時に避けやすくする、という意味でね。
113名前は開発中のものです。:04/01/24 17:56 ID:A3SSrSFS
雷電もケイブも弾の撃ちかたがすごく洗練されてるんだよなあ。
ただの高速弾や大量弾じゃない。
なんとかその中身まで受け継ぎたいと思うよ。
雷電には学ぶべき良い点が多い。恥ずかしながらシューティング作り始めてから気づいたけど。
114名前は開発中のものです。:04/01/24 18:48 ID:hdpwY7zN
漏れは弾幕よりも、演出マンセーなシューターなので、
ケイブ系よりもタイトーとかコナミ系の方が取っ付きがいい
ジジイだからな
115名前は開発中のものです。:04/01/24 21:43 ID:/yUJix79
俺はジジイだが逆だぞw
116名前は開発中のものです。:04/01/24 21:53 ID:vEiRJ2Ow
雷電やソニックウイングがあったころはシューティングもゲーセンの主要ポジションにあって
結構いけてた気がする。

でも、今のプレイヤーが求めているのが美しい弾幕、ケイブのように計算された弾幕
であるなら、シュー制作者としては皆そっち方面の技術・面白さを追求することが正解だろう。
117名前は開発中のものです。:04/01/24 22:17 ID:A3SSrSFS
プレイヤーを洗脳して、俺が好きなものをプレイヤーにも求めさせるつもりでやってる。

美しい弾幕はおまけというか釣りで、本質は道中の多様な変化
(腕前の変化で道中の内容が変わる)をプレイヤーに楽しませること。

あと俺もジジイだが、今風の演出よりは古式ゆかしい東亜前期の弾避けが好きだ。
118名前は開発中のものです。:04/01/24 22:18 ID:/yUJix79
タイトーシューは昔から演出がイイと思うんだが、
モノによっては演出過多でゲーム展開を阻害してるのも事実。
119名前は開発中のものです。:04/01/24 22:43 ID:sdetncSJ
>演出過多でゲーム展開を阻害
サイヴァリア2の1面ボス開幕だなw
120名前は開発中のものです。:04/01/24 23:12 ID:nRKAKLKh
ダライアスはいいゲーム
121名前は開発中のものです。:04/01/26 00:18 ID:JSXTKa7f
ダライアスは弾切れが良かったよね。

本当の事を言うとアノ頃の自分にとってグラディウスが神で、
ダライアス、ファンタジーゾーン、R-TYPEはクソだった。

15年以上して、それぞれの面白さを認められるようになったが・・・
こんな自分はたとえ、ゲーム開発者になっていたとしても、
きっと、偏った、独りよがりのゲームしか作れなかったと思う。
122名前は開発中のものです。:04/01/26 00:36 ID:p07N7Gmn
>>121
それはわからない。
人は成長するもんだ。
123名前は開発中のものです。:04/01/26 00:58 ID:+Gm5nSve
>121
だったら、逆に言えば、今なら開発者としてじゃなく
趣味で作っても、独りよがりじゃない面白いゲームが作れるかもよ?

と言って密かに面白いゲームが遊べることを期待する俺(笑)

124名前は開発中のものです。:04/01/26 13:39 ID:aHahhsWY
>>121
作って見れ。
それなりにシューティングやって、面白いか面白くないか分かってるなら
それでいいだろ。面白いと思ったところだけ引き抜いて1つの
ゲームにしてしまうんだ。

漏れシューティング作ってる。お前も作れ。








と、>>123と賛同する漏れ。
125名前は開発中のものです。:04/01/27 01:11 ID:ib8ZPXJq
一人1面担当のごった煮シュー(゚Д゚)ウマー
な訳無いか。
126名前は開発中のものです。:04/01/27 04:08 ID:1w0W1jir
自分で昔作った時に重視したのは、何より敵が「編隊」で現れるところ。
格闘ゲームのコンボとかに近いんだよね、ツボを突いたら連続して撃ち込める!みたいな、実力でつかめるお徳感が味わえる。
で、何連続で破壊できたか?て訳でコンボ数を表示。破壊時の爆風アニメーションが一つでも残ってればコンボ数が継続されるようにした。
スターフォースの頃からあった仕組みの、敵を倒しきったらすぐ次の敵が出るというシステムを採用していたので、撃ち漏らしさえしなければ延々とコンボを繋げられた。
コンボが途切れた時点で、コンボ数×コンボ数のボーナス点。
一定の編隊数を倒すとボス戦なので、開幕からボスまでコンボ繋げられればパーフェクトボーナスで×2。
ボスはサラマンダの123ボスを再現したなぁ。丁度手頃なボリュームなんだよね。
ラスボスは動き回るゴーファーもどきの口に入って、狭い頭内で脳を破壊するようにしたよ。
127名前は開発中のものです。:04/01/28 00:17 ID:+XkvgdaE
みなさんは敵の座標・データとかはどうしてますか?
敵のデータを書き込んで動かそうとしているけど
なんだかうまくいかないので困ってます・・・
モウダメポ・・・_| ̄|○
128名前は開発中のものです。:04/01/28 00:40 ID:COjqq0L8
もうちょっと詳しく話してみろよ。どんな結果を期待してたのにどううまくいかなかったんだ?
俺も今作ってるから、何か助言できるかも知れない
129124:04/01/28 00:44 ID:Bd929imP
>>127
今一言ってることがわかんないんだけど、

敵自体の動きは数を押さえてコード上で記述。
ステージはスクリプト化して別テキストデータで用意、ステージ選択後にロード。

というような話でいいんだよね(;´ω`)
漏れもそこは大変だった。ガンガレ
130名前は開発中のものです。:04/01/28 00:46 ID:xyb4BaUY
よく分かんないけど、とんでもないとこで上書きしてるとか?
とりあえず動かないキャラの座標メモリへのアクセスをデバッガでヲチしてみれ
131名前は開発中のものです。:04/01/28 02:40 ID:+XkvgdaE
う〜ん、敵の座標を
           ―――●←敵
          /
         /
        /
       ●
という風に動かしたいのだけど
斜めに逝かず横に逝ったり、横に逝かずに下にいったりするんです
ちゃんと行きたい方向の値を書いているのに・・・
・・・スクリプト化ってナンデスカ_| ̄|○
132名前は開発中のものです。:04/01/28 03:15 ID:9JhcHi4N
値の入力がおかしいのか、変数が壊れてるのか、計算が間違ってるのか
トレースして調べてみよ
133名前は開発中のものです。:04/01/28 10:09 ID:Gl3/BTtt
>>131
なんかもう初歩の段階で躓いてるヨカソ
ちなみに斜めに弾は飛ばせるか?
134名前は開発中のものです。:04/01/28 10:16 ID:COjqq0L8
たぶん、これまでの回答の半分は難しく答えすぎて伝わってないな

>>131は (100,100) に出現して 真横に移動する敵
(200,200) に出現して 真上に移動する敵
任意の場所に出現して 任意の方向に移動する敵
をそれぞれ作ってみな。方向転換のことは最初は考えなくていいから。
135名前は開発中のものです。:04/01/28 11:49 ID:9JhcHi4N
敵キャラの動きとか配置って大変だよねえ…
効率的に作成する方法ってないもんかなあ。
136名前は開発中のものです。:04/01/28 12:45 ID:6z9mWFVI
いろんな方法があるよな

俺は効率の追及以前に、自分にとっては高度すぎる配置と動きを組もうとして挫折したことがある
いまはやれる範囲でいろいろやってるので、時間がかかっても結果は出せてる
少しずつ高度なこともやれるようになってきた
137名前は開発中のものです。:04/01/28 14:14 ID:59+zu0I2
>>135
道中が長いと面後半の調整は大変ですな。
昔作ったシューティングでは途中を飛ばす機能を入れておいた。
単に無敵にして目的の場所まで画面を表示しないようにしただけだけど。(w
当時は画面表示が占める処理が大きかったので結構使えた。
138名前は開発中のものです。:04/01/28 15:04 ID:6z9mWFVI
俺が作ってるタイプは、やっぱり今でも画面表示の占める処理がほぼ全部だぜ
表示しないモード、描画同期待ちしないモードの切り替えはいろいろ役立つな
139名前は開発中のものです。:04/01/28 19:23 ID:BrhzeRut
敵出現用のマップエディタは便利
140名前は開発中のものです。:04/01/28 19:55 ID:t2W4UT6r
敵動かすのって、敵テーブルに種別と座標、耐久力、弾に関係するフラグやカウンタ、動きに関係するフラグやカウンタを持っておいて、
色んな角度に直進する動きだけ書いた敵動作関数にインデックス渡して、種類と動作関係フラグ毎に角度と速度決めて動かせばいいんでしょ?
141名前は開発中のものです。:04/01/28 20:56 ID:wWqy4BZN
>色んな角度に直進する動きだけ書いた敵動作関数
気が向いたら曲線も入れてやれ
142名前は開発中のものです。:04/01/28 21:57 ID:t2W4UT6r
>>141
曲線なんていつ使うの?
1フレ毎に角度変えればいいだけじゃん。
143名前は開発中のものです。:04/01/28 22:27 ID:n5XtEH9q
>>142
データが小さくできるから変更が楽ですよ?
144名前は開発中のものです。:04/01/28 22:50 ID:UNXsAncS
CatmullRomとかで通過点指定するだけで滑らかな動きが実現できるんだから使わない手は無い
145名前は開発中のものです。:04/01/28 23:50 ID:t2W4UT6r
へぇー。
便利な関数があるってわけだ。
146名前は開発中のものです。:04/01/28 23:51 ID:NHMF/MaT
特殊な動きをさせるのでない限り、スプラインとかそういう奴でパスを作って
それをなぞらせるだけのほうが開発効率いいかなぁとか最近オモタ
147名前は開発中のものです。:04/01/29 10:51 ID:sIo6BMgn
敵出現のタイミングも一考ものだな
毎フレーム、敵テーブルや敵配置マップから情報を読み取って、淡々と出現させるものと
一度にある一定数を出現させた後、プレイヤーが全部を倒すか、画面から消えるかすると
改めて、また一定数の敵を出現させる物
アーケードでは前者は怒首領蜂 大往生、後者は式神1が当てはまるな
148名前は開発中のものです。:04/01/29 12:45 ID:eU5sm3RC
>>140 敵は与えられたルートに従って動くだけならこれで良いかも。
敵が自分で判断して挙動を変えたりとかはしないの?
149名前は開発中のものです。:04/01/29 13:40 ID:m6hm+YbS
>>147
後者の代表例はゼビウス、スターフォース、ザナックあたりかな
出現時刻がアナログに変化するところが前者との大きな違いだ

前者のほうが確実に組めるので調整はしやすいが、
後者にもいろいろと可能性がありそう
150名前は開発中のものです。:04/01/29 13:48 ID:UL5pPhOq
ZANACは早回しとか入ってないよ。
151名前は開発中のものです。:04/01/29 15:15 ID:m6hm+YbS
テキトウ言っちまった。スマン。
ZANACは敵消滅が次の敵のトリガになるわけじゃなかったね(キャラオーバー時のぞく)。
武器を取った瞬間にテーブルが変わって新しい敵が出る(ことがある)ので、それとごっちゃに語ってた。
152名前は開発中のものです。:04/01/29 15:17 ID:yY/wX3du
戦車とか砲台を地形にシンクロさせるためには出現時刻の細かな調整が欠かせない。
しかし地形を意識しなくなると途端に作業が楽になるな。
153名前は開発中のものです。:04/01/29 15:26 ID:ymtBlT7p
地形とのシンクロをしっかりやってるのって
同人とかだと少なくない?
154名前は開発中のものです。:04/01/29 15:44 ID:m6hm+YbS
大往生の1面中ボス後の中型機とかは、
時刻じゃなくてスクロールに同期してるよな
155名前は開発中のものです。:04/01/29 17:13 ID:yY/wX3du
>>153
最近は美しい弾を多く出すことが重要なんで、近代〜近未来的な重厚なメカは流行らないからではないかな?
俺はGストリームのキャラに感動してたけど。(w
156名前は開発中のものです。:04/01/29 19:14 ID:2TZDu8Yt
漏れは激しく戦車が好きだ
157名前は開発中のものです。:04/01/29 20:53 ID:SZOPAw1n
今、ボタンを押すと自機の少し右斜めに爆弾が表示されてずっとそこから動かず
敵と触れると爆発するという罠みたいな武器を作っているんだけど
爆弾が一個の時はうまく爆発アニメーションもしていけたのに
爆弾を5個にしたらなぜか爆発アニメーションもせず、その座標にずーっと
表示され当たり判定も全然触れてない敵と当たっているし・・・
モウ頭ガ大混乱・・・
158名前は開発中のものです。:04/01/29 21:16 ID:m6hm+YbS
がんがれ。ときには一歩戻ることも大事だ。1個に戻すとか。
当たり判定表示モードを用意する手もある
159名前は開発中のものです。:04/01/29 22:17 ID:UkYq254h
>>157
確実に変数がかぶってるでしょ。
構造体にフラグ持たせて、爆弾一個一個ごとにフラグもカウンタも持たせればいい。
160名前は開発中のものです。:04/01/30 00:10 ID:pxYy3mAz
>>157
いいなぁ。。。俺もそんな時期があった。。。
あのころにはもうもどれない
161名前は開発中のものです。:04/01/30 00:14 ID:lKd8f126
>>160
なーに、ちょっと記憶喪失になればスグだ
162名前は開発中のものです。:04/01/30 01:26 ID:PNE+GE9D
C/C++でシューティングゲームを作ろうと思い立ったけれど自機・敵機などのオブジェクトの管理法や
当たり判定などごく基礎的なことからわからず調べている始末…
みなさんこういう入り口ってどこから学びました?
163名前は開発中のものです。:04/01/30 01:40 ID:lKd8f126
まず、アクションゲーム作り慣れしよう

webでの情報は…なかなか有用なものは無いんだよね

atanだけ知ってれば弾は吐けるから、そこをスタートにしてみるとか

アマチュアが作ったもので技術的に参考になりそうな作品を
ひととおりチェックしてみるといい
ソースを付けていたり、サイトでプログラム系コンテンツを展開していたりするものもある
164名前は開発中のものです。:04/01/30 01:44 ID:PNE+GE9D
あい、週末にいろいろ思いついたことを実際に組んでみて実験したりして
慣れようと思います。
ソース付きのサンプルは探しているけれどなかなか見つからず…
あとは本も探してみるかな。
みなさんが参考にしたサイトや書籍などを教えていただけたらうれしいです。
165名前は開発中のものです。:04/01/30 02:21 ID:wHwjFN70
まずは、ソースを見ること、ソースを読むことかな。
漏れはBASICからスタートして、BASICで一応STGと呼べるものを
作ってからWindowsに来たから、何ともいえないけどね。

まだ起きてるなら、
参考になれそうに無いサンプルでよければ上げるよ。
166名前は開発中のものです。:04/01/30 02:30 ID:w7Ni6Zjh
>>165
162じゃないけどサンプル( ゚д゚)ホスィ…
167名前は開発中のものです。:04/01/30 02:31 ID:lKd8f126
そういえばここのスレはそういった情報はあまり見ない気がするな

ttp://giggle.cside6.com/hotate/shoot/frame.htm
発見
関数ポインタのリスト、と言われてわかるならオススメ

一年前にこのサイトを見てもほとんど理解できなかったろうなあ…
今でもソースすいすい読めるとはいかないが
168165:04/01/30 02:48 ID:wHwjFN70
|゚ω゚)ノ ttp://gamdev.org/up/img/215.lzh

>>167を見て
|Д`))) うわぁ、漏れのコード(ry
|)三  サッ
169名前は開発中のものです。:04/01/30 03:01 ID:w7Ni6Zjh
>>168
dクス
キャラの管理にクラスは使ってないのね。
漏れはいつもクラス設計で迷ってなかなか先に進まない…アフォか_| ̄|○
170165:04/01/30 03:05 ID:wHwjFN70
>>169
なんてゆーか、動的メモリ恐怖症なんです(((´Д`;;)))
今、このシステムをベースにしてゲーム作ってるんですが、
やっぱりクラスを使わないとできることが限られてしまうワケで。

次回作にはちゃんとクラスで実装して、
もう少しいろいろできるコアを作ろうと思ってます。

|Д`)。o (newしてdeleteするだけなのに出来ないチキンな漏れ…。
171名前は開発中のものです。:04/01/30 03:08 ID:lKd8f126
コンパクトで可読性高くて、助かります。勉強させていただきました
gamdevうpろだを使う手があるのかーそーなのかー
172162:04/01/30 07:28 ID:PNE+GE9D
おはようございます。

>>165
うわー、ありがとうございます。これから穴があくほどじっくり読ませてもらいます。
173名前は開発中のものです。:04/01/30 08:39 ID:B84U1wom
newもdeleteも基底クラスでメモリ管理クラス作っちゃえばよし。
こいつらの関数は派生するからサブクラス側でも使える。
固定サイズの作業領域を用意するなどのことは簡単
174名前は開発中のものです。:04/01/30 09:48 ID:WyldIjeO
シューティング作ろうと思ってシューティングツクール95導入しようかと考えたんだが・・・
だめぽ・・・_| ̄|○

参考サイトとかそこらにあるゲーム見て回ったんだが・・・
弾幕作れない(最大敵弾数が低い)上に妙に重い・・・

おとなしく他のもの使おうと思います・・・
175名前は開発中のものです。:04/01/30 09:57 ID:I36G2mCC
VC++使え
176老人:04/01/30 11:15 ID:ju7uiRkE
最近はVBやC++から入門した人が多いみたいだけど、みんな授業でやってるから?
177名前は開発中のものです。:04/01/30 11:37 ID:+ZMRzRw0
>>170
>なんてゆーか、動的メモリ恐怖症なんです(((´Д`;;)))

つか、ゲームループ中での動的確保は流石にやらないのが普通では?
例えばタイトル->ゲーム本編->ゲームオーバー処理みたいに状態が大きく偏移するときならまだしも、
ゲーム本編のループ内で1キャラ出したり消したりする度に一々new/deleteなんてやらんでしょ
178名前は開発中のものです。:04/01/30 12:41 ID:EdduHOr8
遅かったらあとでoperator new/delete書けばいいやーなどと思いつつ
まだ書いたこと無いな
179名前は開発中のものです。:04/01/30 13:06 ID:B84U1wom
俺もフリーのソフト何本か作ってて
デフォのnew/delete使ってたんだけど
困ることってなかったけどね

今作ってる奴はそういうオブジェクトの基底クラスのnew/deleteを書き換えてるけど
そもそも開発環境のPC性能が圧倒的だから全然変わった気がしない
180名前は開発中のものです。:04/01/30 19:25 ID:yvxTFkB0
>>177
オレは一々動的確保してます。
むしろ、動的確保しないで立ち回る方法がわからん・・・
181名前は開発中のものです。:04/01/30 19:40 ID:Ev4JnOfR
うぷろだがあるなら
途中で飽きてほったらかしにしてあるのでもあげてみるか。
C++でいろいろと無駄なことをやって分かりづらいと思うけど。
ttp://gamdev.org/up/img/216.lzh
182名前は開発中のものです。:04/01/30 20:44 ID:J/h2K8Zb
作るのを途中で飽きないで最後まで完成させるための技術を教えてください。
183名前は開発中のものです。:04/01/30 20:49 ID:quCXdfvp
>>167
なんとも古典的な内容のサイトだなあ。
今から始めるのなら参考にしないほうがいいよ。てゆーかするな。
こっちの「オブジェクト指向風シューティングゲーム」とかのほうが今風で役に立つと思う。
http://www.sm.rim.or.jp/~shishido/gamedev.html

あと、OOスレとかいろんなとこで話題になってるけど、
new/deleteは今のハードなら忌避する必要ありまへん。俺は16ビット時代に捨てたし。
184名前は開発中のものです。:04/01/30 20:53 ID:quCXdfvp
>>182
・完成までの工程を計画する。
・開発日誌をつける。
・ToDoリストを作る。

これだけでだいぶ違う。
185名前は開発中のものです。:04/01/30 21:08 ID:I36G2mCC
最も重要なのは「仲間と喧嘩しない」かな
喧嘩してもいいけど引きずるとアウト
186名前は開発中のものです。:04/01/30 21:46 ID:TZcIf85k
>>183のは短いコードでオブジェクト管理を学べて良いね
時間管理の不備がツッコミどころかな…
まあこれを読める人ならそれくらいは自力でなんとかできるかな

>>167は、古典的タスク管理以外はじゅうぶん真似すべき
プログラムはともかく、シューティングづくりの基礎がつまっている
187名前は開発中のものです。:04/01/30 22:59 ID:rh+IQ9Rw
>>183
adjest
予想されるキーワード: adjust

ちょっと気になった。
188名前は開発中のものです。:04/01/31 01:05 ID:5B0kWu8I
>>167はどちらかというと将来エンジニアになりたい人には向いてる。
マイクロチップを自在にプログラムできる技術は重宝するよ
189名前は開発中のものです。:04/01/31 01:12 ID:1U/kPgvP
悪い技術ってわけじゃないからな。
C++でやることをCでやったらこうなりました、って感じかのうw
完全移植するならvfテーブル使えってことにはなるけどな。
あれに無理に固執する必要は無いってだけで考え方は大切だと思うー

確かスーパーマリオとか既にああいう感じで作られてたと聞いたことあるけどそうなのかな?
だとしたら任天堂ってすげーなー。w
190名前は開発中のものです。:04/01/31 01:38 ID:DrBR1GMU
わしはクラスとか使わないで
配列だけでゲーム作ってるけど・・・
191名前は開発中のものです。:04/01/31 02:55 ID:noKezy4x
ナカーマハケーン
192名前は開発中のものです。:04/01/31 07:57 ID:H1XPs9z1
>>190-191
例えば、あるキャラのみで使う必要な変数が増えたらどうすんの?
固定長だとキャラ(=タスク?)共通の汎用のワークエリアみたいなのを増やすわけですか?
で、1キャラで大きな容量のメモリ領域を使いたいときは、
無駄にワークエリアを増やすのは無駄だから、
他のところで確保したメモリへのポインタを指すだけにするわけ?

あ、なんだか出来そうな気がしてきた・・・
193名前は開発中のものです。:04/01/31 11:45 ID:NyjV8jKY
最低限のパラメータで様々なバリエーションの動きをプログラムできるセンスを磨く必要があるな。
もう少しシューティングを研究してみたらいいと思う
194190:04/01/31 12:07 ID:DrBR1GMU
>>192
とりあえず、ハードの容量にも寄るけど1タスクで64バイトくらいあれば
ゲームのキャラは動かせるので、それをゲームで使いそうな分を実行時に確保。
よっぽど足りない時は2タスク分確保してそっちも使う。
使ったこと無いけど。
自機弾なんて凝らなければ、座標と移動値か向きとタイマーと耐久力くらいがあればいい訳だから、弾は16バイトもあれば十分かな。
195 :04/01/31 18:06 ID:oHbNCYBm
>>167のサイト実行ファイルが無いのは不親切だな。
196名前は開発中のものです。:04/02/01 03:11 ID:8Ppt2JqF
>>131の者なんですが、スクリプト化っていうのは

789
4敵6
123

数字が敵の動きとして


static int e_houkou[]={1,2,3,4,8,7,9};
e_flg=0;
int ex=100,ey=100;
int e_cnt;

〜(省略)〜


if(e_flg==1){

switch(e_houkou[e_cnt]){
case 1: ex-=10; ey+=10; break;
case 2: ey+=10; break;
case 3: ex+=10; ey+=10; break;
〜(省略)〜

という風にして配列に数値を最初に入れておいてその数値によって敵の動きを移動方向を決めれば
良いと言う事ですか?。
どのタイミングで敵の移動方向を出せば良いのだろう・・・_| ̄|○
197名前は開発中のものです。:04/02/01 03:40 ID:rg9VfL53
ディレイカウンタを一個作る
198名前は開発中のものです。:04/02/01 05:33 ID:+wlkYdKm
スクリプト化ってのは、敵のパターンなんかを
C言語でそのまま記述するのではなくて、
もっと簡単に動きを記述できる中間言語を用いることだよ
199168:04/02/01 11:34 ID:+i7W5a7t
>>196
スクリプト化は>>198さんが言ってる通りのこと。
スクリプト化する利点は、本体のコードを修正せずに変更できること。
(コンパイル不要。他人の協力を得やすいこと)
欠点は、処理速度の低下、本体のコードの複雑化など。

>>196のコードでe_houkouをファイルから読み出して使うようにすれば
一応スクリプト化は出来てると言えるんじゃないかな、とは思うけれども、
その言語仕様では柔軟性が無い。(敵弾は吐けないし、曲線を描く行動も、
自機追尾もできない。)
だから、といって十分柔軟な仕様のスクリプトを実装しろ、というわけでは
なく、目的に合った方法を使えということ。

敵行動に関して、漏れは以下のパターンでやってる。
実物は>>168に。

if(enemy.type[t] == EN_ENEMY1)MoveEnemy(t);

// >>131のカクッと折れる敵の行動
void MoveEnemy(t){
enemy[t].timer++;
if(enemy[t].timer < 120){
enemy[t].x -= 4;
}else{
enemy[t].y += 4;
enemy[t].x -= 4;
}

各敵にtypeとtimerを記憶させておいて、
それに応じて行動させている。
200名前は開発中のものです。:04/02/01 13:49 ID:bcjVD8/s
>その言語仕様では柔軟性が無い。(敵弾は吐けないし、曲線を描く行動も、
>自機追尾もできない。)

文字列にしてa〜zにもコマンドを割り振ったりなんかしたりして。

いや言ってみただけ言ってみただけ
201168:04/02/01 15:26 ID:+i7W5a7t
>>200
その考え方で正解だよ。

ただ、コマンド数を延々増やしてると、そのうち自分でも
ごっちゃになる。すると、それなりの言語設計をしたり、
パーサー(構文解析)を作ったりする必要が出てくる。
本来の作業に加えてね。

しかし、それを実装したところで、ゲームが面白くなるとは
限らない。そもそも、プレーヤーはゲームの中を見ることが
ない。

まぁ、利点欠点を考えて適材適所ってことなんですが。
202名前は開発中のものです。:04/02/01 15:57 ID:+wlkYdKm
>>201
スクリプトに限らず、仕様ばっか凝り出してゲームが進まないってのは良くある罠だよね
203名前は開発中のものです。:04/02/01 20:31 ID:gPJywN+l
二度ほどそれで臍を噛んでるYO
なので今回はスクラッチとダウンサイジングと仕様削減を合言葉に作ってる
204名前は開発中のものです。:04/02/01 21:06 ID:l59wl63M
GAっぽいの使ってホーミングレーザー育成STGでも作ろうかな。
205名前は開発中のものです。:04/02/01 21:28 ID:lw1srjwx
言語仕様がさっぱりどっきり手探りな人はRobocodeやるとイイ!!
弾回避や予測射撃の知識も身につくYO!
いや、はじめからSTG向けのスクリプトを弄れ!という指摘もあるだろうけど :P
206名前は開発中のものです。:04/02/01 21:57 ID:38LSgSLD
>なので今回はスクラッチとダウンサイジングと仕様削減を合言葉に作ってる
というか、きっちりしようを決めて作るべし。

仕様を凝る(=拡張可能な柔軟なつくりばかり追求する)って、実は
一番重要な部分を先送りしてるだけなんだよね。
オレはやっと最近それに気づいたヘタレ…完成しないわけだよ…
207名前は開発中のものです。:04/02/01 23:54 ID:vey8p8Wy
作る課程を楽しむのも由
208名前は開発中のものです。:04/02/02 03:06 ID:i/GekYP5
全方向シューティング作ってて、64方位のうち0〜15方位まで画像用意して、
あとは90度回転で済ませたいんですが、画像を回転させてコピーする(Bitbltみたいに)APIってないですか?
開発環境はBCC5.5で32APIゴリ書きです。
209名前は開発中のものです。:04/02/02 03:48 ID:FCoWK6NP
0方位だけであとは起動時に微回転させてビデオRAMに持たせておくのもいいかもな
ディザかけるなどの処理が無くてもよいバトルガレッガ程度の画質の回転ライブラリ、欲しいね
210名前は開発中のものです。:04/02/02 04:00 ID:MdNwFQG/
無くて結局自力描画になるからD3Dを進める訳なんですが。
211名前は開発中のものです。:04/02/02 04:30 ID:yc9JYL9G
素直にポリゴンで出せって。何時の時代に生きてんの?
212名前は開発中のものです。:04/02/02 06:26 ID:HsES/+LZ
http://www.talula.demon.co.uk/allegro/
一応こういう有名なゲーム用ライブラリがあるけど。回転拡縮スプライトあるにょ。
ただしAPIを見ても分かるとおり、かなり古風な作り。(DOS時代からのものだしな)

まあ、素直にDirect3D使うのが一番素直でしょう。
213名前は開発中のものです。:04/02/02 06:28 ID:HsES/+LZ
ってちょっと日本語壊れてるな、俺。徹夜なんでゆるして。
214208:04/02/02 11:32 ID:i/GekYP5
なるほど。
色々とご意見ありがとうございます。
まあ時代遅れなのはわかってるんですが、winプログラム覚えたてなもんで…
いずれはDirectXに移植したいんですけどね〜
215名前は開発中のものです。:04/02/02 14:34 ID:FCoWK6NP
BCC5.5ならDirectX導入に問題はないな
DirectX導入による保守性の低下が懸念なら、
回転オブジェクトの描画をきっぱり諦める。
または何か適切なラッパライブラリを使い、
コーディングの幅が狭くなるかわりに見通し良い状態にする。
のがいいんじゃないだろうか。
ラッパライブラリで何が適しているかはわからないけど。elとかdxlibとかは有名だね
216208:04/02/02 15:00 ID:i/GekYP5
了解です。調べてきます〜
217名前は開発中のものです。:04/02/02 16:58 ID:/V+ybFzq
他人の書いたラッパを理解するより自分で書いたほうが手っ取り早かったりするんだよな(w
218名前は開発中のものです。:04/02/02 17:58 ID:BnC8luPI
BCCとかだとD3DXライブラリ(D3DXSpriteもこの中)が直接使えないから
注意が必要だ(デバッグ版はDLLになってるのでそのまま使えるけど)。
いや、D3DX使わないなら関係ないけどね。
219208:04/02/02 19:35 ID:i/GekYP5
>>218
そうなんですか…やっぱBCCでDirectXは険しい道のりなんですね〜
さっき本屋にも逝ったけどVC関連ばっかりで…
「VCの機能を最大限に生かしたプログラム」しなくてええっちゅーねん。
220名前は開発中のものです。:04/02/02 22:09 ID:dlkS80ye
そんな時こそOpenGL
221名前は開発中のものです。:04/02/02 23:17 ID:wBMgBDwz
ABA gamesのシューティングはBCC+OpenGLだな
222名前は開発中のものです。:04/02/03 00:36 ID:ZiFEw0Dz
>>221
ABA Gamesのは(少なくともrRとかは)BCCじゃなくてMinGWな気が。
223名前は開発中のものです。:04/02/03 01:15 ID:J8lns4TS
rRootageもPARSEC47もOpenGLを使ってはいるな
あとのC++とかDとかはおいといて
224名前は開発中のものです。:04/02/03 01:17 ID:/Uw/QLq7
敵を動かすのは良いけど
複数の敵を一つのグループで動かす場合は
どうすればいいのかわからない_| ̄|○
225名前は開発中のものです。:04/02/03 01:32 ID:vqom/Z2h
>>224
編隊のこと?
俺は、編隊も1匹も同じで敵キャラの出現タイミングと出現場所を書いたデータファイルを
作成してステージのはじめに読み込むようにしてた。
これが正しいかわからんけど。
226名前は開発中のものです。:04/02/03 02:37 ID:fdd6paxL
>>224
変態タスクを作って雑魚タスクを管理。
227名前は開発中のものです。:04/02/03 12:30 ID:pgLOj0Cx
>>225のように、それぞれはバラバラでも、同じ法則で動いていれば、
結果的に群れてるようにも見える。大往生4面雑魚とかはそんな感じだろう。

一方、グラディウスで雑魚が全滅したときにアイテムが出るが、これは
複数の敵をグループとして管理すると実現しやすい。
グループリーダー(実体はなく、アイテムを出すだけの役割)に
一匹一匹が「やられましたー」と報告して、最後の一匹がやられたらアイテムを出す。
リストで管理して削除していくのが一般的かな。

いきなり複数のグループを扱おうとする前に
まずは単純に画面内の敵すべてを1グループとして
敵全滅判断の処理を組んでみると、わかりやすくていいかもよ。
228名前は開発中のものです。:04/02/03 16:50 ID:v5+DNIEl

そういや回転といえば、ケイブのやつとかはちゃんと光源の方向を考慮した回転
パターンを用意してない?
達人とかビッグコアみたいに真上(真横)から光を当てたような、真ん中が明るく
エッジが暗い左右対称なデザインだと、回しても違和感が無いけど、今となっては
PC猿人のゲーム みたいで貧乏臭く感じるんだけど。
229名前は開発中のものです。:04/02/03 18:17 ID:pMaVXkyO
>>228
3Dでモデル化したやつから2D画を起こしてるんじゃなかたっけ?
手法は違えど角度毎に別な画を全て用意するというのは古典的(かつ効果的)な手法だよな

よく2D絵を回す為にD3Dで2D絵を回転とか言うヤシ見かけるが、あらゆる意味でセンス無えと思う
230名前は開発中のものです。:04/02/03 18:36 ID:0mx1dz/i
ケイブはプリレンダですな

> D3Dで2D絵回転
プログラマ的視点から言えば正常じゃねーの?
うちでも、立体感ない回転させた日には、ドッタさんが腹立てて
「回転パターン書く!」とか言い出します。
231名前は開発中のものです。:04/02/03 18:58 ID:muHYIOOj
バトルガレッガだってD3Dで2D回転させるのと大差無い絵でしょ
素人作品はむしろモデリングやドット絵がボトルネックになっているもののほうが多い
232名前は開発中のものです。:04/02/03 20:45 ID:SuvAycYQ
プログラム的に回すとしたらレイフォースのレーザーみたいな奴だろうね。
まぁポリゴンならプログラムで回せて光源も正しく処理されるわけだが
233208:04/02/03 22:09 ID:7faPxv3Q
とりあえず今は64枚全部書いて一通り完成まで持ってきます(^^;)
色々調べたら、OpenGLはLinux上でも動くっぽいのでどうせVC++を持ってないならOpenGLにしようかなとも考えてます。
まだ大分先のことになりそうですけどね…
234名前は開発中のものです。:04/02/03 22:50 ID:vqom/Z2h
シューティングゲーム(仮)だっけ?フリーのやつ。
あれなんか、WAVの爆発音を重ねるのが重くなるからか、
「どかーん」というWAVと「どかどかーん」というWAVを用意して
複数の敵を倒したときは「どかどかーん」を鳴らしてる。

けっこう力技の方が一般的なんだよね。光源の2D化とかも。
235名前は開発中のものです。:04/02/03 23:51 ID:1w8HaMS4
>>229
ドット絵1枚描くよりも、プリレンダリング用のモデル1つ用意するほうがコストかかるじゃろ。
ちゃんとしたデザイナーさんがついてて今風の絵にするならともかく、
古典的な2Dゲーではグリグリ回してもあまり問題ないケースが多いと思われ。

まあ、光源の方向が決まってる絵をむやみに回すなってのは基本ではあるわよね。
あと昔のハードに必ず載ってた左右/上下反転も、今では使えないケースのほうが多い。
236名前は開発中のものです。:04/02/04 01:07 ID:Beg7JZOX
16色時代ならともかく256色のドット絵で要塞のような大型物体を
3D使わないで動かして、なんて発注されたら逃げたくなるが…。
237名前は開発中のものです。:04/02/04 03:09 ID:zh4e0FJk
>>232
レイフォースのレーザーも全部キャラクタで持ってますが…。
238名前は開発中のものです。:04/02/04 03:36 ID:ijYeRi9Y
そんな裏事情俺らは知らん。
239名前は開発中のものです。:04/02/04 04:14 ID:cMovHLL6
>>235
3Dモデル1つ用意すればあとは32方向分でも64方向分でもすぐに用意できるワケだが
モデルを起こせる環境さえ整ってればむしろこちらの方がローコストなんだよ
240235:04/02/04 05:24 ID:ijYeRi9Y
話が通じてないなー。

あたしゃ、(回転可能な)ドット絵を1枚描いてそのまま回転させるのと、
モデル1体作ってそのまま回転させるコストを比較してるんであって。
241名前は開発中のものです。:04/02/04 05:26 ID:2ZZdt/7K
>>239
そうだね。
例え一枚でも規模によってはモデリングしたほうが楽なこともある。
ただ、手作業の擬似3Dには別の味があるので、一概に比較できないけど。
242241:04/02/04 05:27 ID:2ZZdt/7K
あら、タイミングいいなw>240氏

まあ書いたとおりだが。
243235:04/02/04 06:24 ID:abwzumam
>>241
> 例え一枚でも規模によってはモデリングしたほうが楽なこともある。

それは認める。


というかなんだ、前処理で回転パターンを生成するにせよ、ハードウェアの回転機能を使うにせよ、
手描きの一枚絵をそのまま回転させてるゲームは山ほどあるわけだ。
そりゃいまどきの市販ソフトの映像クオリティだと流行らんけどさ、
誰もがそういうの作ってるわけでなし、モデラーや鬼のドッターを用意できるわけでなし、
個々の制作者の事情を無視して、あらゆる意味でセンス無えとかってのはどうかと思うわけよ。

俺はクロノトリガーのタイトル画面好きだぜ。関係ないけど。
244241:04/02/04 07:19 ID:2ZZdt/7K
まあ確かにそうね。
適材適所と言っても常に適材が用意できるわけじゃなし。
2D3D両方のスキルを持ってないと比較は出来んわけだし。
245名前は開発中のものです。:04/02/04 07:53 ID:LnBAGbEK
そこでレリーフテクスチャを使ってかいt(ry

ネタです。突っ込まないように
246名前は開発中のものです。:04/02/04 08:36 ID:S4gpfpmI
>>243
禿同
247名前は開発中のものです。:04/02/04 08:58 ID:IxWgKU0p
ヴィジュアルにセンス無くてもええやん、面白ければ
248名前は開発中のものです。:04/02/04 11:04 ID:o8s5uh5e
あくまで人的リソースが不足しているプロジェクトの苦肉の策と捉えるべき>1枚絵の回転
少なくとも手抜き目的以外で積極的にやるもんではない
249名前は開発中のものです。:04/02/04 11:06 ID:ZMAKlGIM
>>245
バンプマッピングでそこはかとなく立体感を出すとか!
250名前は開発中のものです。:04/02/04 12:05 ID:vcRDEO44
同じ絵で光源だけ一周させた絵たちを角度ごとに呼んで、その角度で回して表示するのは?
251名前は開発中のものです。:04/02/04 12:26 ID:o8s5uh5e
>>250
それだと余計に手間がかかるだけじゃねーの?
光の角度一回点分の絵を全て用意した上で更にソフトで回転処理?
いっそケイブ方式の方がラクのような気がする
252名前は開発中のものです。:04/02/04 15:06 ID:ZMAKlGIM
真上から見た絵を書くならそれでいいんだろうけど、
斜めだと使えないね。
253名前は開発中のものです。:04/02/04 15:38 ID:EFi4FUcs
メモリ問題
CPUコスト問題
製作コスト問題
クオリティ問題

宗教の問題なのかね?
254名前は開発中のものです。:04/02/04 15:52 ID:IxWgKU0p
パルスターも忘れないでねん
255名前は開発中のものです。:04/02/04 15:53 ID:amRATcZY
>>253
宗教というよりはトラウマだな。
256名前は開発中のものです。:04/02/04 21:30 ID:nM6massK
>>248 1枚絵をソフトで回転させて、ドット修正もなしに使うって
ことだよね? たしかにそれじゃスーファミレベルだな。

漏れが昔2Dゲー作った時は、ドッター氏がソフトで回転させたのを
手修正してくれた。久々に連絡取ったら、彼は携帯アプリやってる
らしい…。
257名前は開発中のものです。:04/02/05 02:07 ID:a0yna+kj
フォントは環境によって有る無しが変わるからな。
VAIOで作ったヤツに使ったフォントはその機種にだけ入っていたフォントなので
修正に苦労したよ。
258名前は開発中のものです。:04/02/05 02:20 ID:a0yna+kj
259名前は開発中のものです。:04/02/05 03:36 ID:YTjX4EjP
マイナーかも知れないけど
任天堂のスターフォックスタイプの3Dシューティング作ってる人居ませんかね?
260名前は開発中のものです。:04/02/05 09:08 ID:5cXEa3IV
スペハリのパロを製作中。
あの独特の疑似3D感をGLで出すのに苦戦してます。
261名前は開発中のものです。:04/02/05 18:54 ID:yfmjYTKa
おっ、いいねえスペハリ。
あの市松模様をやるわけね。
自分もポールポジション的コースの再現に凝ったことあるよ。
262名前は開発中のものです。:04/02/06 18:22 ID:olmPAvex
ラスタースクロールを使った擬似3Dのカーブの表現ってこtかな
263名前は開発中のものです。:04/02/06 20:36 ID:elf/HAQj
う〜んと、シューティングにはタスクを使えって言われたのですが
タスクってなんなんですか?
264名前は開発中のものです。:04/02/06 21:48 ID:91D2MlSN
タスクについての有名っぽいページ↓。

コンピュータゲームのからくり
http://www.hh.iij4u.or.jp/~peto/Games/games_top.html

古い技術なので、別に無理して使うこと無いと思う。
参考にするくらいはしてもいいと思うけど。
265名前は開発中のものです。:04/02/06 23:15 ID:mMIlunZa
タスクを使わない場合はどうなるんでしょう?
「タスクを用いない作り方」はいかにも悪例のようですけど
266名前は開発中のものです。:04/02/06 23:15 ID:XUqqah8e
>253
メモリコスト問題
CPUコスト問題
製作コスト問題
クオリティコスト問題
コストの問題のような気もします。
MEMORY < CPU < QUALITY < PRODUCTION
267名前は開発中のものです。:04/02/06 23:39 ID:CN/1QPD2
このスレのみなさん、当方STG好きなのですが、
みなさんがんばってください!!力になれないけど
応援します!プログラミング出来たらおれも作り手ー
268名前は開発中のものです。:04/02/07 00:33 ID:I/AtIKu3
応援はいらん!作品でしめせ!
新作を見せ付けられることが、製作者の燃料だ!!
269名前は開発中のものです。:04/02/07 01:15 ID:O8A0WUto
煽りとかじゃなくて真面目な話し、やはりシューティングの演出に美少女キャラは
必須っすかね?
同人作品全般、並びにシューターサイトを眺めてみると、その嗜好は
明かなので、そのあたりのクオリティが低いと認知されにくいのかなぁと。

このスレの多くはプログラマさんだと思いますが、オブジェクトや音楽以外の
要素をどのくらい重要視されてますか?
270名前は開発中のものです。:04/02/07 01:19 ID:Lq/wPPEf
好きなものを好きに作るのが一番良いのでは?
売れると思ったら美少女でもカッコいいメカでも出せばいいでしょうし。
いらないと思ったら出さなきゃいいだけだし。
同人なんで、自由にやりましょうよ。
271名前は開発中のものです。:04/02/07 01:36 ID:tffLiwy9
なんでシューティングに美少女キャラが出るんだろう
頭おかしいんちゃう?
272269:04/02/07 01:47 ID:O8A0WUto
んー、何でシューターと2D美少女は相性がいいんでしょうかね?
私も知りたい。
273名前は開発中のものです。:04/02/07 02:00 ID:ns2eVy3U
>>269
同人で美少女キャラを入れてる人は、自分が入れたいから入れてるんじゃないの?
ベツにそれが必須かどうかなんて考えてないと思われ。
少なくとも自分は、STGが遊びたいのであって、美少女ゲームが遊びたいわけではないので、
STGとして面白ければどっちでもいい。
274名前は開発中のものです。:04/02/07 02:07 ID:Lq/wPPEf
昔からゲームやってる層が多いのでオタクな趣味として重なるんでしょう。
そうじゃない人もいるでしょうけど。
275名前は開発中のものです。:04/02/07 02:16 ID:vZlzKHDG
兄貴ばっかの某シューティングみたいなのじゃ嫌だろ?
むしろ好みって人もちょっとは居そうだけど。
276名前は開発中のものです。:04/02/07 02:57 ID:I/AtIKu3
頭おかしいとまではいわんけど、単に物語を語る道具として
シューティングというジャンルを選んでるゲームは解せんよ

>>275
おいらはそっちの方が好きだけどな
277名前は開発中のものです。:04/02/07 02:58 ID:04qIHkpD
あぁ、なんか頭が痛くなってきた・・・
なんかシューティングのソース付きで解説しているサイトとかってないものかね?
なんかいまいちうまくいかないところがあるからさ
278名前は開発中のものです。:04/02/07 03:04 ID:vZlzKHDG
>>276
実は俺も超兄貴好きで・・・
279名前は開発中のものです。:04/02/07 03:08 ID:D1TK1ujl
俺はケツイが…
280名前は開発中のものです。:04/02/07 03:08 ID:dRdrDvLT
俺もガキの頃はSTGに美少女キャラとか恥ずかしいから出すなとか思ってたなあ
281名前は開発中のものです。:04/02/07 04:03 ID:nWk8OscR
282名前は開発中のものです。:04/02/07 05:13 ID:7AeAm1yW
>>269
他の方も書いているが、自分が必要だと思えば使いましょう。
ただ演出として美少女が有効だったSTGというと、なにかあるだろうか。
レイフォースが美少女の範囲から外れるが、有効に機能していたと思う。
他のなにかありますかね?
283名前は開発中のものです。:04/02/07 06:53 ID:+DdT5JKA
有効に機能してたかどうかはかなり怪しいもんがあるが、
XEXEXとフェリオスから美少女を抜いたら味気なくなるな。
気恥ずかしいがw

チチビンタリカは美少女の範疇だろうか?
284名前は開発中のものです。:04/02/07 10:25 ID:r/NTeXJu
アーケードに限って言えば、美少女を前面にだしてるほうがマレじゃない?
フリーのシューティングにもそんなに多くないような気がする。
285名前は開発中のものです。:04/02/07 10:25 ID:SQHICHgr
実は俺はテングお面がw
286名前は開発中のものです。:04/02/07 11:00 ID:vqLh2bTT
フリーのシューティングはプログラマが無理に描いたのを見かけるけど?

逆にキャラクターがあって、シューティングが付いたみたいのも結構あるな
ブレスタとか。(結果的には内容も○だったと思うが)
ストライカーズは皮肉になってるのかな。
でも、キャラがうければイラストやCGなど2次創作での話題持続が期待できるね。
287名前は開発中のものです。:04/02/07 15:29 ID:ns2eVy3U
>>286
同人でそこまで(二次創作)狙って成功してるのなら、むしろ天晴というべき。
むろん、STG部分が面白いという大前提あっての話だが。
288名前は開発中のものです。:04/02/07 17:20 ID:c6DKKu7T
でも、なんだかんだで美少女っていうかビジュアルがいいと受けるよねぇ。
昔はほとんど気にしなかったけど俺はゲームでなくてもユーティリティソフトでも
見た目を重視して作るようにしてるよ。(多少性能を犠牲にしてもねw)
289名前は開発中のものです。:04/02/07 17:38 ID:nWk8OscR
遊びやすさとか使い勝手が悪いのだけは勘弁
290名前は開発中のものです。:04/02/07 17:58 ID:znbrGZNy
>>283
フェリオスはまだいいとしてXEXEXはどうか。
「私自らが出る!」の人はいないと寂しいが…w
291名前は開発中のものです。:04/02/07 18:48 ID:iCY1CCHj
ほとんどのケイブ作品の美少女はゲームと関係なく機能してるな
まぁ、それを期待してる人もいるのもまた事実。
292名前は開発中のものです。:04/02/07 20:20 ID:O0CtMFQf
斑鳩のカガリたんは美少女扱い?
293名前は開発中のものです。:04/02/07 21:08 ID:FilUHNZt
>>291
エスプのガラ婦人を忘れちゃいけません。
294名前は開発中のものです。:04/02/07 21:48 ID:I/AtIKu3
ケイブの割り切り方はいいな
キャラクター要素がまったくウザくない
プログラマさん(IKDさん?)は、シューティング部分にしか興味ないっぽいし、わかってるわ
295名前は開発中のものです。:04/02/07 21:52 ID:xoR1QuLE
ケイブと言えば、ほとんどの人はエレメンタルドール=パイロットだと
思ってるんだろうな。
エンディングとかも意味不明だろうし。
尤もエンディング見るような人は設定を知ってるだろうけど。
296名前は開発中のものです。:04/02/07 21:52 ID:we22JeYV
ケイブシューはIKDからの挑戦状なんです
297名前は開発中のものです。:04/02/08 00:42 ID:pIzV0s++
プロギアのキャラクター要素は結構うざいけど...
カプコンが入れ知恵したのか?
298名前は開発中のものです。:04/02/08 00:54 ID:S7hDCZ6g
声無しのモードがあれば文句無かった。エスプガルーダも。
まぁ現状でもじゅうぶん許容範囲だが
299名前は開発中のものです。:04/02/08 01:06 ID:+FkgUptr
怒首領蜂に声ありモードが欲しかった




死ぬがよい
300名前は開発中のものです。:04/02/08 02:21 ID:i3iPXFm/
つか、ケイブは実にせこいな。
関係無いならスッパリ切り捨てるこだわりが無いものか...大人の事情ってやつ?
301名前は開発中のものです。:04/02/08 02:23 ID:UAmt1vbl
流れに割り込むけど
SCORE SOLDIER -WINTER FESTIVAL 2004-のソースがいつの間にか上がってたから
見てみたが、すごいな。まさに富豪的プログラミング。
まあちゃんとプレイ出来て面白ければ、中で何してようが関係ないんだけど。
302名前は開発中のものです。:04/02/08 02:42 ID:S7hDCZ6g
メンテとステージづくりが楽ならどんなプログラミングスタイルだろうがマンセーしちゃうかも
303名前は開発中のものです。:04/02/08 03:25 ID:NDW8I9X1
1ステージにどのくらい時間かかる?
304名前は開発中のものです。:04/02/08 09:34 ID:7WHzyUn3
>>300
そうそのとおり!
305名前は開発中のものです。:04/02/08 09:47 ID:7WHzyUn3
>>301
ぅぉ!データの定義にマクロアセンブラを利用するとは
そんな手があったのか

この書き方は、元々コンシューマの人なのかな?
あまり富豪的に見えなかったのは、俺がPCどっぷりだからか?
しかし、この見事なデータ駆動っぷりは見習わねばならん
306名前は開発中のものです。:04/02/08 13:30 ID:S7hDCZ6g
プログラミング言語のマクロ機能は字句解析器としてけっこういけるね
使い慣れてる点も強み
実は俺もシューティングじゃないけど同じ方法使ったことが
307名前は開発中のものです。:04/02/08 14:56 ID:+FkgUptr
俺はパーサーまで自力で書いちゃってるけど、
かなり無駄な労力だなあと思うことはあるなあ
テキストファイルから読み込めるようになれば
調整段階までいけばコンパイルしなくていいから便利
308名前は開発中のものです。:04/02/08 15:05 ID:+Z9WcfXN
現在ゲーム製作のための擬似(マルチ)タスクシステム(クラス)を作っています。

そこで質問なのですが、

1.キャラクタを動かす場合、基本的に

  各キャラクタのタスクを生成→キャラクタ移動タスク(座標の移動)→
   →当たり判定タスク→描画タスク

  という流れになると思うのですが、
  当たり判定タスク・描画タスクで、
  各キャラクタの座標をどのように取得すればよいか悩んでいます。

  座標は各タスクのワークエリアにもっています。
  今、思いつくのは、

    1)当たり判定クラス・描画クラスを別に作って、
      各キャラクタの座標を登録する形式にして、当たり判定タスク・描画タスクが、
      自動的に処理するようにする。

    2)各タスクのリストを順にたどっていき、タスクの属性(敵・味方等)を元に、
      各タスクのワークエリアから座標を取得する。

  です。
  
  なにかよい方法はないでしょうか?

309名前は開発中のものです。:04/02/08 15:06 ID:+Z9WcfXN
2.タスクシステムは、双方向リストで動的にメモリを確保・開放しています。
  動的確保のため、タスクの生成・削除が多いとメモリが虫食い状態になってしまいます。
  
  静的配列を使った方がよいのでしょうか?

  ただし、静的に確保するためには各タスクのデータ構造は構造体で定義しなくてはいけないため、
  (クラスだとポインタを使うのと代わりないため)
  外部から操作される可能性がでてきてしまいます。

  それを考えると、
  やはりクラスを使って動的に確保したほうがよいでしょうか?
  

3.現在、各タスクの登録時には実行する関数を登録しています。
  関数ではなく、基本となるタスククラスを継承した各クラスを登録したほうが、
  
  コンストラクタ・デストラクタを自然に使えるので実装も簡単なのですが、

  ただし、そうすると、タスク内でタスクをチェンジした場合に、
  タスクの情報(座標等)を引き継ぐことができません。

  そのへんがクリアできれば、クラスの利点を生かしたタスクシステムが作れそうなのですが。


長くなってしまいましたが、ぜひ、アドバイスをよろしくお願いします。
310名前は開発中のものです。:04/02/08 15:07 ID:+Z9WcfXN
2.タスクシステムは、双方向リストで動的にメモリを確保・開放しています。
  動的確保のため、タスクの生成・削除が多いとメモリが虫食い状態になってしまいます。
  
  静的配列を使った方がよいのでしょうか?

  ただし、静的に確保するためには各タスクのデータ構造は構造体で定義しなくてはいけないため、
  (クラスだとポインタを使うのと代わりないため)
  外部から操作される可能性がでてきてしまいます。

  それを考えると、
  やはりクラスを使って動的に確保したほうがよいでしょうか?
  

3.現在、各タスクの登録時には実行する関数を登録しています。
  関数ではなく、基本となるタスククラスを継承した各クラスを登録したほうが、
  
  コンストラクタ・デストラクタを自然に使えるので実装も簡単なのですが、

  ただし、そうすると、タスク内でタスクをチェンジした場合に、
  タスクの情報(座標等)を引き継ぐことができません。

  そのへんがクリアできれば、クラスの利点を生かしたタスクシステムが作れそうなのですが。


長くなってしまいましたが、ぜひ、アドバイスをよろしくお願いします。
311名前は開発中のものです。:04/02/08 15:49 ID:+FkgUptr
私の独断と偏見による意見ですが…

1.に関して。そーいう実装方法は止めたほうがいいかなぁー?
無理に複雑な実装方法を選んでプログラムを複雑にしてるという印象です。
もっとオブジェクト指向的に考えてみては如何でしょうかね。

2,3に関して。最近のPCは性能が良いので動的メモリ確保しても問題ないけども、
気になるようなら、オブジェクトの基底クラスを作って、
operator new/deleteのオーバーライドを考えてみては。
312名前は開発中のものです。:04/02/08 15:58 ID:+FkgUptr
そうそう、タスクループに拘りすぎると、ろくな目にあいません。(w
ゲームを実装するためにタスクループの考え方があるのです。
タスクループ上でゲームを実装するにはどうすれば?とは本末転倒。
313名前は開発中のものです。:04/02/08 16:10 ID:x52VAobY
>>308
俺も昔同じようなところで悩んだな。
結局、良い方法思いつかなかったけど。
1の当たり判定は、全てのキャラ移動→一括して当たり判定
ってのをしていた。そうしないと変な判定するんで。
2は、結局動的で押し通した。その際になるべく、
虫食いにならないようにタスクの生成順番と
削除のタイミングを注意した。
デバッグ用途も含めて、new/deleteはオーバーライドしてたけど、
タスクごとのオーバーライドはしなかった。
やってもいいと思う。
3は、そもそもタスクの切り分け方を従来の方法と
変えてしまったんで、普通に継承して問題なかった。
実装の仕方が違うと思うのでなんとも。
314名前は開発中のものです。:04/02/08 16:18 ID:+Z9WcfXN
アドバイスありがとうございます!!

やはり、汎用的なタスクシステムを作るより、
ゲームにあわせてクラスを構成したほうがいいですかね。

ただ、クラスのみを使ってつくるとした場合、
基底キャラクタクラス(敵1クラス)から派生した各キャラクタクラス(敵1−1、敵1−2等)を作るとして、

結局は、グローバルな変数(またはクラス)等で、各派生クラスを管理しなくてはならないですよね?

グローバルな配列の各要素に、各派生クラスを結びつけて、
その配列を元に各派生クラスのメンバにアクセスする等でよいのでしょうか?




315名前は開発中のものです。:04/02/08 16:36 ID:+FkgUptr
そんなとこかと。
俺ならclass World(=ゲーム世界全体を表すシングルトンクラス)を作って、
そいつにキャラクタを保持させる、という感じですかね。
class World { list<Character*> m_characters[NUM_CHARA_TYPES]; };
特化させてクラス別リストを用意するとか、色々と方法はあるかと。
316名前は開発中のものです。:04/02/08 16:40 ID:x52VAobY
>>314
俺は管理タスク(クラス)を用意した。
管理タスクからすべてのキャラクタタスクにアクセスする形。
アクセスは、キャラクタタスクの先頭へのポインタだけを持っていて、
あとは、リスト構造(リングバッファ)で辿る形。
317名前は開発中のものです。:04/02/08 18:00 ID:EK///DT8
みんなアニメーションのデータ構造は
どんな感じにしてる?
318名前は開発中のものです。:04/02/08 18:07 ID:+FkgUptr
アニメーションと一言で言っても
2Dと3Dの違いもあれば、拡大縮小回転や口パクアニメなんかもあるわけで
なんと答えていいか分からんのだが
319317:04/02/08 18:26 ID:EK///DT8
2Dのアニメーションです
320名前は開発中のものです。:04/02/08 18:28 ID:S7hDCZ6g
とりあえずグラディウスの時代からある敵弾アニメを例にとってみようか

敵弾オブジェクトごとに、アニメ用カウンタが用意されてる
表示関数で、そのカウンタを使ってアニメ

ここまでは基本だよな
あとは使う言語によるかな。
321名前は開発中のものです。:04/02/08 18:34 ID:+FkgUptr
2Dでアニメーションというと普通のキャラクタアニメーションでそ?
悩むところではないと思うんだけど。

RPGツクールみたいに32*32限定でいいならソーステクスチャを32*32で区切って左上から番号振る。
アニメ順序にあわせてIDを配列で並べて、ついでにアニメ速度とかを定義とかすればいいし。
汎用性持たせるならソース上の矩形ごと並べてしまうとかでもいいし。
322名前は開発中のものです。:04/02/08 18:34 ID:Bpmlhhr/
テクスチャ1枚に複数絵を用意してUVで切り替え
323名前は開発中のものです。:04/02/08 19:03 ID:jKRYdHAv
グラフィックデータ(テクスチャなりサーフェイスなり)は
どこに配置させてどうやって参照させるのが賢いのだろうか…
いつも悩んでます。
324名前は開発中のものです。:04/02/08 20:35 ID:+Z9WcfXN
>>316

自分もタスククラスとタスクマネージャークラスを作っています。
たしかに、先頭のタスクのアドレスを取得すれば、
リストをたどっていけますが、
どうもいまひとつの気がしてやってませんでした。

ようは、
 1.先頭タスクのアドレスを取得して、
 2.次のリストへのポインタを取得する、を繰り返す
ってことですよね?
結局、外部からタスクの内部を参照するわけであって…。
総当りの上に、書き換えられる可能性もあるわけですよね。
そう考えるとやっぱりクラスを使ったほうがいいのかぁ。

325名前は開発中のものです。:04/02/08 20:37 ID:+Z9WcfXN
以上をふまえた上で質問です!

もしクラス版のタスクシステムを作ったとしても、
(クラスを登録して、タスクを生成・削除・チェンジするタスクシステム)
座標計算と当たり判定・描画処理を独立してやることを考えると、
(座標計算と判定・描画を同関数内でやると、すりぬけ、が発生するため)
関数版のタスクシステムと同じく
 1.座標情報等のデータをグローバルで持つか、
 2.各クラスのアドレスをグローバルで持って参照するか
しないといけないわけで、
タスクシステムでつくる意味がほとんどないわけですよね?

そう考えると、タスク自身のワークエリアをなくして、
データ類はグローバルな配列で別個で管理するほうがいいんですかね?
単なる関数ポインタを使ったテーブルジャンプみたいになってしまうけど。

326名前は開発中のものです。:04/02/08 20:50 ID:+Z9WcfXN
ttp://www.interq.or.jp/black/minami-m/

↑にクラスを使った基本的なタスクシステムがありますが、
これって、当たり判定・描画処理を各タスクごとに行ってるんで、
すりぬけや、思わぬ動作を引き起こす可能性がありますよね。

そう考えると、一番いいのは、
各クラスを割り当てた管理配列等を、forループ等で処理したりでしょうか??

なんかわけわからなくなってきました(T_T)

327名前は開発中のものです。:04/02/08 21:12 ID:x52VAobY
>>324
書き換えられる可能性ってのはないと思うけど、
そもそも書き換えられて困るから、一括処理な訳で。
リスト構造にしてる意味は、動的生成な訳で、
それをやめるなら、配列でいいかと。
グローバルにする意味はあんま感じないな。
Singletonって意味ならそうだけど。
328名前は開発中のものです。:04/02/08 21:23 ID:x52VAobY
>>326
それ読んでないけど、処理が終わったタスクとのみ
当たり判定を行っていけば、タスクごとの当たり安定でもできると思う。
329名前は開発中のものです。:04/02/08 21:26 ID:+FkgUptr
>>324-326
迷っておりますなw

まず一つ言うが、>>326のタスクシステムはCのタスクシステムよりうんこだから無視せい。w
真にCのタスクをC++に移植するならば、
ワーカークラスのインスタンスポインタとメソッドポインタのペアをリスト化しなきゃならん。

個人的には初心に戻ってオブジェクト指向的に考えることを勧めるよん。

キャラクタはどんな情報をもち、何をするのか?→位置情報を持ち、移動や描画を行う
class Character {
 Vector2 m_pos;
public:
 Vector2 getPosition() { return m_pos; }
 virtual void move() = 0;
 virtual void render() = 0;
};

キャラクタのリストは誰が保持するのか?→ゲームの世界が保持して管理する
ゲームの世界はどんな機能がある?→世界の時間を一定量進めるとか、世界全体を描画するとか
class World {
 list<Character*> m_characters;
public:
 updateOneFrame() { for(...); it->move(); }
 renderScene() { for(...); it->render(); }
};

こんなんでよいではないか、と思うけどネェ。
330名前は開発中のものです。:04/02/08 21:28 ID:x52VAobY
って当たり安定ってなんだよ orz...

あ、あと、当たり判定に関して言えば、
ソートとかして高速化は必須な気がしてきた。
それ考えると、配列のがいいかもしれないな。
俺はそこまでせずに作るの辞めてしまったけど。
331名前は開発中のものです。:04/02/08 21:32 ID:+Z9WcfXN
>>327

管理タスクからタスクにアクセスする処理はどのようにしていますか?
参考にさせてください。
先頭タスクのから、順にたどっていくんですよね?
各キャラの移動タスクは独自のワークエリアに座標を書き込むとして、
当たり判定タスク等で、

 Temp = 先頭タスクのアドレス;
 while(Temp <> null);
  {
  Work = (EnemyRecord)Temp->WorkArea; //敵パラメータ構造体にキャスト
  (各種処理)

Temp = タスク->次のタスクへのポインタ;
}

みたいな感じでワークエリアを順に取得して処理してるのでしょうか?
332名前は開発中のものです。:04/02/08 21:44 ID:+Z9WcfXN
>>328

ですが、各タスクはタスク内で別の関数にチェンジすることを考えると、
タスク内での判定処理等はあまりよくない方法のような気が…。
実行優先度を自ら把握して管理することができれば問題ないでしょうけど。

>>329

用語がいまひとつわかないです(>_<)
実は、Delphiなんです ;>_<;

ゲームのためのシステムの構築となると、
参考資料が少なすぎて…(泣

やっぱりCですかね…。
CはDOSのTurbo C++でとまってます(--;


333名前は開発中のものです。:04/02/08 21:48 ID:gPdyOEsw
>>331
管理タスクがタスクにする状況って例えばどんな時ですか?
334名前は開発中のものです。:04/02/08 22:01 ID:+Z9WcfXN
>>333

316に対するレスだったんですが、

つまり、キャラの移動・当たり判定・描画を例にとると、
タスク処理の流れは、

  1.移動タスク
    (移動タスクはキャラクタ数分、存在し、
     各タスクは自分のワークエリアに座標を書き込む)
  2.あたり判定タスク
  3.描画タスク

となると思うのですが、
移動タスクでは、ワークエリアに座標を書き込みます。
そして、当たり判定タスク・描画タスクでは、各キャラの座標を参照して処理するわけです。

リンクをたどるということですが、
たぶん、次のようなことですよね?




335名前は開発中のものです。:04/02/08 22:03 ID:+FkgUptr
>>332
ごめん、俺はDelphi全然知らんから文法に関する記述はなんとも言えんわ。
とにかく、タスクは目的ではなく手段なんだから、それに捕らわれてはいけないよん。
336名前は開発中のものです。:04/02/08 22:07 ID:+Z9WcfXN
各タスク(TCB)のアドレスがわからないと、ワークエリアを参照できないので、
 1.管理タスクが、登録されている一番最初のタスクのアドレスを返す。
 2.そのアドレスをたよりに、次々とタスクをたどっていく。

316のような方法にするには、
まず、先頭タスクのアドレスがわからなければ、リストをたどれません。
タスク管理クラスが先頭タスクのアドレスを返す処理をしないといけないわけです。

えーと、つまり、
外部から各タスクのワークエリアを参照するには、リストをたどる必要があるわけで、
そのリストのたどり方の実装の仕方を聞きたかったわけです。

わかりにくい説明ですね(>_<)
337delphian:04/02/08 22:15 ID:+Z9WcfXN
ややこしいので暫定的に名前つけます(--;

>>335

329のクラスの読み方は、

class Character { //キャラクタークラス
 Vector2 m_pos; //位置情報を持つ型の変数
public:
 Vector2 getPosition() { return m_pos; } //位置情報を返すメソッド
 virtual void move() = 0; //オーバーライドして使う。移動メソッド
 virtual void render() = 0; //オーバーライドして使う。描画メソッド
};

でいいでしょうか?
このクラスを継承して、各キャラクタのクラスを作るんですよね?
338delphian:04/02/08 22:18 ID:+Z9WcfXN
>>335

class World {
 list<Character*> m_characters; //各キャラクタクラスのリスト
public:
 updateOneFrame() { for(...); it->move(); }
 renderScene() { for(...); it->render(); }

ここで、for(...); it->move(); 等がわかりません。
delphiとの文法の違いによるせいだと思いますが。
各キャラクタクラスのmoveメソッドをすべて呼び出す、
ということなのでしょうか?
339名前は開発中のものです。:04/02/08 22:31 ID:x52VAobY
>>337
あと、俺なら、CharacterクラスはTaskクラスから継承させるけど、
この辺は、実装次第かな。

>>338
updateOneFrame() { for(...); it->move();
は、331と同じ意味です。
そもそも331でキャストする必要はないけど。
何か古いタスクシステムに頭が固まっているような。
340名前は開発中のものです。:04/02/08 22:32 ID:+FkgUptr
>>337 は、合ってます。

>>338 は、ごめん、そこ面倒でかなり素っ飛ばしてた。
STL知ってることを前提で書いてたので…。正確にはこんな感じ。

class World
{
 list<Character*> m_characters;

 void moveAllCharacters() {
  for( list<Character*>::iterator it = m_characters.begin(); it != m_characters.end(); it++ ) {
   Character* target = *it;
   target->move();
  }
 }

 void checkCollision() { /* まあ適当に… */ }

public:
 void updateOneFrame() {
  moveAllCharacters();
  checkCollision();
 }
};

ちと具体的過ぎてアレだが、俺のプログラムは大筋でこんな感じです。
341名前は開発中のものです。:04/02/08 23:03 ID:+FkgUptr
蛇足だけど、俺はCharacterクラスはTaskクラスからの派生じゃないと思ってるよ。
何故ならタスクとは「誰が何をするのか」ということで、キャラクタは仕事ではなく"誰"の部分。
だからCのタスクリストをC++のソースで移植するとしたらこうなるんじゃないかな。

class Worker { };
typedef void Worker::(*Work)(); // Workerクラスのvoid method(); の形のメソッドポインタの型=Work

class Task {
 Worker* m_worker;
 Work m_work;
public:
 void execute() { m_worker->(*m_work)(); }
};

class TaskList {
 list<Task> m_tasklist;
public:
 void executeAllTask() { for(...) it->execute() }; //また手抜き
};

タスクリストは仕事を保持しているだけで、オブジェクトのリストは保持していない。
全ての敵キャラや敵弾を参照したいときにタスクリストを使うとおかしな話になるのは、
この辺を混同してるのが原因かなーと思ったり。
342名前は開発中のものです。:04/02/08 23:14 ID:x52VAobY
その通りなんだが、
その誰が必要ない部分をタスクとして管理するわけよ。
そのための継承。
全てをタスクでするわけではないよ。
343delphian:04/02/08 23:16 ID:+Z9WcfXN
>>340

STL、、、
見かけたことはありますが、よく知りません。
イテレータってのもよくわからない…。
ちょっと調べてきます。

ようは、つまり、、、
タスクシステムを持ちいらずとも、
リストとクラスを使えば、似たようなことができるんですね!!
しかも、この方法はオブジェクト指向という感じがします。

1.キャラクタークラスを作って、それをオーバーライドして、
  各キャラクターをつくる。
  キャラクターごとの動作、描画登録を記述する。
2.管理クラスを作って、
  そのクラスがそれぞれのキャラクターなどをまとめて管理する。
(各キャラクタの移動メソッドと描画メソッドを呼び出す)

ということですね?
344名前は開発中のものです。:04/02/08 23:23 ID:gPdyOEsw
自機弾タスクの優先度を0x1000〜0x1FFF、敵タスクの優先度を0x2000〜0x2FFFの範囲に生成すると決めておいて

TCB* tama = 一番先頭のタスクのアドレス;
while( tama->prio < 0x1000 ){
 tama = tama->next;
}

TCB* enemy = 一番先頭のタスクのアドレス;
while( enemy->prio < 0x2000 ){
 enemy = enemy->next;
}

while( tama->prio <= 0x1FFF ){
 while( enemy->prio <= 0x2FFF ){
  GameObject* t = (GameObject*)(&tama->work);
  GameObject* e = (GameObject*)(&enemy->work);
  if( hitcheck(t->rect,e->rect) ){
   t->hitflag = true;
   t->hitflag = true;
  }
  enemy = enemy->next;
 }
 tama = tama->next;
}


とか考えているのですがどうでしょうか?>334&>ALL
345delphian:04/02/08 23:31 ID:+Z9WcfXN
>>344

やはり、そのように優先度で管理する方法が一般的ですかねぇ。
自分のタスクシステムは属性フラグを用意してあるので、
その属性フラグを使って処理することもできます。

このようなタスクシステムだと、
タスクのデータを保持したまま、
別のタスクにチェンジできるのがいいですよね。

>>340 >>341のような方法もオブジェクト指向という感じでいいですが、
チェンジタスクができないのが、唯一の難点のような気がします。

キャラクタごとにクラスを継承して作れば対応できる気もしますが、
どうなんでしょう。

346名前は開発中のものです。:04/02/08 23:33 ID:gPdyOEsw
二重ループのenemy = enemy->next;辺りがおかしいですね

それからこの板は古典的タスクシステム=悪みたいな風潮があるようなので
趣味だけでひっそりやっていくことにします
さようなら
347名前は開発中のものです。:04/02/08 23:48 ID:+FkgUptr
>>342
それは主語がない(クラスに属さない)処理が存在する、ということでいいですかね?

>>343
そういうことだと思ってます。タスクが目的ではなく手段だってのはそういうことです。

>>344
衝突判定中のenemyポインタを保存しといて各弾についてenemyを復元しないと駄目よん。
348名前は開発中のものです。:04/02/08 23:51 ID:Mp5JYoER
俺は古典的手法も悪くないと思うけどね。実用になればいいんで。
より直接的である、という古典的手法のメリットと富豪プログラミングの相性も良い。
古典的手法を飽きるまでやるのも入門に向くし。
飽きたら抽象度の高いものでちょっと頭をパズル向けに使って楽をすればよい。

いきなり理想論でたたみかけて初心者を煙に巻くのはオタクさんの悪い癖だ。
349delphian:04/02/08 23:53 ID:+Z9WcfXN
とりあえず、古典的タスクシステムにしろ、オブジェクト指向のタスクシステムにしろ、
ようは、リストをたどって、各タスク(各クラス)を順に処理していくってことになりそうですね。

それで、当たり判定まではよいとして、描画でどうするべきか…。
描画は、同じく順にリストをたどって各キャラを描画していけばいいと思うんですが、、、
たとえば、当たり判定により自機と敵が衝突した場合、、、

古典的タスクシステムでは、自機タスクなり敵タスクなりを、
当たり判定のときに、チェンジタスクで爆発タスクに切り替えればいいですよね??
と同時にフラグを立てて、
描画タスクでは、フラグによって描くキャラを変えればいい、んですよね?(^^;

>>340
のようなシステムの場合は爆発等に移行するにはどうすれば…
350名前は開発中のものです。:04/02/09 00:13 ID:9b1YXsM8
>>345
>>340のは出来ないね。オブジェクトの状態をオブジェクトの内部で保持してオブジェクトの内部でswitch。
>>341のは古典的タスクをC++に移植しただけなのでタスクチェンジできるよ。Task::m_workにメソッドを代入。

>>348
全くどの発言内容もご尤もだと思います。俺オタクだな…
ただこの方法が一番初心者に向いてると思うから書いてるわけで。
タスクってそれ自体はわかりやすいけど実際にコード組むと混乱の種にならない?
(実際に最初の質問の種はタスクから発生してるものだと思うし)

>>349
オブジェクトに衝突したことを知らせるためには、
オブジェクトにOnConflictという関数を持たせればOKだよ。
衝突したら、例えばこんな感じで。
enemy->OnConflict( shot );
shot->OnConflict( enemy );
後は各関数内で適当に状態移行。
351delphian:04/02/09 00:14 ID:tFE9u6fe
>>341

あ、これはもしかして、次のようなことですか!?

Workerクラスを継承して、各キャラクタクラスを作る。
Workは各キャラクタクラス内で使う処理メソッド。

これらを含めてタスククラスとする。

Workerクラス内で変数等を宣言、各処理メソッドを必要数分書く。

処理の変更の際には、m_workのみを書き換えれば、
変数等を保持したまま、処理のみを変更できる。

実行、処理の変更等は、TaskListクラスが管理する。

ということでしょうか!?
文法がdelphiと違うので、はっきりとはわからないのですが、
もしかしてそういうことですか!?
352名前は開発中のものです。:04/02/09 00:24 ID:9b1YXsM8
>>351
大体合ってる。古典的タスクを使ってるなら馴染みやすいと思うんだけど…
補足するとTaskはTaskListに登録する際にハンドルとして受け取るような感じかな。
んでTaskクラスにsetWorkMethodが付くから処理の変更はTaskクラスでやります。
TaskListクラスにsetAllTaskWorkMethodみたいのを付けてやれば一気にEndとかもできる。

あと>>348にも言われちゃったのでどのやり方がいいとか言うのはやめることにします…
353名前は開発中のものです。:04/02/09 00:26 ID:S4Ub6c9m
>>346
(・∀・) 人(・∀・)ナカーマ
354delphian:04/02/09 00:33 ID:tFE9u6fe
>>352

なるほど!!
クラスを使ったタスクシステムはできないと思ってたのですが、
こんな方法もあるんですね!!
この方法なら、タスクが自分で自殺とかもできそうですね。

2ch.には初めて書き込んだのですが、
詳しく教えていただいて、ありがとうございます!!

Delphiでも応用できそうなので、ちょっと一から作り直してみます!

あ、

>補足するとTaskはTaskListに登録する際にハンドルとして受け取るような感じかな。

この一文がよくわからないのですが、これはどういう意味でしょうか??

355名前は開発中のものです。:04/02/09 00:41 ID:9b1YXsM8
ややこしいこと言ってしまった…。
list<Task>っていうのはTask構造体(=ポインタではない)のリストなので、
そのリスト上のTask構造体のポインタをハンドルとして受け取るということです。
356delphian:04/02/09 00:45 ID:tFE9u6fe
>>355

なるほど…。

ちなみに、タスクが自殺やチェンジする場合、全タスク実行後に処理したいので、
(削除済みのタスクへの不正なアクセスを防止するため)
その場合、Taskクラスではフラグを立てるだけにして、
TaskListのexecute時に削除等すればよいということですよね!

357名前は開発中のものです。:04/02/09 00:51 ID:9b1YXsM8
そういうことになります。

うーん、ぶっちゃけてC#のDelegateですね。
358delphian:04/02/09 00:58 ID:tFE9u6fe
>>357

typedef void Worker::(*Work)(); // Workerクラスのvoid method(); の形のメソッドポインタの型=Work

delphiで↑のような型の宣言ができるかどうか…、
それが一番の問題ですが、これさえできそうなら、
クラスを使ったタスクシステムができそうです!

タスクシステムを使わない、クラスでの処理の構成もわかりましたし、
なんとか、今よりはスマートになりそうです。

また、わからなくなると思いますが、
そのときはアドバイスもらえればと思います。
今日は寝ようと思います。
また、結果報告します!
ありがとうございました!!
359名前は開発中のものです。:04/02/09 01:03 ID:OX8rMmrZ
1日でスレすすんでてびびった

うちのは >>340風。
case文だらけが嫌になって、stateパターンを導入するも、
溢れ返った状態を記述しきれず泥沼化。
リファクタリングしようと、共通部分を is-a、 has-aでくくりだして、
フラットな状態遷移マシーンから、複雑な階層化状態マシーンに。
把握しきれずに、頭おかしくなりそうになった。

古典的タスクも考慮して組んで見たい今日この頃です。

>>354
Delphi使いはC++も読めると、世界が広がりますよ
考えようによっては、(C++ + Delphi)分の情報が得られるわけで
360名前は開発中のものです。:04/02/09 01:11 ID:OX8rMmrZ
>>358
すれ違いになっちゃうけど

Delphiだとこうかな?
type
 TWorkerMethod = procedure of object; // クラスの procedure Method(); の形のメソッドポインタ型

 TTask = class
  FWorker: TWorker;
  FWork: TWorkerMethod;
  :

クラスのメソッドへのポインタは、"of object"をつけてね
361delphian:04/02/09 07:26 ID:tFE9u6fe
>>360

ありがとうございます!
これで、できそうです!

>>350

追加で質問です。お願いします。
ちなみに、>>341の方法で実装したとして、
各クラスごとにタスクにあたる各メソッドを書くので、
リストへの登録・チェンジができるのは、登録したm_workerとそのクラス内のメソッドのみになるってことですよね?

あ、m_workerの登録を変えれば、他のクラスのメソッドにもチェンジできるのかな??
でも、それだと、変数が保持されないか…。

各クラスで共通で使うタスク(メソッド)があるときは、各クラスごとにメソッドをかかないといけないわけですよね?
362名前は開発中のものです。:04/02/09 12:06 ID:9b1YXsM8
登録クラスとは別クラスのメソッドを呼ぶ必要はありません。
クラスのメソッドは所属するクラスに密接に関わる関数だから。
もし別クラスのメソッドを呼ぶような必要がでてきたのならば、
それはそのクラスにあるべきメソッドではないということです。

それから各クラスで共通に使うメソッドがあるならば、それは基底クラスで定義します。
タスクにメソッドを登録するときは基底クラスのメソッドを登録すれば問題ありません。

余談ですが341の方法は基底クラスの仮想関数を登録すると派生クラスの仮想関数が呼ばれます。
ややこしいので↓を見て実行すると分かりやすいかも。こちらもソースコードがややこしいことになってます…
http://www.emit.jp/prog/prog_cpp0.html
363Delphian:04/02/09 12:48 ID:ayzrG5Mj
ということは、>>341の方法では、共通のタスクは使えないということですか?

共通の関数を仮想関数として基底クラスに書いたとして、タスクリストに登録ししても、
実際、呼ばれるのは派生クラスの仮想関数ということですか?

つまり、派生クラスの仮想関数を登録するのとかわらない、ってことですか?

共通のタスクを使うにはどうすればいいんでしょうか?

質問だらけですみません(>_<)
364名前は開発中のものです。:04/02/09 12:52 ID:9b1YXsM8
基本中の基本だけど、基底クラスで仮想関数を定義しても
派生クラスでオーバーライドしなければ基底クラスの関数が呼ばれるよ。
というか初めから基底クラスで仮想関数として定義しなければ
派生クラスでオーバーロードしても派生クラスの関数は呼ばれないよ。
365Delphian:04/02/09 13:57 ID:ayzrG5Mj
ぁ、そうですよね。

オブジェクト指向を勉強しはじめて、一ヵ月ならないもので(>_<)

ちょっと混乱してしまいました。
仮想関数をオーバーロードすると派生クラスの関数が呼ばれて、
仮想関数として定義しないと、基底クラスの関数が呼ばれるんでしたよね。
366名前は開発中のものです。:04/02/09 14:50 ID:CGO83cRk
どうでもいいけどオーバーロードとオーバーライドは別物だよ
googleで双方の単語入れて検索してみればすぐわかる
367Delphian:04/02/09 15:48 ID:ayzrG5Mj
ぁ、すみません、間違えました。

全然違いますね。

とりあえず、帰ったら今日まで覚えた知識でクラス版タスクシステムをつくってみようと思います。
368名前は開発中のものです。:04/02/09 18:17 ID:3mvRD+VM
どうでもいいんだけどさ、ドット絵で透明感(背景が透けて見える等)を出すことは出来るの?
369名前は開発中のものです。:04/02/09 18:25 ID:OX8rMmrZ
>>365
Delphiなら virtualなメソッドを、派生クラスでoverrideつけないで再定義すると、
警告出るからすぐにわかるよ

>>368
半透明つかえないのが前提だよね?
VSYNC同期前提でよければ、抜き色で市松模様にして交互に表示する
もしくは、単純に表示/非表示を繰り返す
同期取らなくてもそれっぽく見えるけど、ちらついてしょうがない
370名前は開発中のものです。:04/02/09 19:15 ID:gpj6YV2G
表示/非表示は楽な割に高い効果があるね

場合によっては、赤 青 非表示 のように
補色と非表示を組み合わせて
輝きのある半透明感を出すのもいい。やりすぎるとドギツイだけになるので注意

市松模様もそのうちやってみてえなあ
371名前は開発中のものです。:04/02/09 19:27 ID:G+LxwaHn
点滅は処理落ちに弱い。
素直にアルファ使おうよ
372Delphian:04/02/09 19:31 ID:8wpz1hab
type
TWorker = class
end;

type TWork = procedure of object;

//タスククラス
type
TTask = class
protected
FStat: TStat; //タスクステータス
FPrio: Word; //処理優先度
FDelay: Cardinal; //待機フレーム数
FPrev: TTask; //前タスクへのポインタ
FNext: TTask; //次タスクへのポインタ

FKill: Boolean; //キルタスクフラグ
FChng: Boolean; //チェンジコールフラグ

FWorker: TWorker;
FWork: TWork;
FAttr: Word; //タスク属性(ユーザーが自由に使用できる)

public
constructor Create(Worker: TWorker; Work: TWork);
destructor Destroy; override;
procedure Execute;
end;
373Delphian:04/02/09 19:34 ID:8wpz1hab
>>341 >>372

こんな感じになったんですがどうでしょうか?
タスククラスにワーカークラスを登録する場合、
あらかじめ生成したワーカークラスを引数として渡して登録したほうがいいのか、
それとも引数にクラス型を渡して、タスククラス生成の中でワーカークラスを生成したほうがいいのか、
どうしたらよいでしょうか?

次から次にわからないことが…
374Delphian:04/02/09 19:53 ID:8wpz1hab
class Task {
 Worker* m_worker;
 Work m_work;
public:
 void execute() { m_worker->(*m_work)(); }
};

の部分は

class Task {
 Worker* m_worker;
 Work m_work;
public:
 void execute() { m_worker->(*m_work)(Task); }
};

にした方がいいですかね?
じゃないと、処理メソッドの中で自殺等できませんよね?
でも、処理メソッドの中でdelete Taskとかされたらこまりますよね…
375名前は開発中のものです。:04/02/09 20:45 ID:9b1YXsM8
>>374
その必要はないよ。
ちなみに俺も数年前はソレと同じやり方でやってたんだけどね

タスクを登録するときタスクリストでTaskのインスタンスを作るんだけど
そのインスタンスのポインタを登録関数の戻り値としてやって、
それを各ワーカーが保持しておけば何時でも参照できるよ
376Delphian:04/02/09 20:52 ID:8wpz1hab
>>375

実装の段階になると、壁にぶちあたりまくって、
タスクはやめようかと思ってきました(>_<)

登録関数がインスタンスのポインタを返すとしても、
登録したタスク(クラス)の外部では保持できても、タスクの内部では保持できませんよね?
377名前は開発中のものです。:04/02/09 21:00 ID:9b1YXsM8
各ワーカーの初期化関数中からタスクリストに登録すれば問題ありませんよ。
378Delphian:04/02/09 21:12 ID:8wpz1hab
>>377

つまり、ワーカークラス(を継承した各クラス)のコンストラクタでタスクリストに登録するということですか?
で、ワーカークラスを生成すると、自動的に自らをタスクリストに登録するような構造にするということですか?

なんか、そういう手間を考えると、やはりクラスとリストを使ったほうがいいのかなぁ…
汎用性はなくなりますけどね…

クラスを使ったタスクシステムや、>>329 >>341のような方法の載った
サイトや本がありましたら、教えてください。
C++でもかまいませんので…
379名前は開発中のものです。:04/02/09 21:33 ID:9b1YXsM8
大体そういうことです。回りくどいですがこれには色々と理由があるんで…。
タスクシステムを辞めた理由の中にはそういうのもあります。

具体的に実装方法が載っている本のことは知らないけど、
私はABA Gamesさんとこのゲームのソースコードがいいかなと思います。
shot.cなんか読んだら、なんだ、こんな簡単なことなのか、と思うんじゃないかな。
ゲーム自体も名作なので一押し。
380名前は開発中のものです。:04/02/09 21:34 ID:9b1YXsM8
ごめん、プログラムの名前書くの忘れてた。noiz2saです。
http://www.asahi-net.or.jp/~cs8k-cyu/windows/noiz2sa.html
381名前は開発中のものです。:04/02/09 21:40 ID:r7Ky+9tE
ってCじゃん
>181がC++でやってたみたいだが、消えてるし
382名前は開発中のものです。:04/02/10 00:11 ID:Qv9eDjn5
俺の実装方法は、タスクを処理の基本パターンとして、
親タスクから小タスクへどんどんタスクを生成して、階層上に回す。
状態はStateパターンの亜種で実装。破壊とかね。
管理は親タスクで、その管理はその親タスクで。
こんな感じの実装だったな。
利点はタスクによる処理の一貫性が得られる点と、
どの階層からでもタスクを再構築できる点。
オブジェクト指向とは相反する。
当然最良の方法でもない。
383名前は開発中のものです。:04/02/10 05:03 ID:QjDGv5K4
画面にNOW LOADINGとかの画像なりを表示させつつ
その間にデータを読み込むというのはどうやったらできますか?

使っている言語はC言語です よろしくおねがいします
384名前は開発中のものです。:04/02/10 05:31 ID:ZekKaigm
必死で考えて考えて考えたやつ→作れる
すぐ諦めて訊くやつ→無理

383、内容が薄すぎる。
自分で考えたんならもうちょっと建設的な質問ができるはずだぞ
385名前は開発中のものです。:04/02/10 08:03 ID:rQrFL9Ao
画面にNOW LOADINGとかの画像なりを表示させつつ
その間にデータを読み込めば良い
386名前は開発中のものです。:04/02/10 08:07 ID:lQiCBpHN
自機を動かしながら、敵を動かすのと同じやり方でいいでしょ
それともマルチスッドレにしたいのかな?
387名前は開発中のものです。:04/02/10 09:04 ID:XIpFljSz
マルチ的手法とか、リアルタイム的手法とかいろいろ考えられるね。
NOW LOADING処理表示中に、細切れにしたデータを逐次読み込むか、データ
読み込み中にNOW LOADING処理を逐次呼び出すとか。

後者が楽だと思うけど、俺は画面処理を軸にしたいから前者の方が好きかな。
388名前は開発中のものです。:04/02/10 09:08 ID:qDkTjytk
>>383
CreateFile 非同期 で検索汁
389Delphian:04/02/10 12:58 ID:X/1Dxz8Q
>>379

ぁ、ワーカークラスのコンストラクタでタスクリストに登録すると、
継承したクラスごとに優先度とか変えられないですね。

そういういろいろややこしくなることを考えると、
やっぱりゲームごとにクラス作っていこうと思います。

みなさん、ありがとうございます!
390Delphian:04/02/10 17:06 ID:X/1Dxz8Q
ぁ、コンストラクタに引数もたせれば、いいんですよね(;^_^A

実際、タスク使ってつくる人より、
普通にクラスを使ってつくる人のほうが多いんですかね?

C++でいいのでゲームプログラミングでおすすめの本があったら、
教えてもらえるとありがたいです。

できれば中高度くらいで…
3Dものは作る予定ありません。
391名前は開発中のものです。:04/02/10 22:49 ID:jnigZ/TI
ああん、コンストラクタとかタスクとかクラスとか何話してんだか全然わかんないポ
392名前は開発中のものです。:04/02/10 23:12 ID:hqZnD59D
動けば問題ないよ、面白ければ問題ないよ
393名前は開発中のものです。:04/02/10 23:13 ID:TgKzx3qf
>>391
まずプログラムの基礎を勉強するべきかと。

この辺の本とか、
http://www.amazon.co.jp/exec/obidos/ASIN/479800314X/ref=sr_aps_b_/249-6758129-5407516
http://www.amazon.co.jp/exec/obidos/ASIN/4798006033/ref=pd_bxgy_text_2/249-6758129-5407516
C++の便利な使い方も書いてあるので読め。
394名前は開発中のものです。:04/02/10 23:30 ID:8DmWCK/o
コンストラクタもタスクもクラスもわからなくても
古典的手法でガレッガや怒蜂は十分作れるYO

本が合う人は本でやってみるのもいいと思う。
もしそれでできなくても挫けるな。
どんな泥臭い方法でも、まずは動いて遊べるゲームを一つ完成させることだ。

一つもできないうちからウダウダやってると限りある人生ムダにすることになるぜ
395名前は開発中のものです。:04/02/11 00:54 ID:ffzykx9O
まず、泥臭い方法で作る。
で、もっと良い方法ないかなと模索する。
結果、タスクなりオブジェクト指向なりに行くと。
タスクに関してアセンブラと少ないメモリで少しでも
すっきりした形で作ろうした結晶のひとつ。
いきなり理解しようとするのが間違っている。
オブジェクト指向しかり。
396名前は開発中のものです。:04/02/11 01:03 ID:HavUqnN1
自分で問題に直面してみないと分からないことは多いからね
397名前は開発中のものです。:04/02/11 13:33 ID:WVAdP0V+
Cとタスクの一本槍人生。
WS→GBAと渡り歩いたら必然的にこうなったような。

しかしC++を覚えにくくなるという諸刃の剣。
結城浩尊師が御本を執筆なさる日を待っているとかいないとか。
398名前は開発中のものです。:04/02/11 14:20 ID:FwrI7GbY
int x[MAX];
int y[MAX];
int kind[MAX];
for (int i = 0; i < MAX; i++) { ... }

こういうBASIC時代の身も蓋もない実装を、アセンブラやCで正常進化させていけば、
勝手に古典的タスクに行き着きますな。
俺も含めて、すべてのオヤジゲームプログラマが辿った道でしょう。
んでもってC++覚えたらゲームオブジェクトやらエンティティやらシーングラフやら
OO的アプローチで取り組んでみると。

歴史をそのまま辿ってるので、今どきのわきゃーモンにとって効率のいい道かは……
まあ、若いんだし、回り道してみてもいいんじゃない?と思うけどね(w
399Delphian:04/02/11 16:05 ID:3Fwk/VlR
>>398

とりあえず、ここでアドバイスをいただいて、
オブジェクト指向でのゲームプログラミングについて、
わかってきました。

同じキャラクタが簡単に複製できるのでよいですね!

もう一歩レベルアップしたいのですが、
それは、あたり判定、、、(?)です。

シューティングというか、アクション要素の強いものにするつもりなんですが、
どういう方法をとればいいのかわかりません。


400Delphian:04/02/11 16:06 ID:3Fwk/VlR
画面は斜め上からの見下ろしタイプ(?)で、
移動とか描画のイメージとしてはボンバーマンをイメージしてもらえると、
わかりやすいかと思います。

たとえば、1キャラ32×32のサイズだとして、
1キャラ単位の移動の場合には、
(右に移動するときは、8ドットずつ描画。
 1キャラサイズ分移動するまでは操作できない)
キャラの座標を元に、スプライトを優先度順に描画して、
当たり判定も座標位置から処理することができますよね?
(この場合、当たり判定というより、座標からのチェックですね。)

これをドット単位の移動にしたい場合、
どうすればよいのでしょうか?
401Delphian:04/02/11 16:14 ID:3Fwk/VlR
ドット単位の移動の場合には、
通常でいう当たり判定を実装すればいいのでしょうか?

たとえば、32×32サイズのキャラの場合、
足元(キャラの下半分=32×16)にのみ当たり判定をもたせて、
敵・障害物にも当たり判定を持たせて、
その当たり判定によって移動の制限・敵との接触を判断するような形でよいですか?
402名前は開発中のものです。:04/02/11 18:32 ID:gYQdJ6t0
ある程度やり方が想像ついているのなら、聞く前にまず組んで見ろ。
それで、何か問題があれば聞きに来るようにしてみては。
403Delphian:04/02/11 18:54 ID:3Fwk/VlR
>>402

すみません(>_<)
すでにやってみてわからなかったので、質問しました。
>>401の方法でたしかに移動はうまくいくんです。
しかし、描画がうまくいかないんです。

たとえば、障害物があって、
その下に自キャラがいる場合は、
障害物にかぶって自キャラが手前に描画されます。

しかし、障害物の後ろにいる場合でも、
障害物にかぶって自キャラが描画されてしまいます。

この場合、どのように描画していけばいいのかわからないんです。

障害物を2つのスプライトに分ける、以外に何か方法はありますか?
それとも、障害物を優先度の違う2つのスプライトにわけるしかないんでしょうか?

それによってはだいぶかき直しがでてきてしまうので、
なにかよい方法があればと思って聞きました(>_<)
404名前は開発中のものです。:04/02/11 19:00 ID:mUyP1muW
具体的にどう組んでるか判らないが、一番単純な方法は
自分も含めて奥から順番に並べていく。
405Delphian:04/02/11 19:13 ID:3Fwk/VlR
>>404

できました!!
ありがとうございます!!

原因は、自キャラの描画優先度が常に最優先の順位になっていたためでした。
406名前は開発中のものです。:04/02/11 19:23 ID:HavUqnN1
うーむ…。
何故タスクを使っているのかということを知らずに、タスクを使っていたのではどうしようもないよ。
タスクを使うなら使うなりにその利点とかをちゃんと理解して使わないと。
407名前は開発中のものです。:04/02/12 00:17 ID:JIe2B+wy
>>397
あーわたしも同じような感じだ。
いい加減Winに移行しようと思っているけど
どこから手を付けたものか。
408名前は開発中のものです。:04/02/12 00:54 ID:9O1aGBUy
そういや全員がパソコン用シュー組んでるわけじゃないんだな
409名前は開発中のものです。:04/02/12 01:00 ID:WI+q7xKn
>>407
今俺はLUNAってライブラリ(DX9版)使ってどうにかこうにかスプライトドライバらしきものは作ったってとこ。
楽することしか考えてないし。
1つのテクスチャからしか画像引っ張って来れないクソだけど。

ま、先達の足跡をなぞらせてもらうってのがいいんじゃないかと。
410名前は開発中のものです。:04/02/12 04:04 ID:s4ARHeDC
D3DXSpriteを使おうと思っているのだけど、半透明や加算合成はサポートされていますか?

理想としては、DirectDrawみたいにサーフェスから矩形転送で半透明や加算合成がハードウェアで
サポートされている機能があればいいんだけど。
そんなやつ知りませんか?
411名前は開発中のものです。:04/02/12 04:10 ID:s4ARHeDC
↑のは、DirectDrawみたいに手軽な矩形転送(BLT命令)の方法で半透明や加算合成がハードウェアでサポート
されている便利な機能は無いのかなってことです。
412名前は開発中のものです。:04/02/12 04:51 ID:x2br8nu/
DrawPrimitive使ってスプライト描画ライブラリ作ればいいじゃん。
ゲーム作るよりは簡単だと思うが。
413名前は開発中のものです。:04/02/12 05:21 ID:N/rg5owY
D3DXSpriteの話題なら、スレ1_53あたりから出てるようだね
あとはdxスレが参考になるのかな
俺は直接directx触ったことないので間違ってるかも知れないが
414名前は開発中のものです。:04/02/12 10:08 ID:w674jgk+
あんまOOに拘らん方がいいと思うが
415名前は開発中のものです。:04/02/12 13:12 ID:mg39+6ki
まぁ、目的はそれぞれ。
完成することが目的じゃなく、オブジェクト指向を楽しむためのシューティングプログラムであっても結構。
416名前は開発中のものです。:04/02/12 16:03 ID:p/bDU+ZR
質問した本人の迷いが晴れて少しでも進歩してくれるなら、それでよい
が…迷わせてるだけの回答もあるようだ
まあ2ちゃんねるだから回答の質など低くてあたりまえなんだけどな
417名前は開発中のものです。:04/02/12 20:38 ID:JIe2B+wy
>>709
Lunaは導入を検討中…まあ楽にというのは同意。
別にシステムを作りたいってわけじゃないからね。
418delphian:04/02/12 21:16 ID:CeQLH9bx
>>401

だめでした!!
せっかく書き直したのに…(;_;)
この方法には問題点がありました…。


障害物、自キャラ共に足元(下半分程度)だけにあたり判定を設けています。
これで自キャラが障害物の手前にいるときは、障害物に少しかぶる程度になります。
障害物の後ろにいるときは、後ろに少し隠れるようになりました。

しかし、、、マップをつくった時に判明しました…
障害物が縦に二つ並んだときはだめでした!!
画面上では障害物がつながって並んでるのに、
自キャラがすりぬけてしまいました…。

横から障害物にぶつかると、あたり判定の隙間をすりぬけてしまうんです…
障害物のあたり判定が小さいとかですかね?
それともやり方自体が間違ってるとかでしょうか…

せっかくうまくいったと思ったのに、かなり悩んでいます…
斜め見下ろしタイプにするんじゃなかった(;_;)
419名前は開発中のものです。:04/02/12 22:19 ID:64+QEQjj
表示だけ斜め見下ろしにすれば良いのでは。
判定自体は平面で十分かと。
てかシューティングゲームなのか?w
420名前は開発中のものです。:04/02/12 22:37 ID:cAtxPdMd
自キャラと地形の当たり判定が問題ですよね。
自キャラの当たり判定を見た目より大きくして
壁のキャラ同士の隙間を通れないくらいにしたら。

自キャラと敵などの当たり判定は普通の大きさでするとして。
421名前は開発中のものです。:04/02/12 22:38 ID:wLwHm65y
あたり判定を地形用と敵キャラ用で2種類作ればいいんじゃないだろうか。
422delphian:04/02/12 22:43 ID:CeQLH9bx
>>419

表示と判定ってきりはなすいい方法ってありますか?
障害物の前に表示させたり、後ろに表示させたりするのに、
平面にしちゃうと障害物の後ろに隠れるように表示できない気がするのですが…

ちなみに移動はアクションっぽい感じで、
敵の出現とか攻撃方法がシューティングっぽい感じです。
アクションシューティング!?みたいな感じを予定してます。
423delphian:04/02/12 22:48 ID:CeQLH9bx
>>420
>>421

2種類ですか、なるほど。
でも、判定が2種類だと重たくなりそうな気がしますが平気でしょうか?
424名前は開発中のものです。:04/02/12 22:54 ID:wLwHm65y
2種のあたり判定は、確かに処理は重くなるけど
かなりの数比較しないと目に見えて重くならないハズ。

作画順序が問題なら、作画前にソートしてはどうか。
425delphian:04/02/12 23:35 ID:CeQLH9bx
>>424

ありがとうございます!
とりあえずやってみます!
つまり、
自キャラ→敵キャラ
自弾→敵キャラ
敵弾→自キャラ
自キャラ→地形

と4回当たり判定すればいいんですよね!?
うーん、重くなんないかなぁ…。
とりあえずやってみます(>_<)
426名前は開発中のものです。:04/02/12 23:46 ID:64+QEQjj
>>422
これは一般的に広く使われている方法だと思うけど、当り
判定用の仮想マップを作る。

プロック単位なら1ブロック1バイトとかで十分。
ブロックのサイズで割り算すれば仮想マップでの位置は
簡単に求められるよね。

表示に関して言えば見る方向が限られているわけだから
位置で優先順位が決まるはずだよ。
427delphian:04/02/13 00:10 ID:L2MM37WS
>>426

ただ、自キャラの移動がドット単位なので…
ずれて障害物にぶつかったときは、判定がおかしくなっちゃいますよね?
428名前は開発中のものです。:04/02/13 00:32 ID:72fuhvhV
>>427
ドット単位でも殆んどの場合仮想マップで十分だよ。
1点だけで当り判定しなければいいだけの話。

移動前に移動するはずの位置(オフセットさせて)での当り
判定を取ればめり込むことも無い。

例えば上に移動したいなら上の辺の2点でどちらかが当る
かどうかを調べてどう移動するかを決めると。
429delphian:04/02/13 00:39 ID:L2MM37WS
>>428

障害物や自キャラすべてのキャラが32×32のサイズだとすると、

  自キャラの位置÷32が仮想マップでの位置

とかそういう感じですか?
430名前は開発中のものです。:04/02/13 00:48 ID:XbqqmpNF
へえ、こんなところがあったんだね。
もっと何て言うか、プログラム的なテクニック以外の話題かと思ってたんだけど
タスクとかオブジェクトとか、みんないっぱい勉強してるんだなぁ。
そういう専門用語なんて全然わかんないよ。
CとかDelphiとかも、全然わかんないよ。

でもちゃんとシューティング作れたよ。
こういう人間もいるから、みんなくじけず頑張れ。
431名前は開発中のものです。:04/02/13 00:50 ID:v58S7DuN
>>430
貴重な人材ようこそ
実際にシューティング作れた人の経験談ってのは、何より大事だよ
432名前は開発中のものです。:04/02/13 00:54 ID:72fuhvhV
>>429
そうそう。
で、自キャラの当り判定用に4つの点が移動すると
考えてみればわかるかな?
433430:04/02/13 01:34 ID:XbqqmpNF
>>431
どうも、話の腰を折っちゃったみたいで申し訳ない。

今Windowsの2作目をやってるけど、大バグ出しちゃって大変だよ。
敵を動かすメインの部分を再設計するはめになったよ。
技術的なことより、モチベーションの維持が大変かもしれない。
2ちゃん見てる暇あったらさっさと直せって言われそうだけど・・・
ユーザー様販売店様ごめんなさい。
434名前は開発中のものです。:04/02/13 01:50 ID:v58S7DuN
モチベーションの維持はなかなか大変だよね。最近読んだ記事では
ttp://www.radiumsoftware.com/0402.html#040205
このあたりが俺もそんな経験あるなあって感じだった
435名前は開発中のものです。:04/02/13 06:56 ID:/YwtefBv
1日8時間エンジン全開にできれば制作サクサク進むだろうになあ。
436名前は開発中のものです。:04/02/13 08:09 ID:5j3rqqRT
やる気を高揚させるためにゲーセンに逝く。
437名前は開発中のものです。:04/02/13 08:23 ID:KOGPA4TU
むしろシューティングが殆ど無くてショボーンとする罠
438名前は開発中のものです。:04/02/13 09:24 ID:KkLY0EpL
>>434
俺もそこみてて共感した
自分含めて周りにもいるので。。。
439名前は開発中のものです。:04/02/13 16:53 ID:1Fo+YVFx
G-わんげ鳩大往生XII〜絆ダウン〜 4stage
http://game4.2ch.net/test/read.cgi/arc/1069685469/
440名前は開発中のものです。:04/02/13 21:26 ID:XbqqmpNF
>>434
なるほど、目から鱗が落ちるとは正にこの事。
だから今日も頑張るよ。
ついでに新しい敵動作も追加するよ。
441名前は開発中のものです。:04/02/13 22:33 ID:guX4f2wb
学校の卒業研究で3Dシューティングを作ってるのですが、ここって製作物の晒しOKですか?
442名前は開発中のものです。:04/02/13 22:35 ID:EmYVUBZc
おkでう
443名前は開発中のものです。:04/02/13 22:43 ID:f3pxBEWu
>>1
444名前は開発中のものです。:04/02/13 23:09 ID:En2k9c8k
>>439
自分たちで責任もってやりなさい。
445名前は開発中のものです。:04/02/14 00:06 ID:cgI0TFan
卒業研究でシューティングって何気に凄いな
物理屋?
446441:04/02/14 00:11 ID:c3gggQ2G
ただの専門学校です(´Д`;
今確認してみたらメモリリークしてた個所があったので
晒すのはもう少しかかります・・・

>>443
すみません。
447名前は開発中のものです。:04/02/14 01:12 ID:C5FrO4Iv
>>446
期待してる。
ソース月だったら神
448441:04/02/14 02:14 ID:c3gggQ2G
おそらくまだ問題を色々内包してたり、
システムやグラフィックにまだ未完成な部分も多いですが、いったん晒し。
ttp://gamdev.org/up/img/237.zip
Zキーでショット、Xキーでボム、カーソルキーで移動して、ESCで終了です。
タイトル画面ではZキーを押してスタートしてください。

>>447
すみません。今はスパゲティ状態になっているので、
どれだけ先になるかわかりませんがソースを整理できたら晒させて頂きます。
449名前は開発中のものです。:04/02/14 02:25 ID:Gjymcyaj
キタ━━━━━━(゚∀゚)━━━━━━!!!!
450名前は開発中のものです。:04/02/14 02:29 ID:Gjymcyaj
せ、先生!!
ゲームが物凄いスピードで進みます!!
なんか処理をCPUとか描画依存とかにしちゃってるのかな?

P4 2.4GC
RADEON9800Pro
VRAM128M RAM1G3100
WinXPPro

451441:04/02/14 02:33 ID:c3gggQ2G
あ、しちゃってます。
というよりもFPSを一定に保つ処理入れ忘れてました。
フルスクリーン状態ならなんとかなりませんか?
452名前は開発中のものです。:04/02/14 02:36 ID:8/CSSAPL
うちもウィンドウモードだとマッハで動くな。
AthlonXP2200+
RADEON9500pro
PC2100/1GByte
WinXPpro
453名前は開発中のものです。:04/02/14 03:22 ID:4XzIoYrv
GetTickCountでウエイト入れればいいだけっしょ。
454441:04/02/14 03:26 ID:c3gggQ2G
ttp://gamdev.org/up/img/237.zip
ファイル名同じですが中のバイナリ変えました。
秒間約60FPS固定になっているはずです。
が、リフレッシュレートとの兼ね合いで
描画がカクカクするようになった・・・
455名前は開発中のものです。:04/02/14 04:05 ID:8Y8IyI5m
必要なところがしっかり押さえてあっていい感じだね。この調子でガンガレ
456名前は開発中のものです。:04/02/14 05:46 ID:wsFOcZ87
殺伐としたスレに救世主が!



      ヽ)∵)ノ
      (  (  くねくねマン
       )  )
457名前は開発中のものです。:04/02/14 20:31 ID:8/CSSAPL
>>454
OK.
問題ナス。

441氏はトリップつけたら?
458名前は開発中のものです。:04/02/14 21:53 ID:IUYsHKXe
特にシステム上とかで突っ込むポイントは無いけど、難しい(´Д⊂)
あと武器LVの上がるシステムの仕組みが良く分からないです
ボタン押しっぱなしだとLV2の状態でもLV1が出るとか?
459441:04/02/14 22:19 ID:c3gggQ2G
>>455
ありがとうございます。

>>457
ええと、今はつけません。
卒業までの期間の関係上、リザルトとオールクリア画面を作って、効果音をつけたら
卒業制作としては完成としてしまうので、今のやつの新しいバージョンは晒さないと思うので。

ええと、一応今このスレで書き込みをしてる私を含めて3人で作ってたのですが、
システム面を作ってたのが私なので、春以降になったらその部分をいくらか流用、改変して、
完全な個人製作として違うゲームを作る予定で、そのときにそれをこのスレで晒したいと思ってますので、
そのときにはつけるかもしれません。

>>458
敵弾にかするか、アイテムのPって感じのものを取れば内部的にかすりゲージが貯まっていってパワーアップします。
パワーアップアイテム1個はかすり8回分ですが、かすりをすると点数も加算されるので、
状況に応じてかすっていくか倒していくかで得点もかわってきます。
武器レベルが下がるのはショットを撃つごとにかすりゲージを減少させているためです。
強いLVほど減少幅を大きくしています。
まあ、変なシステムで調整が滅茶苦茶なので、バランスは偏りまくっていると思われます。
460441:04/02/14 22:31 ID:c3gggQ2G
すみません、もう一つだけ。
不正な処理などで落ちるなど、不具合が出てる方とかいませんか?
461名前は開発中のものです。:04/02/14 22:50 ID:+mF+xtYc
>>460
とりあえず不具合は出てないよ。
462名前は開発中のものです。:04/02/14 23:57 ID:IUYsHKXe
うん、不具合は無いよね
その点は上手い、いやマジで個人的神認定
463名前は開発中のものです。:04/02/15 00:17 ID:lCdWaxNd
専門学校ではライブラリを先生が作って聞いたことがあるけど本当?
464名前は開発中のものです。:04/02/15 00:25 ID:ezQzZqQQ
>>463
そういうところもあるらしいな。
自分で作った樹にさせてくれるんだろう。
まぁ、それで自信はつくかも知れんがね。
465441:04/02/15 00:34 ID:DbqjGaLn
報告ありがとうございます。とりあえず不具合が無いようでなによりです。

>>463
ゲーム系ではないので、DirectXまわりを含め、コーディングは全て自分たちでしました。
DirectXまわりもGraphicとInputだけで、難しい事をしないならあまりたいした手間でもないですし。
ですけど、既存のライブラリ使えたならもう少しシステムも凝れたかなあと思います・・・。
466名前は開発中のものです。:04/02/15 00:35 ID:X3dXMkPx
>>459
>卒業制作としては完成としてしまうので
一番時間がかかるのは、見た目だよ。
キャラやエフェクトや一枚絵を気に入ったものにするのに、コーディングの倍掛かる。
467441:04/02/15 01:12 ID:DbqjGaLn
グラフィックはテキトーでも単位は認められそうなので、
それは私の春以降の課題ということに・・・

ところで、ゲームを始めて、ESCでタイトル画面に戻って、もう一度始めようとすると落ちる
しょうもない不具合があったので、いったんファイル消します。
468 :04/02/15 10:52 ID:1m2QR9W7
>441 未プレイなんで再upきぼん
469名前は開発中のものです。:04/02/15 11:26 ID:Cbo0ArGy
目標もなく、だらだらと製作しててもいつまで経っても完成しないので、
最終的にはコミケに参加したいと思っています。

皆さんも、コミケにサークルとして参加することが目標の人いますか?
470名前は開発中のものです。:04/02/15 11:43 ID:gxt9OfZY
参加してるよ。
コミケは何気にSTG結構多い。
まあノベル、ADV、18禁の方が圧倒的に多いが。
471名前は開発中のものです。:04/02/15 13:18 ID:1EtaG9Wk
俺もサークル参加してる。
472441:04/02/15 14:27 ID:DbqjGaLn
>>468
再UPしました。
ttp://gamdev.org/up/img/242.zip
>>467の不具合の解消。
ボム使用時のグラフィックの変更。
なんちゃってリザルト追加。
以上の改良を加えました。
473名前は開発中のものです。:04/02/15 16:15 ID:sXks84IT
>>472
操作方法や、アイテムの説明、製作環境、
動作環境などをかいたドキュメントをつけれ。
Readめとかさ。
是がないのは少し痛い。
作ってないならすぐに作った方がいい。
システム開発分野については習ってないのか?
474名前は開発中のものです。:04/02/15 17:28 ID:DfDjLHa9
readmeとシステム開発分野が関係あるのか、なる程
475名前は開発中のものです。:04/02/15 17:39 ID:KZmLpDer
システム開発は知らんが人に見せる物には普通Readme付けるよな
476441:04/02/15 18:50 ID:DbqjGaLn
Readme入れました。ファイルは>472と同じです。
今まで入れてなかったのは私が不精だからです(汗
477名前は開発中のものです。:04/02/15 20:09 ID:KZmLpDer
気にする事は無いさ
478名前は開発中のものです。:04/02/15 21:33 ID:ET0V3O0f
皆が一から製作しているのに、
Lunaライブラリを使って、ゲームを製作して
コミケ参加を目指すことはダメかな?
479名前は開発中のものです。:04/02/15 21:34 ID:RI+f5eNz
全然あり。
でもLunaライブラリってどんなこと出来るんだろう?
なんか前に見た感じはただのラッパーって感じがしたんだけど
480名前は開発中のものです。:04/02/15 21:52 ID:qSuxKX7z
自分の好きな方法でできるからこそ同人。
漏れはLunaSoundとLunaInputだけ拝借してます(・ω・)
481名前は開発中のものです。:04/02/15 22:22 ID:l9fQFxpf
>>479 >>480

ありがとう!励みになりました。
製作頑張ります。
482名前は開発中のものです。:04/02/15 22:53 ID:sXks84IT
>>474
そういう意味じゃない。
普通はドキュメントをつけるもんだって言ってるの。
ソフトウェア工学の入門書でも嫁、莫迦
483名前は開発中のものです。:04/02/15 23:09 ID:fWthJuML
484名前は開発中のものです。:04/02/15 23:10 ID:1EtaG9Wk
BAKAと来たか
485名前は開発中のものです。:04/02/15 23:13 ID:DfDjLHa9
ドキュメントを付けることとソフトウェア工学の入門書が関係あるのか、なる程
486名前は開発中のものです。:04/02/15 23:22 ID:QGLQfp/x
そりゃ関係なくないが・・・つっこむとこちゃうやろ!
487名前は開発中のものです。:04/02/15 23:37 ID:AXiadNsY
誰とは言わないが、もう少しネタをネタとして解釈できたほうが実生活でも損せずに済むと思うよ…
488名前は開発中のものです。:04/02/15 23:40 ID:7Cl1Ky5T
本人が「無精でした」って言って終わってるのに
いつまでやってんのかいな
489名前は開発中のものです。:04/02/16 00:32 ID:1RNg+izO
DfDjLHa9はノイローゼ
そっとしておいてやれ
490名前は開発中のものです。:04/02/16 00:44 ID:7FJAzTrC
明日に ああ繋がる今日くらい
491名前は開発中のものです。:04/02/16 00:51 ID:YPR+0JkA
殺伐としたスレに救世主が!



      ヽ)∵)ノ
      (  (  くねくねマン
       )  )
492名前は開発中のものです。:04/02/16 01:48 ID:qQNN913R
ラスタスクロールか。
493名前は開発中のものです。:04/02/16 01:52 ID:7FJAzTrC
ソレダ!
494名前は開発中のものです。:04/02/16 02:03 ID:pUpo7bZI
かつてラスタ割り込み使って行ってたエフェクトが、
いまやフレームバッファ直描き。
マシンパワーとは恐ろしいもんだ
495名前は開発中のものです。:04/02/16 02:41 ID:gQMLCQ7p
それどころか
ラスタースクロールっぽいことやろうとすると
逆に面倒だったり重くなったりする罠。
496名前は開発中のものです。:04/02/16 08:33 ID:wrRr+sTH
>>495
それが直描きでやれて感慨深いものがあるなぁというのが>>494の書き込み
じゃないか。1つ前のレスちゃんと読んでやれよw
497名前は開発中のものです。:04/02/16 09:19 ID:bZG73jUk
498名前は開発中のものです。:04/02/16 09:22 ID:AXYTAAHF
>497
ふむふむなるほど
499名前は開発中のものです。:04/02/16 10:31 ID:F6FH1B57
くねくねマン、マジで救世主だなw
500名前は開発中のものです。:04/02/16 12:00 ID:2ueEZCar
501名前は開発中のものです。:04/02/16 12:06 ID:YPR+0JkA
502名前は開発中のものです。:04/02/16 13:03 ID:5PgkRdje
ファミコンの場合はラスタ割り込みすらなかったり。
http://sufami.hp.infoseek.co.jp/nes/nes015.html
503名前は開発中のものです。:04/02/16 13:35 ID:QKzL9nG+
ID:DfDjLHa9
IDにDFDとあるが、DFDなんてぜんぜん解ってないんだろーな
504名前は開発中のものです。:04/02/16 13:45 ID:6lUhsijf
DfDjLHa9のカキコと彼がDFDを解ってないことが関係あるのか、なる程
505名前は開発中のものです。:04/02/16 14:04 ID:QKzL9nG+
狼藉者
506名前は開発中のものです。:04/02/16 15:55 ID:K45o6T4J
割り込みに頼れないからラインごとの処理速度を一定に保つ工夫が必要とは。
CPUの命令クロック数える世界だな。
507名前は開発中のものです。:04/02/16 16:28 ID:lkMPgGAk
>>501
ちょっと面白かった。
ビックバイパーのオプションをちょーーーー進化させたものか。
あとで実験してみよう・・・。
508名前は開発中のものです。:04/02/16 16:39 ID:RPIyxF33
>>501
ウワーン キモイヨー
509名前は開発中のものです。:04/02/16 17:50 ID:UmGg8rRb
BulletMLで弾幕を作りたいんですが、どうしたら良いかイマイチわかりません。
bulletnote0_11.zipは落としました。Eclipseがどうとかで詰まってます。
誰かご教授キボンヌ〜。
510名前は開発中のものです。:04/02/16 17:55 ID:YPR+0JkA
511名前は開発中のものです。:04/02/16 18:10 ID:K45o6T4J
>>509

・bulletnoteとEclipseを使うのをあきらめる。無くても
 BulletMLで遊べる。
 根性で使えるようになるのも良いと思うけど、1時間web調べて試して
 まるでわからないなら後回しにしたほうがいいだろう。

・まず、web版のBulletML JAVAアプレットで遊ぶ
 (ブラウザのJAVA関係の機能をonにしておくこと)
 ttp://www.asahi-net.or.jp/~cs8k-cyu/bulletml/bulletml_applet.html
 このとき、解説 ttp://www.asahi-net.or.jp/~cs8k-cyu/bulletml/
 を読みながらやると、わかりやすい

ここまでは定番。

あとは白い弾幕くんでユーザースクリプトを
テキストエディタで直接書くのが広く用いられている方法かな。
512名前は開発中のものです。:04/02/16 18:33 ID:K45o6T4J
PARSEC47のBulletMLファイルを一旦全部削除して
1つだけ自作BulletMLファイルを置けば、
自分だけの弾幕でPARSEC47が遊べる
かも知れない。
ツール一発でやれると説明の手間が省ける

ダイアログでいくつかの質問に答えるだけで
それに応じた見栄えのする弾幕を出力するようなソフトってあったっけ?
installの手間が無い奴で
513509:04/02/16 22:20 ID:xIAoxYhF
>>510
工エエェェ(´д`)ェェエエ工工
>>511
あきらめようか・・・なんかJava上手く動かへんねんや。
白い〜は持ってるが、そのあとの詳細キボン。
>>512
Noizsa2がそれ出来るってどっかで見た。
47でもできるんだ。後半、そんなソフト漏れもキボン

ところで(仮)の.scbデータをメモ帳で開くとなんか結構簡単な作りっぽいんだが、VBでシューティング作んのってムズい?
514名前は開発中のものです。:04/02/16 22:38 ID:AACgvkDE
今のマシンならVBでも速度に問題なければ大丈夫なんじゃない?
515名前は開発中のものです。:04/02/16 22:44 ID:jPWNcFhD
すまん、関係ないんだが(仮)ってなに?
516名前は開発中のものです。:04/02/16 22:55 ID:K45o6T4J
>>513
白い〜 を実行して「グループ」を選んで、
一番下の「ユーザー定義」を選ぶ。

ずらずら〜っと出てきてわかりづらいので、一旦終了して、
userフォルダの中身を全部消す。

PARSEC47からテキトウに弾幕XMLファイルをuserフォルダにコピーしてみる。
buildとかmoveとかは弾幕じゃないんでダメね。

もう一度白い〜 を実行して「グループ」「ユーザー定義」を選ぶと
さっき持ってきた弾幕XMLが「ユーザ定義1」など表示されると思う。

あとは、持ってきた弾幕をちょこちょこっといじってみるといいかも。
このあたりは実際にハマった人の体験談のほうがためになるかもな。

>>515
SHOOTING GAME (仮) かな。
517名前は開発中のものです。:04/02/16 22:57 ID:K45o6T4J
・PARSEC47の弾幕XMLを拡張子BMLにしてダブルクリックすると
 白い〜 が実行されるけど、手元では100%エラー発生して動かなかった。
 普通に白い〜 のGUIから選ぶぶんにはエラーが出ない。
・記述を少しミスするとエラーが出るが、文法チェッカが無いのでわかりづらい。
あたりはよくわかんない。
518名前は開発中のものです。:04/02/16 22:59 ID:jPWNcFhD
>>516
なるほど、ありがとう。
519名前は開発中のものです。:04/02/16 23:53 ID:HLiV/lrI
おいどうやったら背景画面が動くようになるんだ?
飛んで進んでるように見せたい
教えろ!
520名前は開発中のものです。:04/02/17 00:00 ID:78GO7Anz
絵の表示はできてるか?
521名前は開発中のものです。:04/02/17 00:30 ID:scw5yJ2P
>>519
1.丈夫なトコからぶら下げたロープで頭より少し高めの位置で輪を作る。
2.踏み台に乗り,輪に頭を通す。
3.踏み台から足を離す。
で,何か見えるかも。
522名前は開発中のものです。:04/02/17 00:30 ID:+inRp7es
弾幕のアイデアにどぞ〜
ttp://www13.plala.or.jp/serenade/
523名前は開発中のものです。:04/02/17 00:40 ID:LhO7cBxJ
>>522
使い方がわからんですが。。。
524名前は開発中のものです。:04/02/17 00:51 ID:7BBHObpO
弾幕なんてアイデアだろ。
ていうかいきなり完成度の高いものつくらずに、
一通り完成させてからそれを改造していったほうがいいと思う。
ソースはスパゲッティになっちゃうかもしれんが、初めて作るんならそれがいいんじゃない?
525名前は開発中のものです。:04/02/17 01:03 ID:LhO7cBxJ
>>524
そうなりますたw
526名前は開発中のものです。:04/02/17 01:54 ID:QuLGOMsL
見栄えのする弾幕と長く遊べる弾幕とを両立できればベストだが、
入門には見栄え弾幕をやってみると良いと思うYO
それどまりなのはマズいけど、発表すればプレイヤーが厳しくツッコミ入れてくれるだろう
527名前は開発中のものです。:04/02/17 02:21 ID:7BBHObpO
見栄えのする弾幕 = 自機の現在位置に関係なく全方向囲に放射ってことかな?
528名前は開発中のものです。:04/02/17 02:30 ID:QuLGOMsL
>>527
たしかに、それは見栄えがするな。最初のオススメかも。

そこに他の敵からの自機狙いを混ぜるのが定番。
お手本の例は怒蜂2面後半の巨大戦車とザコの複合攻撃。
529名前は開発中のものです。:04/02/17 03:06 ID:uimhGg87
>>526
見栄え重視といえば東方〜やね。
あの弾幕は打上げ花火みたいで好き。
530名前は開発中のものです。:04/02/17 10:48 ID:NTTskLqM
ttp://ueno.cool.ne.jp/lsound/d0402.htm の2/14
俺みたいなド素人には大変勉強になったが、一体何を指してたんだろうか。
531名前は開発中のものです。:04/02/17 11:44 ID:vBoNxP63
ここまで細かく書かれてると、あっさり特定されそうだな。
とりあえず明らかに俺のゲームではない。
532名前は開発中のものです。:04/02/17 13:05 ID:zgBXUO2X
常識的なことが並べられてるだけな気がする。
ってか、そんなことすら出来てないのもあるのねぇ
533名前は開発中のものです。:04/02/17 13:10 ID:EtOkc6tW
これだから個人日記は嫌いなんだ…
読んでて不快
534名前は開発中のものです。:04/02/17 13:14 ID:2ioJja+r
>>530
痛い電波の人晒しage
535名前は開発中のものです。:04/02/17 13:19 ID:2tYEiOOm
ウチのサークルのゲームでもないな
536名前は開発中のものです。:04/02/17 13:37 ID:fqdrMcS1
きちんと「こうするべきだ」ってのが提示されてるし
これで不快だって人は他人の言うこと一切聞かないタイプなんだろうな

まぁ、イチイチ日記に書くなんてリスク背負い込むのもアホだけど
537名前は開発中のものです。:04/02/17 13:41 ID:kcWwfI4B
>>536
きめつけはよくないぞ…
オレが嫌いなのは日記でこういう意見を言うまえに作者にいえよ、
不特定多数相手に愚痴いうなよ〜、って点なのね。
書いてあることはほんと同意。
538名前は開発中のものです。:04/02/17 13:43 ID:kcWwfI4B
あら、ID変わってるな、533だ
539名前は開発中のものです。:04/02/17 13:45 ID:fqdrMcS1
>>537
すまん。
でも実際>>530みたいに勉強になったって奴もいるやん?必要悪みたいなもんかと
作者に伝えようという気はそもそも無いんだろうね
540名前は開発中のものです。:04/02/17 13:52 ID:e4ZXsLT2
でも斜め移動を1/√2にするのが常識ってのはどうかと思うな
あれタルいから嫌い。
541名前は開発中のものです。:04/02/17 13:54 ID:LhO7cBxJ
最初東方かと思った。
542名前は開発中のものです。:04/02/17 14:05 ID:LhO7cBxJ
縦STGで前後と左右が1:1じゃないゲームもあるのにね。
543名前は開発中のものです。:04/02/17 14:08 ID:ysX7AhV3
>>540 8ビット時代の方ですか?
544名前は開発中のものです。:04/02/17 14:10 ID:e4ZXsLT2
>>543
8ビット時代って何?
545名前は開発中のものです。:04/02/17 15:10 ID:CI4RSq2u
縦STGなら斜めが早いゲームは結構あると思う。
おそらく戦略として残しているんだと思う。

横STGで斜めが早いのはあまり見ないね。
546名前は開発中のものです。:04/02/17 15:22 ID:EzMs6oZJ
>>542
ギャプラス以外になんかあったっけ?
547名前は開発中のものです。:04/02/17 15:24 ID:fqdrMcS1
少なくともセイブシューはそうだよ。斜めも考慮してない。
548名前は開発中のものです。:04/02/17 15:28 ID:+C9broT1
つーか、DOOMとか普通にサイドステップしながら前へ進むのがテクになってなかった?
549名前は開発中のものです。:04/02/17 15:29 ID:LhO7cBxJ
>>546
ドラスピのニューバージョン
550549:04/02/17 15:38 ID:LhO7cBxJ
旧バージョンも1:1じゃない気がしてきた。
確認できず。
551509:04/02/17 16:07 ID:MHwqFiiQ
>>514
なるほどね。作るのはムズイ?
>>516
やってみます。
552名前は開発中のものです。:04/02/17 18:07 ID:EmbB3W/s
「作るのはムズイ?」ってのはどういうこと?
どの言語で作ろうとあまり変わらない気がするけど・・・
553名前は開発中のものです。:04/02/17 18:45 ID:Nf4lvsng
ダブルバッファリングは必須ですか?
554名前は開発中のものです。:04/02/17 18:47 ID:zgBXUO2X
Direct3Dの描画の話?
だとしたら最早必須な気がする。
555名前は開発中のものです。:04/02/17 19:06 ID:fSHIQ8rE
DirectDrawでも事実上必須な気もするが
556名前は開発中のものです。:04/02/17 19:21 ID:zgBXUO2X
昔は必死になって差分描画とかやってたもんだよw
557名前は開発中のものです。:04/02/17 19:22 ID:zgBXUO2X
・・・といってもちらつき抑えるためには
ダブルバッファリングしないと駄目だったなあ
結局必須ってことで
558名前は開発中のものです。:04/02/17 20:03 ID:NBUaPGjZ
ダブルバッファリングしない場合は、操作が遅延しないほうを優先した、と言い訳しよう
それでいて処理順序を間違えて遅延が出てたりするとボロクソに叩かれるわけだが
559509:04/02/17 22:00 ID:HsWBabT/
あーそうなんだ。どもです。
とりあえず弾幕いじってみるわ。
560名前は開発中のものです。:04/02/17 22:23 ID:e4ZXsLT2
どちらかといえば
ちらつき抑止のほうが重要だわな。目立つから。
操作遅延は一部の人間しか意識できん。
561名前は開発中のものです。:04/02/18 01:11 ID:iR8rAkLp
今話題にしているちらつきはこれのことかな
http://www.google.com/search?num=100&hl=ja&ie=Shift_JIS&newwindow=1&q=%83e%83B%83A%83%8A%83%93%83O%81@%82%BF%82%E7%82%C2%82%AB&lr=lang_ja
ウィンドウモードのときはどうやって対策するんだろ
562名前は開発中のものです。:04/02/18 01:16 ID:mlIMwjc7
COPY_VSYNCとかだと大丈夫じゃなかった?
知らんけど
563名前は開発中のものです。:04/02/18 01:30 ID:GQW0NoGP
俺はVBからVC移行組だけど、しょうじきVCで作ったやつ全部VBで作れる。(速度も含めて)
ていうか、VBの実行速度に不満があるならそれを力技を駆使してなんとかするのが面白いと思うのだが。
その傑作が(仮)だと思うし。俺がVBで初シュー作ったのが(仮)が出た頃とダブルから
そう感じるのかもしれないけど。そのころVBはDirectX使えなかったしな。

まぁ今のすんごいPCならVBとVCの違いって気分でしかないよ。
564名前は開発中のものです。:04/02/18 01:37 ID:4jKMXrlm
VBだとキャラクタの管理とか厳しくないですか?
キャラクタを基礎クラスから継承しまくってるスタイルに慣れきってるためか、
JAVAですら面倒に感じるときがあります。
もう駄目だ_| ̄|○
565名前は開発中のものです。:04/02/18 01:45 ID:nS5UhhtE
JAVAの方が継承とからくだとおもうんだが?
シューティングなんて雑魚キャラとか継承しまくりなのが普通だからな

JAVAもフルスクリーンや解像度変更、VSYNCフリップとか
VRAM直書きとかふつうにあるから
2Dゲームにはまず何の問題もない

200MHzクラスじゃ厳しいが400MHzあればそこそこ問題なしで
600MHzあればだいたい大丈夫
566名前は開発中のものです。:04/02/18 02:13 ID:4jKMXrlm
JAVAだとクラスの多重継承できないですし。
まあインタフェイスクラス使えばいいんですが、
一貫性のある記述のできるC++のほうがどうしても楽に感じてしまうという事で・・・。
567名前は開発中のものです。:04/02/18 03:13 ID:iR8rAkLp
クラスや継承を知ってたほうが楽だが、
まあ知らなくても作れるしな
568名前は開発中のものです。:04/02/18 08:35 ID:IKY1sHtm
そんなこといってると、みんな俺みたいにC言語で開発できなくなるぞ
組み込み系やりたくなくなるから注意しろ!

>>561
ウインドウモードでは無理
と結論した
569名前は開発中のものです。:04/02/18 11:05 ID:MrUrhpIh
>>561
D3DPRESENT_INTERVAL_ONE
570名前は開発中のものです。:04/02/19 17:51 ID:rVP4Zf+G
C++に毒されたのでもうC言語ではつくれないな。。。
遊ぶ側にとってはVBとVCの違いって気分でしかないかもしれないが、
つくる側にとってはぜんぜん違う。
571名前は開発中のものです。:04/02/19 18:10 ID:eD1aS4/9
遊ぶ側にとっては何も違いは無いだろう
572名前は開発中のものです。:04/02/19 23:03 ID:Z9GaHInN
>>571
同意。
その作品が「ゲーム」と名乗る以上、価値基準は「面白いか否か」だからなあ。
使われてる言語がどうこうってのは、語りたい人同士で語ればいいだけのウンチク話になる。

ゲームのように見えるが実は自分のプログラムテクニックを披露したいだけの
環境ソフトなんです、って言うんなら話は別だが。
573名前は開発中のものです。:04/02/20 00:18 ID:kgEsLTmI
ここ製作技術スレですよ。ウンチクを語る場でもあるわけで。
574名前は開発中のものです。:04/02/20 00:47 ID:8icQjslt
いや、中には「VBで作ってるくせにシェアウェアにするなんて生意気だ!」
なんて言い出すグルメもいるわけで(w
575名前は開発中のものです。:04/02/20 00:53 ID:DP7u0NH0
>>574
そういうこと言う奴は作ってる側の人間だろうな。
576名前は開発中のものです。:04/02/20 01:30 ID:MmeSx90A
大体遊ぶ専門の人は、ほとんどがVBとかVCの区別なんてつかないだろ
577名前は開発中のものです。:04/02/20 02:19 ID:DP7u0NH0
つかんだろうね。
そもそも俺も何で書かれてるかなんて興味ない。
578名前は開発中のものです。:04/02/20 02:26 ID:PVTSVkZQ
ttp://www.n2de.com/la/
Flashで弾幕系作ってる奴居るんだな。
ソースも落とせた。
579名前は開発中のものです。:04/02/20 09:36 ID:Cb7T5gGC
作ってる側のコメントとしては、HSPやVBで作ってても
VC++製品を遥かに凌駕する面白さの作品が存在してるね、というくらいしかないな
いまやどんなスタイルでゲーム作っても 60FPS+DirectX を満たせるし
580名前は開発中のものです。:04/02/20 12:34 ID:vOpzoVgj
HSPやVBのすごいシューティングって見たことがないんだけど。

2Dシュー程度ならできることに大差はないとはいえ、
C++プログラマとの技量の差が、そのままゲームの出来にも反映してるように思えてならん。
因果関係ではなく相関関係だけどな。

つーことで、俺の偏見を覆すスゲーシューがあったら教えてたもれ。
581名前は開発中のものです。:04/02/20 13:25 ID:HxDj21bG
VBでも面白ければシェアウェアで良いと思うけど・・・
「VBのくせに生意気」は精神的にガキなんだろ。
プロでそんながヤツ居たらアホ。

でも俺も>>580と同じく
582名前は開発中のものです。:04/02/20 13:37 ID:o3NPSeRg
>>580
月姫の城。面白いかはおいといて、
これをHSPでつくったというのだからすごい。
C++、Delphi等でつくっていたならすごいとは思わなかっただろう。

まあ、VB、HSPは中規模以上のゲーム製作は苦労しそう。
シーンが増えてきたときの管理方法はどうやるの。
全部if、selectでわけるのは面倒では。

あと、VB、HSPでつくっている人って敵の動きからステージデータまで
全部ソースに直書きしている気がする。そのつくり方だといづれ限界が見えてくるよ。
スクリプトデータに分離しようにも、VB、HSPでは字句解析、構文解析を行えないのでは。
583名前は開発中のものです。:04/02/20 14:18 ID:Cb7T5gGC
遊んでて楽しく、長く遊べるのは飛翔鮎、ガンデモニウム、D-Force、D-Force2、
STARSHIP FIGHT、HSPじゃないけどやる気無シューあたりかな。
凝った演出ならサイヴァリアみたいな奴があったな。名前忘れたけど。
相関関係については同意。
因果関係が無いと言いたかっただけだしな。必要条件でも十分条件でもない。
584名前は開発中のものです。:04/02/20 18:33 ID:bdE51Ih6
>>582
テキストファイルから文字型配列変数に読み込んでnotepad命令群とかを使えば
できないことはない。
大きくなるほど管理が大変になるのは直書きと一緒だけど。
585名前は開発中のものです。:04/02/20 19:32 ID:Nf0FYL6h
>>582
HSPでスクリプト動かすように書くと
HSP自体がスクリプト言語だから
スクリプトでスクリプトを動かすという妙なことにならないか?w
586名前は開発中のものです。:04/02/20 19:53 ID:kgEsLTmI
妙でも何でも無いし、必要で有ればそういう手段をとるってだけの話じゃ?
587名前は開発中のものです。:04/02/20 20:10 ID:WwSCKSXX
HSPエンジンがオープンソースでなおかつX11ライセンスのような
配布形態ならば妙な話ではないな。
588名前は開発中のものです。:04/02/21 02:18 ID:kwnqAVPT
メモリノートパッドって、データでかいと無視できないくらい遅くなるから
あまりお勧めできない。
589名前は開発中のものです。:04/02/21 12:45 ID:Am0HK1nP
>>580
 単純にユーザー数の違いだと思うけど。
C++を使っている人が多いから自然と良いゲームも増えるんじゃないかな。
俺の検索が足らないのかもしれないが、Delphiで作られた凄いシューティングって
聞いたことが無い。
 知ってたら誰か教えてくれ。
590名前は開発中のものです。:04/02/21 12:57 ID:O2ehPeIN
>>589
CreatureJungleはDel。
凄いかどうかは知らん。
591名前は開発中のものです。:04/02/21 14:52 ID:ykqZVT4B
初期クドリャフカもDelphiだったはず。CJともども、遊んで面白いゲームだ。
592名前は開発中のものです。:04/02/21 15:32 ID:iCjqKBnT
同人のブルーセイバーズと続編のOOHはLGP製だったな。
とりあえず完成度が高いといえる作品だと思う。
LGP自体マイナーでこの板では評判云々以前みたいだけど。
593名前は開発中のものです。:04/02/21 17:15 ID:1pqPtaxM
OOH、LGPだったのか。あそこまでの作品が作れるなら十分実用言語だな。
BASIC風でなくC言語風だったら今すぐ試してたかも。そのうち試してみるかな…。
594名前は開発中のものです。:04/02/21 18:25 ID:DxMO1ytm
Delphiはネイティブコンパイラだし、C++とポテンシャルは同じ。
単にC++を使っている人が多いだけ。
DelphiはコンパイルがC++とは比較にならないくらい高速だし悪い部分は特にない。
遜色があるのってtempleteがないくらいでは。
595名前は開発中のものです。:04/02/21 18:35 ID:KLosngrU
DelphiやBCBはわるくないんだが
DirectXまわりで多少苦労する

それだけできついと思うか問題ないレベルと感じるか

どっちにしろ言語なんてよほどへぼくないかぎり問題じゃねー
596名前は開発中のものです。:04/02/21 19:29 ID:YV96YjeY
>>592-593
LGPは機能面、パフォーマンスもかなりいいと思うんだけど
コンパイラの安定性に不安面が多い
一時期導入しようと試してたんだけど
コンパイル段階で例外処理出ることが多くて断念した。
その辺りを回避できれば、かなりいいと思うよ
597名前は開発中のものです。:04/02/22 08:15 ID:UXf2Xtar
>>589
既出のとおりDelphiはDirectXとは相性が悪い。
Delphi使えるようなプログラマならたいていC++も使えるから、当然C++を選ぶさ。
598名前は開発中のものです。:04/02/22 11:15 ID:gIVNowfr
プログラムから絵まで一人で作っている人にお尋ねします。

ゲームで使用する『絵』は作業行程の中でいつ描いていますか?

例えば敵を1体作るとき、ゲームで使う絵をしっかりと描いてからプログラムを組んでいますか?
それとも、とりあえず▲○など適当に絵を用意してプログラムを組んでいます?

▲○などの仮絵を使ってプログラムを組んでいた人は、いつゲームで使用する絵を描き始めますか?
敵を1体作ってから?それともゲームをしてある程度できてからですか?

返信お願いします。
599名前は開発中のものです。:04/02/22 11:17 ID:gIVNowfr
× ゲームをしてある程度
○ ゲームとしてある程度

訂正です。
600名前は開発中のものです。:04/02/22 11:31 ID:A5TXuShz
最初は適当な立方体メッシュで作ってました。
グラフィック作り始めるときは気分。プログラムに疲れたらとか。
どうせ使いまわしするのでそんなに量は要りませんでした。
601名前は開発中のものです。:04/02/22 12:12 ID:iUNPZJjU
自機と敵弾はかなり早い段階で用意しておいたほうがやる気が湧くなぁ。
あとは逐次敵移動パターンを考えた後でデザイン、又は敵をデザインした後、
その形から連想させる移動パターンをインプリメント。
602598:04/02/22 12:52 ID:OsecqzJh
うほ。返信ありがとう。

そうか、自機だけでも用意しておこうかな。
だけど、絵を描き始めると、描いては消しての繰り返しで全然進まない。

絵が描けない人は、下手でも割り切った方がいいのかな。
603名前は開発中のものです。:04/02/22 13:16 ID:a95QltEK
私は絵は先に用意します。
絵に時間がかかるので、先にやらないとプログラムに触らない期間が長くなって
忘れてしまいそうなので…w。
604名前は開発中のものです。:04/02/22 13:25 ID:xiIMmH/I
適当にやってる。
モデリングする気分だったらモデリングして、
プログラムする気分だったらプログラムという感じに。
605名前は開発中のものです。:04/02/22 16:10 ID:3LI3E3r3
>>602
絵は事前に用意できる限り用意しといたほうがいいと思うなぁ。イメージを固めやすい。
ただ、いずれにせよ後から手を加えることになるのは確実なので
なるべく後付けできるようにしておく準備は必要。
下手でも割り切ったほうがいいというか、割り切らないと完成はしないと思う。
606名前は開発中のものです。:04/02/22 17:03 ID:a95QltEK
絵が上手いとか下手とか関係なく割り切りは必要だと思う
607名前は開発中のものです。:04/02/23 10:40 ID:HEpYBJBc
おもろけりゃABAさんとこみたいなのや、爆烈矩形弾みたいなのでも可。
608名前は開発中のものです。:04/02/23 14:00 ID:MrwURP+q
時間によって変化する敵の動作ルーチンを上手く書けないよ…
動きパターン分全て関数書くのマンドクセ
609名前は開発中のものです。:04/02/23 14:21 ID:o9BQJ8wG
ハードコーディングで敵キャラ書く場合、
int mode;
int time;
switch
キーワードはこの3つ。
これだけ分かってて上手く書けないと言っているなら、
そうなるとスクリプトでも実装するくらいしかないかな。

2Dシューティング製作で一番時間食うのは敵キャラの行動の実装だと思う
610名前は開発中のものです。:04/02/23 14:27 ID:DXbHT5w2
敵キャラ行動はツール使っちゃってるからそんなにはかからないなー。
やっぱ絵に時間かかる。
611名前は開発中のものです。:04/02/23 15:17 ID:1+DXVBhl
動きパターンが増えたり、キャラの種類が増えたりすると、なかなか大変だよな。

このスレで紹介されているページのいくつかに、
ハードコーディングによる敵動作ルーチンがあったはず。
見やすく、それでいてマンドクサくならない記述の参考になるかも知れない。
612名前は開発中のものです。:04/02/23 16:30 ID:NkVvf1OH
現在画像の回転のアルゴリズムでつまっています。
正攻法でやると回転後の画像に穴があくので、
逆の、ここの画素は、あそこからのものだ。
という方法で考えています。
ですが、この逆に導けばいいと分かったまではいいのですが、
どうやって導けばいいのか、式、法則が分かりません。
アドバイスいただけないでしょうか?
613名前は開発中のものです。:04/02/23 16:36 ID:o9BQJ8wG
その回転行列の逆行列を使えば元の画像の位置が分かります。
画像の位置を割り出したら、最近傍点か、近傍4点の線形補完から色を取得しましょう。
D3DFILTER_POINTとかLINEARとかと同じことです。
つまりその考え方って3Dなんかでポリゴン描画するときと一緒なんですね。
614名前は開発中のものです。:04/02/23 16:38 ID:G/WXJT+1
615名前は開発中のものです。:04/02/23 16:56 ID:NkVvf1OH
>>614
途中の式が知りたいのです。
なぜ、この式になったのかどうかです。
わがままですいません。
行列は習ってないのです・・・
616名前は開発中のものです。:04/02/23 16:58 ID:U2ZcXvkN
>>612
アフィン変換
617名前は開発中のものです。:04/02/23 17:04 ID:G/WXJT+1
618名前は開発中のものです。:04/02/23 17:08 ID:o9BQJ8wG
行列習ってないってことなら方程式で説明ね。
ソースからディスティネーションを求める式は知ってるようですが
dest_x = cos(a)*src_x + sin(b)*src_y
dest_y = -sin(a)*src_x + cos(b)*src_y
この連立方程式をsrc_xとsrc_yについて解けばよいのです。
そうすればdest_xとdest_yからsrc_xとsrc_yが求まります。

逆行列を求めるってのはそれと同じ話です。
式の見た目が変わっても所詮行列なんて同じことやってますので。
619名前は開発中のものです。:04/02/23 17:17 ID:NkVvf1OH
数学の基礎からやり直します。
ありがとうございました。
620名前は開発中のものです。:04/02/23 20:14 ID:tv/X8gcU
ここは勉強になるインターネットですね。
今まで調べ方がヘタでわかんなかったんだけど、>>613-618でわかった気がします。
621名前は開発中のものです。:04/02/24 12:07 ID:qzSu5niu
転送元→角度a回転→転送先,が分かるなら。
転送先→角度-a回転→転送元,で分かるハズ。
622名前は開発中のものです。:04/02/24 18:24 ID:cyEpjmsz
ゲームプログラミング練習長を買いました。

この本でのキャラクタの描き方は、for文で透過部分以外の色を
(背景をコピーしたバックバッファの)アドレスに書き写すというやり方なのですが、これって普通ですか?

バックバッファをDCで持ってBitBltのANDとXOR(だっけ)でやるのが一般的&簡単だと思ってたのですが。
623612:04/02/24 18:29 ID:NPJ634Xn
おかげさまで無事回転させることに成功しました。
今ではなんでも回ってます。
今の僕に回せないものはありません。
どうもありがとうございました。
624612:04/02/24 18:56 ID:NPJ634Xn
>>622
>バックバッファをDCで持って
というのが何を意味するかわかりませんが、
ゲームには画面の書き換えが必要です。
画面の書き換えには時間が必要です。
この書き換えの時間が長いと、描いている途中の画像がユーザーに見えてしまって、
気持ちよくありません。
ホラーゲームなどで、「わっ」とおどろかせるところで、途中の書き換えている
シーンが見えてしまってはだいなしです。

なので、たいていのゲームでは、いったん裏の画面に次の画面を
すべて描き込んでから、あたかも切り替えているかのように、
表の画面に一気にコピーします。
まとめていっかつコピーの方が処理が早いので、このやり方が
よく使われています。

また、別の理由でもこのいったん別に裏の画像をつくって
ここで、絵の具を混ぜるかのように、コネコネして・・・という利用方法もあります。
まだ、納得できないのであれば、ご自身のやり方でやっていけば
よいかと思います。

普通かどうかは知りません。基準がありません。
625名前は開発中のものです。:04/02/24 19:17 ID:VF0olofu
>バックバッファをDCで持って
CreateCompatibleDCと、
CreateCompatibleBitmapの事じゃね?

つーか普通の画面だから何してもいいと思うぞ、俺は。
まぁ、初心者にとっては未開の領域だがな。
626名前は開発中のものです。:04/02/24 19:55 ID:Sqqk0eCG
>今の僕に回せないものはありません。
>どうもありがとうございました。
良い奴だなw
627名前は開発中のものです。:04/02/24 19:59 ID:Ahp8G2S4
>>623
ワロタ

>>622
(;´Д`)そりゃ大分古いやり方だねぇ…>XOR&AND
確かに高速っちゃ高速なんですが今はαブレンディングの時代です。
628名前は開発中のものです。:04/02/24 20:33 ID:R5i+m3eH
そこでDirectX Graphics使おうぜとなるわけですよ。
629名前は開発中のものです。:04/02/24 20:43 ID:loBiLg69
いつもより多く廻しております。
630名前は開発中のものです。:04/02/24 23:00 ID:pYHD2VUT
では一休、そこな屏風に描かれた虎をば回してみせよ
631名前は開発中のものです。:04/02/24 23:09 ID:QzqFx48f
まずは虎を追い出してください、その脳内から
632名前は開発中のものです。:04/02/25 00:29 ID:2natJd+B
すごい男がいたもんだ。
633名前は開発中のものです。:04/02/25 00:32 ID:4JmPJQga
ワラタ
634ぴろきし:04/02/26 17:08 ID:0qzzCbkV
おい、いまトラでてるぞ!はやくまわせ!
635名前は開発中のものです。:04/02/27 00:38 ID:BUcvZ4ig
ひっぱりすぎだってw
636名前は開発中のものです。:04/02/29 14:40 ID:uyqQHmrJ
スレが止まった?
637名前は開発中のものです。:04/02/29 14:58 ID:qWPtuZdT
ネタが無ければどうしようもないからな

あげてみるか
638名前は開発中のものです。:04/03/01 00:18 ID:AscDXZhd
   ___        __/
  /    /\     / _/\      ___
/ ̄ ̄ ̄\/|   /| ̄ .\/|    /    /\
       |  |   |/\__.|/  /| ̄ ̄ ̄\/| 
  / ̄ ̄~|/|   \/_/    | |____|/ 
./| ̄ ̄ ̄.|  |.      ̄/__    |/     / 
|  |     |  |   /フ ̄/\   | ̄| ̄ ̄ ̄ 
|/\   .|  |  /| ̄ ̄ ̄\/|  |/\ 
\/ ̄ ̄~|/|  |/\    ___|/  \  \   __ 
   ̄ ̄ ̄~|/  \/ ̄ ̄/      \/ ̄ ̄ /
              ̄ ̄ ̄          ̄ ̄ ̄ 
           (⊃)     (⊃)
     ∧_∧  / / ∧_∧  / /
    ( ´_ゝ`)./ / (  ´_>`)./ /
    ./     /  /     / 
   /   / ̄ ̄ ̄ ̄/   / 
__(__ニつ/   age.  /____|__
    \/____/
639 ネタが無い:04/03/01 15:31 ID:4aChjl+7

で、結局ここにいるほとんどの香具師は、大往生目指してるのかね?
640名前は開発中のものです。:04/03/01 15:39 ID:y6lrx97D
いえ、全然。まあ夏コミを見てろって。
641名前は開発中のものです。:04/03/01 16:23 ID:ynCb/iqn
>>639
あれの何を目指すの?
642名前は開発中のものです。:04/03/01 16:34 ID:AscDXZhd
大往生は好きだけど
目指してはいない
643名前は開発中のものです。:04/03/01 17:10 ID:4aChjl+7
>>641
計算された、美しくも凶悪な数多の弾幕。
644名前は開発中のものです。:04/03/01 17:15 ID:SkeJyEEE
このさきには
暴力的で
鬼のような
コーディングが
あなたを待っています。

そ れ で も 作りますか?
645名前は開発中のものです。:04/03/01 17:17 ID:ynCb/iqn
>>643
クリアにリアリティを感じないw
無駄にやる気がうせるw
要素しかないと思うのですがどうでしょうか。
646名前は開発中のものです。:04/03/01 17:22 ID:AscDXZhd
1周目はそうでもないし、俺は1周しか出来ないが面白いよ。
647名前は開発中のものです。:04/03/01 17:38 ID:9GjqQG3u
大往生のキャッチーでない点を改良したいと思うことはあるな
これの面白さがわかるくらいの腕前にプレイヤーの意識の底上げをはかるような
シューティングは目標の一つだが、難しいね

で、実は>>1を読むとわかるが、スレ違い。>>639は死ぬがよい
648名前は開発中のものです。:04/03/01 19:10 ID:c5LZvNHg
別にスレ違いじゃないが。
元々プログラミング技術ネタだけのスレではない
649名前は開発中のものです。:04/03/01 19:18 ID:CIsWoPFf
単に機転利かせて死にかけてたスレにネタ投入したのでは。

ちなみに、うちのは敵味方16人のキャラが過去の
650名前は開発中のものです。:04/03/01 21:03 ID:waHxpDlO
>>649
しんだか?
651名前は開発中のものです。:04/03/01 22:14 ID:uapoU+9s
このスレの住人、結構現在進行中のプロジェクト持ってんだな
652名前は開発中のものです。:04/03/02 04:54 ID:yqAin6hD
永遠に進行中のプロジェクトばかりです
653名前は開発中のものです。:04/03/03 20:17 ID:80+x+sMk
製作者様、携帯アプリ版にて活躍してください
654名前は開発中のものです。:04/03/03 20:56 ID:Fu+gGh9z
>>653
相手にされないからって関係ないスレまで来んなと。
655名前は開発中のものです。:04/03/08 23:34 ID:pHSecGCw
このスレ死んだのか?
656名前は開発中のものです。:04/03/08 23:48 ID:jyC2X44L
ネタが無いだけでしょage
657名前は開発中のものです。:04/03/09 22:03 ID:RnEMQBDT
円と線分の当たり判定ってどうやってとってる?
658名前は開発中のものです。:04/03/09 23:14 ID:PD/7PAPd
四角の当たり判定を複数置いてごまかしてる
659名前は開発中のものです。:04/03/09 23:18 ID:UV8BsELg
円の中心を線分に垂直に落とせばいいんじゃないの
660名前は開発中のものです。:04/03/10 03:55 ID:/zacbJ53
円の中心点と線の最短距離を求めて、円の半径と比較すればOKだな
俺も面倒だから当たり判定複数置いちゃうけど。
661名前は開発中のものです。:04/03/10 04:31 ID:ch20m1TO
・円Cが点Aと点Bを含む→交差しない
・円Cが点A、又はBのどちらか片方のみを含む→交差する
・円Cが点Aと点Bを含まない→垂線の足を求めて垂線の足が線分上にあるかどうかチェック

これをチェック。最後の奴だけど、
垂線の足をh、パラメータtとすると、h = a + t*(b-a)
(b-a)・(h-c) = (b-a)・(a + t*(b-a) - c) = 0
tについて解くと t = (b-a)・(c-a) / |b-a|^2
ここで0<t<1なら垂線の足が線分AB上にあることになる。
|b-a|^2を不等式に持ってくれば割り算が1個減るかな。

こんなもんかな? 間違ってたら修正よろしく…眠くてもうだめ(´・ω・`)
662名前は開発中のものです。:04/03/10 04:33 ID:ch20m1TO
ごめん追記(´・ω・`)
垂線の足が線分上にあるかチェックして、
更に直線との距離が半径r以内でないといけませんね(´・ω・`)
663名前は開発中のものです。:04/03/14 18:50 ID:UHsOUMif
縦シュー作っている人に質問!

自分は画面の大きさは352×416で
タイトルも、ゲーム中も同じ大きさです。

皆さんは画面の大きさはどのくらいですか?
東方のようにタイトルは画面一杯に使って、
ゲーム中だけ、縦長にしてますか?
664名前は開発中のものです。:04/03/14 19:01 ID:eNoVoUMR
今作ってるんだけど、個人的にはアーケードをPCに移植した感じに
したいので縦長画面の中ですべてやりたいなあ。
665名前は開発中のものです。:04/03/15 02:26 ID:zjdBMyyS
縦長にしようかなとも思ったけど結局全画面。
まだ完成には遠いけどね
666名前は開発中のものです。:04/03/15 09:20 ID:YvkBb34B
タイトルは640×480の全画面
ゲーム中は320×480のゲーム画面をセンタリング
両脇に各種ステータスでやってます
667名前は開発中のものです。:04/03/15 13:21 ID:DBPbealS
ウチは縦横比4:3(3:4)にこだわりたいから640×480の画面内に360×480を表示領域として使ってるよ。
668名前は開発中のものです。:04/03/15 13:24 ID:HtEH2iL6
縦長にすると意外と見にくいんだよな
480*480など1:1に一票

これなら縦画面でも横画面でも(ry
669名前は開発中のものです。:04/03/15 13:26 ID:43PM+emf
私も667氏と一緒ですね。
670名前は開発中のものです。:04/03/15 16:19 ID:do65pldz
うちは320×240+横スクロール
スタソルの影響が大きいな...
671名前は開発中のものです。:04/03/15 19:31 ID:YiWxi1G9
640x480で400x480で両脇に各種ステータス。
ABA Gamesさんところ、ちょっと縦長すぎるかなあ、なんて思ったりしてね。
結局やる気なシューとサイズ同じってことで。
672663:04/03/16 00:18 ID:9G1lxB1c
皆さんありがとうございます。参考になりました。
673663:04/03/16 00:20 ID:9G1lxB1c
もう一つ質問いいですか?

自機の絵サイズはどれくらいですか?
自分は32×32です。画面サイズ352×416で、自機が32×32だと
やっぱり小さいでしょうか?
674名前は開発中のものです。:04/03/16 00:30 ID:Sp2WMbU0
数値だけ言われても判断しづらいなあ。。。
675名前は開発中のものです。:04/03/16 01:02 ID:hXlklgri
弾速とかそーいうのにも依るからそこまではなんとも言えんな。
676名前は開発中のものです。:04/03/16 07:42 ID:gL0QadPJ
うおおおおおお!
やっとスクロールできるようになった。
苦闘8時間。。。

やった!おれは勝った!
677名前は開発中のものです。:04/03/16 10:09 ID:8zXVVqQP
>>663
自分が好きなゲームや世間で評判の良いゲームを構造解析したら良いんでない?
画面の端から端まで移動するのに何秒とか,画面全体と自機の大きさの比率とか。
別に実行ファイルをクラックしろってんじゃ無くて,スナップショット撮ったり,ストップウォッチ片手にカチカチやったり。
そういうのはパクリでもなんでもないと思うけど。
678名前は開発中のものです。:04/03/16 12:54 ID:LYMTIPWV
>>663
基本的に360×480だけど、
解像度可変かつ90度回転なんかも可能なように作っておこうかなあと思ってたり。
679名前は開発中のものです。:04/03/16 16:37 ID:7stYpxMs
Win32で弾のうごかしかたをおしえてください!!
680名前は開発中のものです。:04/03/16 16:42 ID:8zXVVqQP
>>679
スゲェな。
あー、春休みか。
681名前は開発中のものです。:04/03/16 16:42 ID:4c+iQVtt
内部座標を動かすのは別にwin32関係ない
682ぁきまさ:04/03/16 22:00 ID:slDWxodP
現在STGをつくってるわけですが、
おもしろいステージを作るのに、
何か、コツとか定説とかそういったものはありますか?
どうも「おもしろい」という感覚が漠然としすぎていて、
どんな風にステージ設計したらおもしろいかなぁと思っています。

一応自分のSTGのコンセプトは
・展示用
・へぼな俺の練習用
・正しい道筋を考えよう
です。

ご教授キボンヌ。
683名前は開発中のものです。:04/03/16 22:44 ID:4c+iQVtt
基本は左右に振らせる敵の配置かなぁ

道中で低速の弾幕やると萎えるから気をつけろとか
とくにこれは同人で多いんだけどボス戦メインで
道中が適当になってるのが多い

ま、自分がやっておもしろかったSTGを研究してみては?
684名前は開発中のものです。:04/03/16 23:10 ID:na3RWLZh
>>682
[アーケード板] 【初心者】シューティング生き残り大作戦4【歓迎】
http://game4.2ch.net/test/read.cgi/arc/1077284339/
保管所
http://www.geocities.co.jp/Technopolis-Jupiter/2329/

この辺のアイディアを取り込んでみてください。
685名前は開発中のものです。:04/03/16 23:12 ID:Jdp6Sdkp
>>682
実際にシューティングに触れてみたことはある?
トランスを作曲するために様々なジャンルの曲を聴いたりするのと同様な話。
実際の作成段階になったら、独り善がりの弾幕を作らないように、
自機の動きを最優先にして敵や弾幕を作っていくことかな。
686ぁきまさ:04/03/17 00:37 ID:Wg8a2bZ6
>>683
参考になります。
>ま、自分がやっておもしろかったSTGを研究してみては?
これがなかなか難しくて…。

>>684
うほっ。
http://www.geocities.co.jp/Technopolis-Jupiter/2329/haseizu.htm
なんかは最高ですね。
是非取り入れたいと思います。

>>685
STGの経験値が足りないなぁと実感しています。
そもそも、STG本格的に始めたの最近なんですねぇ…。下手だし。
>自機の動きを最優先にして敵や弾幕を作っていくことかな。
これも難しいですね…。

一度HTMLにでもレポートを書いてみるのもいいかなぁと思い始めました。
意見もらえそうですし。
687ぁきまさ:04/03/17 01:38 ID:Wg8a2bZ6
http://akimasa.s54.xrea.com/texts/030317.html
とまぁ恥を覚悟でとりあえず公開してみるテスト。
僕の経験と考察の浅さが如実に表れている文章です。(w
経験豊かな皆さんからのアドバイスを心待ちにしています…。
688名前は開発中のものです。:04/03/17 05:01 ID:DBviHj3f
>>687
サイト見させてもらいました。
とりあえずSTG初心者の方と判断しました(違っていたら失礼。その場合下記のこともたぶん的外れなんで読み飛ばしてください)
解法とかあってると思います。
ただ、つまらないと思った瞬間のうち、「道がふさがった瞬間」ってのはちょい否定です

大抵のSTGの弾幕はよく考えられていて、弾の打たせる位置をある程度誘導させることによって
回避しやすい弾幕になったりします。
#めちゃくちゃな難易度の怒首領蜂大往生ですら全国トップランクはノーミスノーボムで2周クリアしてしまうそうです
#自分には無理ですが

そういうのを見つけることはSTGの醍醐味の一つです
(面白いと思った瞬間のうち、「楽に勧める道を見つけた瞬間」に当てはまります)
弾の誘導の仕方等を完全に覚えて(これをパターン化といいます)効率よく敵を倒す手段を見つけるような
シューティングゲームも楽しいものですよ

なお、弾幕の考え方としてここらへんのページとかいいかも
http://www.h5.dion.ne.jp/~tamainu/danmaku.htm 弾幕美に関する話
http://www2.ttcn.ne.jp/~inu/kiso/kaisetu.html 弾幕の回避基礎
http://hossy.info/game/toho/g_theory1.php こちらも弾幕回避の話(東方妖々夢の内容も出ていますがそれは飛ばしてください)

波足が弾幕シューに偏りました、ごめんなさい
          ノつ
   ノつ   / / ∧_∧
 / / ∧_∧く (  ´_>`) このAA謝ってるように見えないって。
 | く ( ´_ゝ`)  ̄    \   そもそもAA使うなよ兄者
 \  ̄    \`7   と.二 )
   7  と./ ̄ ̄ ̄ ̄/ |
   / _ /  FMV /__|__
   ̄ ̄\/____/
689名前は開発中のものです。:04/03/17 05:02 ID:DBviHj3f
波足ってなんだよ・・・話ですorz
690名前は開発中のものです。:04/03/17 05:27 ID:GdptKEsE
>#めちゃくちゃな難易度の怒首領蜂大往生ですら全国トップランクはノーミスノーボムで2周クリアしてしまうそうです
念のためこれだけは言わせてくれ、それは流石に居ない(w
ノーミスノーボムで2-5ボスに突入した例はPS2版の付属DVDがソレだな。
691名前は開発中のものです。:04/03/17 05:44 ID:DBviHj3f
>>690
あ、確かに。2-5までだった、スマソ
ここ見て記憶違いしてた
http://www.famitsu.com/game/serial/2003/02/19/364,1045621048,10840,0,0.html
692名前は開発中のものです。:04/03/17 07:43 ID:pgzvTr9I
>>687
流行に乗るなら弾幕系かもしれんが
あれはSTG本来のおもしろさじゃない気がする

スターソルジャーやスターフォースあたりやってごらん
考えなきゃおもしろくないってことはないはずだ
693名前は開発中のものです。:04/03/17 08:14 ID:KyNTI0yp
>>692
禿同
STG=弾幕というステロタイプは捨てたほうがいいよな。
国内のゲームより、むしろ、ゼビウスやギャラクシアンを模した海外のミニゲームなどの方がよほどSTGの味がする。
694名前は開発中のものです。:04/03/17 10:17 ID:CweOeRej
>>687
こんなものどーぞ。
ttp://www008.upp.so-net.ne.jp/zaruo/zaru/backnumber/nyuumon/index.html

サイト見て、漏れが思ったこと書いておくよ
「ムカツク」ってのを否定しているようだけど、ムカつかないシューティングは
それはそれでヌルくなると思う。プレーヤーを殺してムカつかせた上で、
解法のヒントがそれとなく分かるっていう敵や弾幕が必要。
で、それだけだとプレーヤーが緊張しつづけてしまうので、
簡単な部分(更に稼ごうと思えば稼げる部分)を挟み込む。

個人的に、SFCグラディウス3を推す。
PCフリーなら超連射を参考にしてみると良さげ
695名前は開発中のものです。:04/03/17 11:17 ID:9r9bTwDj
そもそも弾幕といってもケイブのと東方のではだいぶ違うだろう。
696ぁきまさ:04/03/17 12:13 ID:Wg8a2bZ6
>>688
ええ。超初心者です。
道が塞がる。ってのと解法ってのは相反する要素だなぁとか思いながら書いていました。
きっと、自分が正しい解法が見つかってない証拠だと思います。
>ノーミスノーボムで2-5ボスに突入した例はPS2版の付属DVDがソレだな。
…。
これくらいうまく作れたらいいですね。(これくらいうまくプレイできたらなぁ

>>692-693
>スターソルジャーやスターフォースあたりやってごらん
>国内のゲームより、むしろ、ゼビウスやギャラクシアンを模した海外のミニゲームなどの方がよほどSTGの味がする。
これがなかなか、難しいかな。と思っています。
一応コンセプトが
・展示用(やっぱり見栄えがしないと…
・練習用(なんだかんだで、世の中の流れは未だ弾幕シュー
いや、僕は弾幕とそれらの作品の間くらいのが好きなんですけどね。
超連射とか、そんな感じです。
けっこうバランスが難しいかなぁと。

>>694
うほっ。良いサイト。
それとなくわからせる…ってのが難しいですね。きっと…。

>>696
僕はケイブ系?がいいなぁと思っています。
東方は、ストレスがたまったので。(なんかずっとちまちまよけているのが、なんだかなぁと言う感じで


無視されるかと思いましたが、
春厨に反応していただき感謝です。
自分の作りたいSTGの形が見えてきた…かもです。
697名前は開発中のものです。:04/03/17 13:14 ID:GYMIDQMJ
遊ぶ側やSTGの歴史研究家なら「ケイブ系」「東方系」「ミニゲーム系」って分け方に意味があるんだろうけど,
作る側として考えるなら,「客にどういう快感(やストレス)を提供するか」ってのが先に来るべきなんじゃない?
作りたいのか遊んでもらいたいのかでもズイブン違うとは思うけど。
技術論じゃなくてすまん。
698名前は開発中のものです。:04/03/17 13:19 ID:GdptKEsE
ケイブシューの面白さはスターソルジャーの面白さとは違うと思うが、
だからといってSTG本来の面白さではないと否定することはできんな。
両方STGなんだから。昔のSTG=本来のSTGという固定概念こそが変だな。

って書いてたら>>697に先を越されてしまったようです。w
699名前は開発中のものです。:04/03/17 15:28 ID:KyNTI0yp
>>696
見に来る層にもよるけど、展示用なら最低限それがゲームであることを認識できるような
内容である必要があるかも。
ヘタするとリプレイが単に花火のスクリーンセーバーと勘違いされるとおもわれ。

学校とかでデモるのだったら19シリーズとかソニックシリーズのようなパッと見で内容が
分かるようなのがいい
700ぁきまさ:04/03/18 00:47 ID:3ZO+Iins
う…ソースコードが…。

がんばろう。
701名前は開発中のものです。:04/03/18 21:45 ID:1VCDa0la
>>700

頑張れ。僕もがんばる・・・。
702名前は開発中のものです。:04/03/19 15:03 ID:JeQSPjbL
>スターソルジャーやスターフォースあたりやってごらん
スターフォースはいいよなー。
俺はシューティングの教科書だと思ってるYO!
703名前は開発中のものです。:04/03/20 02:13 ID:JL0XtT8m
すいません。
スクランブル、ゼビウスから始まって昨今はボーダーダウン、斑鳩が好きなアホなんですが
winに出来のいいシューティングツクールみたいなソフトありませんか?
シューティングツクールより自由度が高くて、細かい設定が可能なもの。

そんな細かく作りたいんならプログラム書けってことになるんでしょうか?
アホでもわかるように教えてください。
すいません。
704名前は開発中のものです。:04/03/20 02:30 ID:lRpgfwoH
残念ながらそこまでいくと自分でプログラム書くしかなさそう
705名前は開発中のものです。:04/03/20 02:49 ID:SCaH3wEx
HSPあたりを使ったほうが良いんじゃないの
706名前は開発中のものです。:04/03/20 08:37 ID:9xJPO8fQ
>>703
シューティングツクールで無理なら言語しかなかろう
プログラムそのものは比較的やさしい部類(プログラムよりもバランスとりの比重が圧倒的にでかい)だから、
プログラム入門にもちょうどよいと思うけど
707名前は開発中のものです。:04/03/20 15:12 ID:VEy63RmA
サンプルソースや創り方そのものを公開しているサイトを見て、
少しづつ理解していくのがいいと思う。

自分でプログラム組んで完成したときの達成感は
シューティングツクールの比ではないはず。
がんがれ。
708名前は開発中のものです。:04/03/20 15:28 ID:peTCBX1V
>>703さんがゲームデザインをしたいのかゲームプログラミングをしたいのか
よくわからない状況でプログラミングしろというのは気が早いような。
709ぁきまさ:04/03/20 20:28 ID:oxKPH9LC
ゲームデザインをする人も、趣味でやる限りは多少でもプログラミングはできないとだめだと思うのですが…。
フリーで(GPLとか)公開されているSTGを改造するってのはどうでしょうか?
710名前は開発中のものです。:04/03/21 01:51 ID:HC8r3/Px
おお!みなさまお答えありがとう。

デザインもプログラムも全部やりたいです。
効果音や音楽も。

やはり、何か見本となるゲームのソースをいじって遊ぶあたりから
はじめるのが手っ取り早いのかなあ?と思います。

でも昨今はゲームに限らずソースを公開してるプログラムって
いざ探すとなかなかありませんね・・・
勉強用のおすすめソースはありますか?

あとHSPってよさげですね・・・これから解説読んでみます
711ぁきまさ:04/03/21 02:20 ID:JaF31gly
自分のでよければ、
多少形になり次第公開するつもりでいます。(C++ & SDLです)
かなり富豪的プログラミングしてますが。
712ぁきまさ:04/03/21 14:37 ID:JaF31gly
http://www.asahi-net.or.jp/~cs8k-cyu/
http://homepage2.nifty.com/isshiki/

今思ったら、もっと良いものがある罠。
713名前は開発中のものです。:04/03/21 16:05 ID:lBIVIhzW
えー、ここでなるたけ多くの要望をかなえられるSTGツクールの構成について議論するという方向性は?
とかいいつつ、アイデア無しです。ごめんなさい。
714名前は開発中のものです。:04/03/21 19:14 ID:C7dp1V6Q
>>713
VC + STL + DirectX or VC単品。
715ぁきまさ:04/03/21 19:42 ID:JaF31gly
Cygwin(g++) + STL + SDL
色々いじろう思ったら、
結局はソースコードをいじらなきゃだめじゃないでしょうか。
と、プログラミングを一押し。
716名前は開発中のものです。:04/03/21 21:36 ID:ycj/vjtb
boostも追加してくれ。
717名前は開発中のものです。:04/03/21 22:26 ID:c+KEl+hd
>>713

Java2SE
718名前は開発中のものです。:04/03/22 00:27 ID:TAjuSKmH
BCC+DirectX
特殊なことを実装しようとするとツクールなんぞとたんに役にたたんので自分で作るのが一番
STL?イラネ
719名前は開発中のものです。:04/03/22 00:32 ID:EP1mY8gt
で、データ駆動的に作ってくとだんだんツクールっぽくなってくる罠?
ゲームシステムをスクリプトで作りこめるようにしとけばいいんかな?
とか、適当妄想。
720名前は開発中のものです。:04/03/22 08:13 ID:TAjuSKmH
>>719
データ自体は大体の人がスクリプト(orそれに類するもの)で組んでると思う
(違う、って人もいるだろうしスクリプト組まないほうが楽なシステムもあるだろうから一概には言えないけど)
だから、無理をすれば公開できないこともないです

けど、ツクールみたいな形で公開するにはドキュメント整備とかも必要になってくるため
面倒でやりたくありません、というのが俺の理由

特殊なシステムをスクリプトで作りこめるようにするってのはやりたくないし正直向かないと思う
プログラマの想定範囲外のシステムは作れないためそれ以上のことは結局自分で作れ、となります

結局何を言いたいかというと、「面倒なことはやりたくない」。以上
721名前は開発中のものです。:04/03/22 12:48 ID:V4/7rlW1
こんなの考えてみた

「2画面でプレイヤー1と2が別れているゲーム」

たぶん既出だと思うが・・・・・・
722名前は開発中のものです。:04/03/22 13:37 ID:XkIk/S2G
ティンクルスタースプライツ
723名前は開発中のものです。:04/03/22 13:40 ID:wDDACP1m
あ、そういう意味なの?
724名前は開発中のものです。:04/03/22 14:51 ID:jdKLGa+4
>>714
呼んだ?
725名前は開発中のものです。:04/03/22 15:42 ID:HL0jReaT

1画面でプレイヤー1と2が別れているゲーム
726名前は開発中のものです。:04/03/22 15:56 ID:XkIk/S2G
クォース
727名前は開発中のものです。:04/03/22 19:37 ID:8sNimvTV
クォースは斬新だったな.

と言うわけで,敵をショットで撃つ以外のシューティングはどうだろ.
例えば… 敵を掴んで投げる とか?

ありきたりだなぁ.
728名前は開発中のものです。:04/03/22 21:01 ID:cuGw5xyJ
>>727
ゼロウィング
729名前は開発中のものです。:04/03/22 21:12 ID:wDDACP1m
プリゾナービームか…
730名前は開発中のものです。:04/03/22 23:55 ID:TAjuSKmH
3人同時プレイとかやればたぶん斬新だぞ!





・・・超兄貴のアレはオプションだけなのでなしの方向で
731名前は開発中のものです。:04/03/22 23:59 ID:pZsYb4gS
ツインビーのどれかに3人PLAYのがなかったっけ。
三体で手を繋ぐと凄いビームが出るやつ。
732名前は開発中のものです。:04/03/23 00:03 ID:4auKbf0z
ガントレットは全方向スクロール4人プレイシューティング?
733名前は開発中のものです。:04/03/23 00:09 ID:XZPWL6hS
1画面3人同時プレイシューといったらターボフォースと戦場の狼2くらいしか浮かばないな
734名前は開発中のものです。:04/03/23 00:19 ID:JCV/36ob
しまった、無知さらけ出した!

・・・ガントレットはシューティングに含まれるのか・・・
735名前は開発中のものです。:04/03/23 00:33 ID:4XTiZYmH
>>731
3100円の縦横スクロールのやつ
736名前は開発中のものです。:04/03/23 00:47 ID:sWb7hHws
ターボフォースって3人同時できたんか
737名前は開発中のものです。:04/03/23 01:07 ID:yvvzZFdo
無敵の追尾弾が自機を襲ってくるが、敵にも当たり判定があるので
うまく誘導してやると敵を倒せるとかいうのは?

・・・ちょっとうっとぉしそうだな
738名前は開発中のものです。:04/03/23 02:14 ID:KKfaOFdI
>>735
500円で書き換えできるやつ
739名前は開発中のものです。:04/03/23 02:15 ID:BhCx5UPU
紫炎龍エクスプロージョンの何面かのボスで出来たなそれ。
一発ネタとしては笑えるが。
740名前は開発中のものです。:04/03/23 11:53 ID:xh/YDmV8
>>737 ゲーメストの読者募集ゲーム欄で(「はねたまご」だったっけ?)で
そういうのがあったような気がする。追尾弾じゃなくてムカデ風多関節
キャラが追ってくるんだけど。
741名前は開発中のものです。:04/03/23 12:59 ID:OZ6IBTKJ
セガの四人同時横シューってのがあったな。ガントレット筐体っぽいの使ったやつ。
多分アメリカ向けに開発されたんだろうけど、コインを入れれば入れるほど強くなっていくというキャッチが胡散臭かった。

いい加減スレ違いか。スマソ
742名前は開発中のものです。:04/03/23 13:41 ID:sWb7hHws
カルテットかな
743名前は開発中のものです。:04/03/23 18:22 ID:T0rKykAR
あんま関係ないんだけどさ,Playerをカタカナで書くときって,プレーヤー?それとも,プレイヤー?
個人的にはプレイヤーなんだけど。
744名前は開発中のものです。:04/03/23 20:14 ID:VCuh+zAQ
lapislazuli欲しいのですがどこかに落ちてるのでしょうか?みつかんねぇ・・・('・ω・`)
745名前は開発中のものです。:04/03/23 23:56 ID:zAiZ7POU
>743
googleに聞いたら
全言語のページから+プレイヤーを検索しました。 約1,270,000件
全言語のページから+プレーヤーを検索しました。 約1,380,000件

・・・わりかし互角。 個人的には「プレイヤー」だな。
746名前は開発中のものです。:04/03/24 12:53 ID:NNAX2SXt
JIS的にはプレーヤかな?
747名前は開発中のものです。:04/03/24 15:21 ID:gbUu0OBo
俺はゲームのPlayerは「プレイヤー」 再生機のPlayerは「プレーヤ」と言ってる・・・・
748名前は開発中のものです。:04/03/24 15:50 ID:GLxppiU4
以前どっかのゲームでは「プレーアー」って書いてあったのを思い出して爆笑した。
749743:04/03/24 17:04 ID:Gdeh1Zkj
Config画面の表記を考えていたのですが,一般的にはどっちも流通してる感じですね。
手元にあるゲームのマニュアル読み漁ってみます。
っていうか,最初から読めば良かったですね。

>745-747
勢いで書いた失礼な質問に丁寧に答えていただいて,ありがとうございました。
>748
ワロタ
「プレーアー」にだけはならないように気をつけますヨ。
750名前は開発中のものです。:04/03/24 21:51 ID:ERQFTA2i
おい、斑鳩高校が負けてしまったではないか。
751名前は開発中のものです。:04/03/24 22:26 ID:P7ddsvkC
予想通り斑鳩スレ見てきたら選抜の話題だった。
752名前は開発中のものです。:04/03/29 14:55 ID:/gzTGZc6
2日分くらい消えた?
753名前は開発中のものです。:04/03/29 17:19 ID:ii1j6UxY
復活してる!?
754名前は開発中のものです。:04/03/29 23:24 ID:mJElVnW8
752 名前:名前は開発中のものです。[] 投稿日:04/03/25 14:50 ID:mDlUdfpu
縦スクロール3Dシューティングのスクロール処理について、

1. 一般的な3Dゲームのように地面は動かさずにカメラを動かす。
2. カメラは固定で地面を動かす。
3. キャラクターはカメラの影響を受けないようにして地面は固定でカメラを動かす。

他にもあると思いますが普通どんな感じなんでしょうか?


753 名前:名前は開発中のものです。[sage] 投稿日:04/03/25 15:08 ID:uxZXQBMG
レイストームはどうやってると思う?

754 名前:名前は開発中のものです。[sage] 投稿日:04/03/25 15:12 ID:I9lHEMTg
>>752
3の方法は始めて聞いた
画面外に出た玉とかの処理を考えると1は無意味にダルイヨ(´д`)


755 名前:名前は開発中のものです。[sage] 投稿日:04/03/25 15:19 ID:S5YyhTyg
>>752
強制スクロールだったら2の方が画面固定シューと同じで、常に同じ座標で計算できていいような気がする。
任意スクロールやアクションだったら1の方式でないとキャラ配置が面倒じゃないかな。


756 名前:名前は開発中のものです。[sage] 投稿日:04/03/25 17:33 ID:+inoUp+H
スターフォックス・スターフォックス64のような3Dシューティングは2の方法なんだろかな
755名前は開発中のものです。:04/03/29 23:27 ID:mJElVnW8
757 名前:名前は開発中のものです。[sage] 投稿日:04/03/25 19:12 ID:lrvsDftl
>>752
弾幕系だと、3が正解かと。

D3Dは3Dトランスフォームがメチャクチャ重いことを実感させられた。
2Dクソ速ええぇぇ!!

そーいや、SSのシルバーガンは
実際のゲームではレンダリング済みの2D絵(ボス以外)を、
3Dのデモ画面では3Dオブジェクトを
使ってやってたな。アレはマジ凄いよ…

758 名前:752[sage] 投稿日:04/03/25 20:53 ID:mDlUdfpu
1はFPSやMMORPG系って感じがしますね。確かにキャラクタ管理が面倒臭そうです。
2は背景が完全に強制スクロールで淡々とスクロールするタイプなら一番楽かな?
3は高度を上げ下げしたりビルの隙間に吸い込まれるような凝った演出が出来そう。

3にしようかと思ってるんですが自機の左右の位置によって画面が左右に少しスクロールするタイプの
シューティングってありますよね。あんな感じをやりたい場合自前でキャラの座標を修正しないといけなくなる?
カメラの姿勢を殺しておいて自前でパンするってなんだか複雑な気持ち。

推測するにレイストームやグラディウスVは2なのかな?
背景にこだわらなければ2なんだろうけど。

759 名前:名前は開発中のものです。[sage] 投稿日:04/03/26 02:33 ID:A90WqE+p
座標系を2系統持っておいて
描画時に合成するとかすれば?

760 名前:名前は開発中のものです。[sage] 投稿日:04/03/26 02:54 ID:+CeMOBN2
世には出さなかったけど759に近い形で作ったことがあるよ。
ゲーム空間からワールド空間へ変換する行列を作ればいいだけの話なので。
756名前は開発中のものです。:04/03/29 23:28 ID:mJElVnW8
761 名前:名前は開発中のものです。[sage] 投稿日:04/03/26 03:25 ID:lYL1ZdP1
原点からの相対位置か,カメラ座標からの相対位置か,の違いしか感じないんだけどなぁ・・・。

762 名前:名前は開発中のものです。[sage] 投稿日:04/03/26 08:37 ID:hV+ngtVh
>>758 >>752 の3って斑鳩みたいな感じですよね?

763 名前:752[] 投稿日:04/03/26 14:11 ID:wuS+wbFI
>>759-761
要するにカメラを2つ持って使い分ければいいんですかね。
片方はスクロール用で常にカメラは地面をまめる様に動かして、
もう片方は常にワールド空間の原点を見下ろすかたちで。
キャラクターは後者のカメラで座標変換(と言うかほぼ無変換)。
必要に応じて両方のカメラを同時に動かせば左右のパンニングも表現できますね。

>>762
実は斑鳩ってやった事ないんですよね。
DC版買ってみるかなぁ。

764 名前:名前は開発中のものです。[sage] 投稿日:04/03/26 14:13 ID:AL8Oj5h9
FPSのシューティング作ろうかと思うんだけど、
任意の目標に対する追尾カメラってどうするん?
適当な感覚の点をベジェ曲線とかで補間するのがよいのかしら?

まぁ肝心の敵の挙動もさっぱりですがね。
757名前は開発中のものです。:04/03/30 13:39 ID:BCC3a7o8
鯖が逝ってたのか・・・
758名前は開発中のものです。:04/03/30 22:08 ID:elXgJ6eW
俺が書いたレスが消えとる…

カメラ1つにしてゲーム座標に配置して
ゲーム座標からワールド座標への変換行列を用意してやれば
手間も掛からず簡単に実装できるという趣旨の内容を書いたのだが
759752:04/03/31 10:14 ID:rjSKXijA
復活おめ。

>>758
脳内には残ってますよ(藁)
world * view * proj と game * world * view * proj っての。

厳密に言うとこう?
world * (game * view) * proj (括弧は便宜上つけてみた)
world は各モデルの変換行列ですよね?

なんだか混乱気味でsorry.
760名前は開発中のものです。:04/03/31 13:51 ID:RFvDPTr6
>>759
ああっ、ごめん。思いっきり勘違いしてた。
順序はworld * game * view * projですね。厳密に言うとどうだろう(笑)
括弧の順序の付け替え次第で結果は同じでも意味の捉え方はかわるからね。

worldは各モデルをゲーム空間へ変換する行列で、
ゲーム空間からワールド空間への変換行列がgameという感じかなー
761752:04/03/31 18:59 ID:rjSKXijA
>>768
なんとなく理解しました。
通常の model -> view 変換の前に model -> game を行ってから game -> view ですね。
実際の処理では gameView = game * view を SetTransform(..._VIEW, gameView); とすれば
各モデルに対してゲーム空間に変換する作業ははしょれますね。
ゲーム空間に変換しない背景とかはそのまま SetTransform(..._VIEW, view); してレンダ。
これなら基準となるカメラは1つだし。
762名前は開発中のものです。:04/04/04 21:08 ID:tyCvmNft
今シューティングゲームをdirectx9使って作ってんだけど
なんか全体の動きがカクカク
でもメディアプレーヤーと同時起動させるとなぜかサクサク動く
なんで?普通逆じゃない?

情報が少なくて申し訳ないが、これだけでピンとくるシトいる?
763名前は開発中のものです。:04/04/04 22:03 ID:G7zZTyVo
>>762
タイマーの精度を明示的に変更しろ。
timeBeginPeriodだったかな。
メディアプレイヤーを起動するとタイマーの精度が変更されるためそういう状況になる。
その時点で一番精度が高い値が使用されることになるので。

メディアプレイヤーを起動すると2chブラウザの動作が速くなるなんてのもあった。
764名前は開発中のものです。:04/04/04 22:25 ID:8gl5+fjo
どんなブラウザだよw
765名前は開発中のものです。:04/04/04 23:03 ID:G7zZTyVo
>>764
スレ違いだが、
http://fm-x.netfirms.com/kage/kage.htm
>0.99.1.1034 03/01/21 21:21
>・レンダリング高速化のおまじないを入れてみる。
とか、
Live2chの履歴の
> 2003/ 1/21 Ver1.00beta78
>・レスの表示やスレ一覧の表示がかなり速くなったらしい。
など。

Live2chのスレの過去ログ
http://pc3.2ch.net/software/kako/1041/10410/1041058846.html
http://pc5.2ch.net/software/kako/1043/10431/1043121738.html
このあたりのスレをWMPでgrepすると出てくる。

IEのコンポーネントの動作速度がタイマー精度に影響されて762と同じような状況になる。
766名前は開発中のものです。:04/04/05 00:10 ID:wbaZXZRt
>>763
おぉサンキュ
まだ試してないが、なんとなくそれっぽいね
767名前は開発中のものです。:04/04/09 21:16 ID:dG0Euqyf
みんな音楽はどうやって調達してるんだ?
自分で作れればイメージ通り作れるから一番良いのだろうけど・・・
768名前は開発中のものです。:04/04/09 21:52 ID:PjiZkLYL
自分で作ります。
769名前は開発中のものです。:04/04/10 06:37 ID:N0rIs2WL
外注
770名前は開発中のものです。:04/04/10 13:41 ID:SDqZRV5G
音楽ってmp3?mod?オリジナルドライバ?
漏れはオリジナルドライバなんだけど、
最近の人ってMML理解できないらしいから
どうしていいのやら・・・。
771名前は開発中のものです。:04/04/10 16:42 ID:Z0fPfzpx
なぜにMML?
オーディオデータを流すほうが扱いやすいじゃんか。
772名前は開発中のものです。:04/04/10 16:43 ID:8HeIq1n8
何時の時代の人間だって感じだな
773名前は開発中のものです。:04/04/10 16:54 ID:WRRJ0nJl
どのマシン環境でも統一した音がでてサイズを抑えるというのなら
そっち方面はひとつの解だとは思うけど

そこまでやれるならサウンドフォント自前でもってソフトウェアMIDIでも
作った方がいいような気がする
そしてうまくいけばそれなりに(ライブラリだけでも)メジャーになれる

SCCやFM、PSGのような音が欲しい場合はMMLベースでもいいと思うよ
PCM全盛になって昔は音楽だめな人もMMLで手軽に曲作っていた人を発掘できるかも
俺も鍵盤はわからんかったけどCDEFGABだけはなんつーか体が覚えてた

mp3などの圧縮形にせよ動作環境がwinならSTGでも負荷的に問題はあるまい
774名前は開発中のものです。:04/04/10 17:05 ID:8HeIq1n8
呆れて反論する気も無くなる
775名前は開発中のものです。:04/04/10 17:28 ID:BV7x21I7
音ゲーならまだしもそんな部分に時間かけてどうするんだろう?
776名前は開発中のものです。:04/04/10 18:39 ID:VoEFIeEx
趣味だろ。ふぁみべのよっしんも数年かけて色々模索してたな。
Z-MUSICとかMDXとかTSSとかMODとか...

ところでCAVEシューティングのBGMがADPCMの垂れ流しからMODに変わったのは
どういう意図があったんだろう。ROMの節約だろうか?
777名前は開発中のものです。:04/04/10 18:47 ID:n0T1nu9p
Z-MUSICなんて聞いたの何年ぶりだろう。
778名前は開発中のものです。:04/04/10 19:58 ID:8HeIq1n8
あの基盤の制約じゃなかったかなあ
基盤性能なんか怒首領蜂より大往生のほうが悪かったりするから酷いもんだよ
779名前は開発中のものです。:04/04/10 22:30 ID:unHNCvci
PC歴の長いプログラマが陥る罠かな。
PC界隈で使われてきたMMLやMODに入れ込んでしまうの。

そもそも古今MMLがまともな音楽シーンで使われた試しはありません。
こいつは昔の廉価音源チップを載せたPC・ゲーム機でのみ有用な打ち込み手段。
使用音数が増えたり、曲が緻密になるに従って、打ち込み効率が底なしに落ちていくから。

ゲーム音楽でも、アマチュアを含めて、もうMML使ってる人間なんかいない。
普通にストリーム再生したほうが、広い範囲からより腕のいい作曲家を募れるでしょう。
今のコンピュータ音楽は音符を打ち込むだけの世界じゃないしね。

ま、Oggあたり使って、ループ開始点を指定できるようにしておけば十分かと。
これもプログラマはよく忘れるんだけど>ループ開始点
(イントロとか弱起とか入れられまへんがな)
780名前は開発中のものです。:04/04/11 00:50 ID:osyo1R4q
ループに関してmidiやpcmだけやってきた人間は忘れてるというか無頓着というか
mml時代からやってきた連中はそここだわるけどね

fmやpsg、sccの音色ダイスキーな人間で、PCM垂れ流し以外の
世の中のゲームの音楽ってあまりいいものじゃないのばかりって感じる種族なので
mmlでがんばる人は応援したくもなる

pcm全盛になってからゲームの曲イマイチなものばかりぽ
781名前は開発中のものです。:04/04/11 00:59 ID:XhUPW4mT
確かに楽器は音楽の中で重要な位置を占めて居るけれど
かといって楽器に制限されて視野が狭くなるのは悲しいことだと俺は思う。
782770:04/04/11 01:30 ID:F6uVTG3Z
いやぁ、GBAで遊んでるんだけど、
結局簡単に作ろうとするとオリジナルドライバ+MMLになっちゃったんだけどね。
783名前は開発中のものです。:04/04/11 06:38 ID:4JV3b2r6
FMでもPSGでもオーディオ化したものをストリーム再生すりゃいいんじゃ?

プログラムのことは判らんけど、MMLからじゃなくてSMFからじゃだめなの?
784名前は開発中のものです。:04/04/11 08:51 ID:4f0RoMxJ
>>782
あー、GBAの音源ならMMLはアリかも。

>>783
自前でソフトウェア音源実装するにしても、
標準MIDIファイルで駆動できたほうが大多数の音屋には嬉しいでしょうな。
PCM波形部分はDLSに対応して。
(もっとも、DirectXならDirectMusicが既に標準で対応してるけど)
785783:04/04/11 10:04 ID:4JV3b2r6
音屋探してもMMLでやってくれっていったら嫌がられそうだw。
俺自身はPC-88のCMD PLAY時代からMML好きなんだけど、
こんな奴はあまりいないw。
786名前は開発中のものです。:04/04/11 10:26 ID:3H1SQA+/
GBAだと、PCMオンリーでいい曲なのって少なくねえ?
てーか、全体的にノイジーすぎ。
海外のMOD自体からやってます、みたいなのはいいけどな。
日本のは、たまにPSG+PCMを使いこなしてるのがいいね。

まー、PCはさすがにPCMオンリーだな

そういや、大往生はサントラ買って、
いいアンプやスピーカー聞いてもさっぱりダメポ
作曲者がよくても元の環境があれじゃあな
787名前は開発中のものです。:04/04/11 10:27 ID:3H1SQA+/
> MOD自体
MOD時代
788名前は開発中のものです。:04/04/11 10:46 ID:XhUPW4mT
所詮MMLなんぞ楽譜の文法で演奏の方法ではないんだがなあ。
MMLで演奏した奴をOGGで保存して何が悪い。w
まあ冗談だから突っ込まんでくれ。サイズが激しく非効率だからなw
でもね、このご時世、大容量・高速転送なのだから。
サイズに関してはあまり深く考えなくていいと思うな…。

>>786
大往生の凄みは曲自体のパワーってよりマップとの同期が一番かな。
ゲームミュージックってのはゲームと一体になって完結するものだと俺は思う、
ゲームと音楽のどちらかが一人歩きしては駄目なんだな。
具体的に言えば5面道中なんかはBGMのお陰で本当に物語のようだ
789名前は開発中のものです。:04/04/11 13:36 ID:NLoamb6E
>>779 ああ、だからゲームミュージックが普通の音楽になったんだな…
と納得。
790名前は開発中のものです。:04/04/11 15:54 ID:XDbFJEB+
>>781
制約の中から生まれる音楽というものもありますが。
791名前は開発中のものです。:04/04/11 17:22 ID:4JV3b2r6
同意。
でもまあ曲作る人間が制限すれば機能上の制限はいらないけどね。
792名前は開発中のものです。:04/04/11 21:03 ID:302InegI
それって制限する意味がないと思う…
793名前は開発中のものです。:04/04/11 21:09 ID:4JV3b2r6
そお?
たとえばOPN再現のためにFM3声PSG3声に制限して作れば同じじゃ?
794名前は開発中のものです。:04/04/12 00:28 ID:fQb6KOhv
今MMLを使うのって、プログラマの都合でしかないよな。
(例外もあるけど)普通は1トラック1和音になるから逐次処理がしやすい。
余計な分岐が減る分軽くなるという話もあるが。

おいらもGBAで遊んでるけど、最終的にはやっぱりMMLコンパイルっす^^;
SMF2MMLコンバータ作ったのでコンポーザにはSMFで書いてもらってるけど。
795名前は開発中のものです。:04/04/13 12:21 ID:xi3HdIxL
>>789
今のゲーム音楽に普通の音楽が多いのは、普通の音屋が作ってるからだよ。
音源とか入力方式とかは関係ないと思われ。

昔ながらのゲーム系音屋のほとんどは、低スペック音源で精一杯で、
音源の制限(というか防壁?)がなくなるとフェードアウトしてしまった。
もちろんそうでない人もいてがんがってる。
796名前は開発中のものです。:04/04/14 00:17 ID:9sQL4khc
でも、ゲームは普通の曲が流れるより、
ピコピコ音の方が合ってると思うのはジジイだから?

で、音屋さんがGBAで組みやすいようにしてあげるにはなにがいいんでしょ?
MDI?
797名前は開発中のものです。:04/04/14 00:25 ID:0QMtBAnG
同意だ。
ピコピコ音っていうか、メロディーラインのはっきりしてる音のほうがゲームには合うと思うんだがなあ。
798名前は開発中のものです。:04/04/14 00:47 ID:GkIK2ZbT
同意。
全盛期の東亜節...燃えるZe!
799名前は開発中のものです。:04/04/14 00:49 ID:/c5YFH/5
最近のRPGとかだと、キャラの台詞が被ったりするから、
メロディが弱く、あまり主張しない映画音楽みたいなのを要求されるのよ。
だからゲーム音楽をやりたがる若い人はこういう曲を作る傾向が強いね。
800名前は開発中のものです。:04/04/14 04:20 ID:xyddHfFg
ゲーム音楽あってのゲームだと思ってたのに、今はそうなんだ。
古代祐三氏のインタビューの記憶が未だに忘れられないわ。
ファルコム厨ですみません。
801名前は開発中のものです。:04/04/14 05:53 ID:3o+xyjgg
そこらへんにしときましょうや。
802名前は開発中のものです。:04/04/14 12:58 ID:/c5YFH/5
シューティングのBGMならメロ強くても平気だけどね。
803名前は開発中のものです。:04/04/14 21:08 ID:gsSJhrQg
MMLはすっごく苦手だけど、内蔵音源系の音は大好きだから
シーケンサ(ピアノロール式)で音符並べた後に、それ見ながら
MMLに直してる。まんどくさいけどこうしないと曲作れない。
804名前は開発中のものです。:04/04/14 21:45 ID:/c5YFH/5
>>803
VSTiでよければOPM使えるやつとかPSG使えるやつとかあるぞ。
Windowsしかないけど。

あーすまんシューティング関係ねえや。
805名前は開発中のものです。:04/04/16 02:02 ID:8uKRdr8v
シューティングとサウンドは切っても切れない関係。
グラディウスの逆火山の曲をゲーセンで聴いた時はびっくらこいた。

グラディウスのダブルってなんで弾が出ないかと思ったら
前方向にに2連射してたのが、斜め上と前方向に1こずつになったからなんだね。
同じバッファかよ(´・ω・`)
806名前は開発中のものです。:04/04/16 02:09 ID:tI+mDSrQ
いまさら何をいっとるのかね?w
807名前は開発中のものです。:04/04/16 06:34 ID:JB99uPaO
グラの基本中の基本だなw
808名前は開発中のものです。:04/04/16 08:29 ID:xRr/Izbv
グラはちゃんと発射元(オプションor自機)を管理してるから、2発になるんだろうな。ここを手抜くと、
オプションが地形にめりこんでいたりするとき自機が普段より多く連射する現象が起きそう。
809名前は開発中のものです。:04/04/16 08:41 ID:xRr/Izbv
と思ったけど、オプション、自機それぞれ別のショット領域を与えておけばいいのか。
最近は画面端まで連射できるのが当たり前なので錯覚してた。
810名前は開発中のものです。:04/04/16 10:54 ID:40YnSUjN
画面上に一発しか撃てなかった時代が懐かしいな。
811名前は開発中のものです。:04/04/16 19:19 ID:iy9iYxtF
やっぱギャラクシアンかなぁ>一発
狙い撃つ緊張感が好きだ。
812名前は開発中のものです。:04/04/17 01:07 ID:on9b1nPV
>>805
AC版だと2発分空になってないと次が撃てないけど、
FC版は上下別にチェックしてるから、片方が画面に残ってても
もう片方は撃てるんだよね。なのでちょっとだけ強い。

>>810
弾どころか、弾の爆発も同じバッファのゲームがあるから
撃ち逃して画面上方で爆発すると次が全然撃てなかったり。
813名前は開発中のものです。:04/04/19 23:30 ID:vxlKtg0o
来月のCマガ
特別記事 シューティングゲームアルゴリズム
ttp://www.cmagazine.jp/contents/next.html

2Dかな?FPSとかだと(´・ω・`)
814名前は開発中のものです。:04/04/19 23:52 ID:zT9SwzEQ
やっぱりインベーダじゃない
1回だけやるなら、複数のオブジェクトを動かす方法と、方位を得る方法くらいかなぁ?
815名前は開発中のものです。:04/04/21 22:33 ID:UlTbA0ct
・2発両方が空になっていないと撃てない
・空のほうはもう片方に関わり無く撃てる
この2つのシステムは最近のSTGでも共存していて、たとえばプロギアの嵐なんかは
ゲーム中の細かい条件でこれが切り替わったりもしている。
816名前は開発中のものです。:04/04/22 19:39 ID:XvUw8NqD
え?ごめん聞いてなかった。もう一回説明して。
817名前は開発中のものです。:04/04/22 21:06 ID:awTAk/Yp
なにが?
818名前は開発中のものです。:04/04/22 22:06 ID:g9gmvMTD
まだプログラム歴は浅いのですが対人戦闘の格ゲーっぽいシューティングを
つくろうと考えています。
そこで質問なのですが、一人のキャラの攻撃に複数種類がある場合、
(近距離攻撃、遠距離攻撃、必殺技のようなもの..etc)
それぞれのクラス(AttackクラスやShotクラスなど)でつくってからActionクラスというのを作ってその中に
入れてもいいのでしょうか?
やはりActionクラスな中にそれぞれ関数として(Attack()やShot()など)
ひとつにまとめたほうがいいのでしょうか?
ただ、後者のほうはいまいちやり方がわかりません。
(特に画像などを読み込む初期化)

ちなみに、アスピライトというページのスケルトンプログラムを使って作ろう
としています。
ttp://www.plustarnet.com/aspil/
819名前は開発中のものです。:04/04/22 22:20 ID:3AHU11NF
>>818
そこのページでやってることをざっと見てみたが、
「弾や敵が一種類しかいない」ことを前提にしてる気が。

漏れなら、
Action、Drawといったインターフェイスを持つEnemyクラスを作っておいて、
その派生クラスとしてZakoクラスやBossクラスを作る。
画像は面倒なので、特に量が無ければグローバルにして、
起動時に読み込む。
820名前は開発中のものです。:04/04/22 23:30 ID:vrWxzhwt
>>818
漏れも丁度、似たような所やってる。開発状況報告スレに書き込んだ。
それなりにコード追加の柔軟性重視で構築してるんだけど、
(逆に、CPU負荷をあまり考えない作りに、、virtual()、文字列比較、dynnamic_castが多々)
みっともない部分が多く、見せれない状態だが。(規模もそれなりだし)

サイキック・フォースみたいのを作りたいのかな?
漏れも今後やりたいと思ってたし、作り的にもシンプルかと思う。(1対1という点で)

因みに、漏れの場合、アクションクラスXXを、キャラクラスXXが、任意の数保持して切り替え。
といった感じ。
821名前は開発中のものです。:04/04/23 19:54 ID:69UU5Qh3
スペハリの地面ってどうやって作ってるの?

822名前は開発中のものです。:04/04/23 20:44 ID:hbyebCU2
フラクタル
823名前は開発中のものです。:04/04/23 23:40 ID:1VRXC3Iw
>>826、828
なんか同じ元ネタな予感。俺も含めてナ
#826にいたってはゲームシステムまでかぶってる予感
俺の場合、ゲームシステム部に弾クラスをあらかじめ多数用意し、
キャラクタークラスが弾を撃った段階でそれを割り当てる、という方法をとってる。

>>828
virtual関数呼び出しとかに掛かるコストなんぞほとんど誤差程度
昔の「遅い」ってイメージに毒されすぎ
1000万回くらいループまわして計測してみろ
824名前は開発中のものです。:04/04/24 01:16 ID:dsxFdC9m
おやおや。
825820 :04/04/24 04:34 ID:wMAF1O76
>>823
>1000万回くらいループまわして計測してみろ
まあ、気にしてないので、採用してる訳で、、。
ただ、文字列比較等、最適化出来る所は「いずれ」やろうかと。
(ただ、最近のCPUは高性能なので、そのまま放置する可能性あり)

クラスのプール化も、いずれやろうかと。
今は2Dだからか、全然負荷は気にならないけど。(400キャラぐらい管理)
カテゴリー別にキャラ管理するだろうから、必要だろうけど。

今後、データドリブン化する場合、クラスは汎用的なものにする必要あるかも。
プール化も効果的に出来るし、、どうしようかなー。
826818:04/04/24 08:54 ID:n6OgNP2N
>>819
>そこのページでやってることをざっと見てみたが、
>「弾や敵が一種類しかいない」ことを前提にしてる気が。
 これはここのスケルトンプログラムでは難しいということでしょうか?
 このページに書かれている以上のことはできないので、
 これを改良すればできるかなぁ、などと考えていたのですが^^;

>>820
 はい。サイキックフォースのような感じです。

 ちなみに今試そうとしているのは
player1.Shot(); と書いたら キャラ名.Shot();
 となってくれるようなものです。
 ただ、そのShot()の中に何を書けばいいのかいまいちわかってないのですが^^;

 アドバイスありがとうございます
827名前は開発中のものです。:04/04/25 19:37 ID:6SVzr6yc
ふと思ったんで聞いてみる。
親子関係の実装の時、どちら主体で書く?
子供をエージェントにして自律行動させるか、
それとも親の一元管理で子供を完全に制御するか。
みなさんどちらがお好きでしょうかね
828名前は開発中のものです。:04/04/25 20:08 ID:PC4HLMdq
触手の場合、両方違う動きになるから楽しい
829名前は開発中のものです。:04/04/27 04:32 ID:97M/I6Oo
基本的には子は自律じゃないかな
そうじゃないと親子にする意味あんまりないし。
830名前は開発中のものです。:04/04/27 09:37 ID:VKeIx2UK
背景(2D)の管理をどうしようか悩んでます。

キャラは、(triList*2)を1スプライトとして、テクスチャごとに
グループ化して管理しています。HW頂点が使える環境では非常に高速かな?

メッシュを作って、チップ指定から、UV値を設定というのは考えてるけど。
オーサリングツール作るのが面倒。
831名前は開発中のものです。:04/04/27 09:42 ID:7UoVRs6G
>>827
どういう親子関係を構築するかによるんじゃない
一応子供が親の状態を見て、行動するようにさせているけど
親も子供も互いのアドレスを保持して参照できるようにしている
832名前は開発中のものです。:04/05/01 05:45 ID:9AdKeHJT
誰かトランスミュージックのエピック・トランスとシンクロして
ひたすら脳内に訴えかけてくる気持ちのいいシューティングを創ってくれYO!
833プログラムも初心者です:04/05/01 14:53 ID:YzGOV9op
シューティングを作り始めてわからない事がたくさんあり質問させてもらいに来ました。

まず、敵の出現の仕方と敵の弾の当たり判定などです。
自分は
struct tagEN{
int x,y;//敵の最初の表示位置
int flag;//画面内にでてるか
int type;//どの種類か
int time;//始まってから出現するまでの時間
};
EN en[100];
とやり全ての敵に出現するまでの時間を入れてやっています。

その場合に弾の判定の方は全ての敵の当たり食らい判定をし、if文でflagがたってない敵をはじくようにしています。
しかしこの場合、出現する敵の数が増えてしまうとif文の使用率が増えてしまい動作が重くなったりしまわないでしょうか?

何かもっと良い方法などがあれば教えてください。
834名前は開発中のものです。:04/05/01 15:35 ID:9KyDOHUR
それだと
 10フレームごとに弾がどんどん出現する。弾は画面内には10発までしかでないが
 画面外に弾が消えれば次の弾が出せるので
 100発でも10000発でも弾は出続ける。
という状態を作れないんじゃない?
弾でなくても、敵でも同じ。
835プログラムも初心者です:04/05/01 15:48 ID:o19KIfKS
つまり、一度使われたところが終わってflagが0になったところに次のを入れるといった感じにすればよいのでしょうか?
もし、自分の言っている事が教えてくださった事と同じならば本当に感謝です。
こんな事もまったく思いつきませんでした。
836名前は開発中の者です。:04/05/01 17:32 ID:yiK8st2N
最初にステージに出る敵すべてを起動して、時間で動き出すんですよね。
マリオみたいに縦横に行ったり来たりスクロールするゲームでは
そういうやり方かも知れないけど、シューティングの場合、背景をスクロールするごとに
カウンタをアップしていって、ある値の時にあるタスクを、空きのワークエリアに
設定というやり方でいいのではないでしょうか。

画面内のタスクはflag=1で、画面外に出たらflag=0で、スクロールポインタが
ある値に来たときの起動は、ワークエリアすべてを検索してflag=0のワークエリアを
探して、そこへタスクのデータを設定するのです。

>一度使われたところが終わってflagが0になったところに
>次のを入れるといった感じにすればよいのでしょうか?
その通りです。
837プログラムも初心者です:04/05/01 19:48 ID:o19KIfKS
>>836
ええ、タイムにどのカウンターで出てくるかというようにやるつもりです。
この場合、毎カウンターごとに全ての敵の出てくるべきカウンターとの確かめをするのでしょうか?
838名前は開発中のものです。:04/05/02 06:17 ID:i1mYGEjc
>>837
>毎カウンターごとに全ての敵の出てくるべきカウンターとの確かめをするのでしょうか?

いいんじゃないかな?それで。
ただ、全ての敵じゃなくて待機中の敵だけでいい筈。
その他、最適化したいなら、敵出現のバッファを幾つかに分割し、
カウンタでソートしておいて、現在のカウンタから先だけをチェックすればいい。
なので、敵structに、出現カウンター、出現位置をつける必要はないかと。

最近の環境で開発してるなら、if文の回数とか、あまり気にしなくてもいいと思うよ。
CPU速いんで。
アルゴリズム系の本は読んでおいた方が良い。
839名前は開発中のものです。:04/05/02 11:16 ID:zVbO0VnT
初めてゲーム(STG)を作りました。
動作確認中です。
動作スペックを満たしていながらも、画面がおかしい、音が出ない、60fpsでない、ジョイスティックで操作できない等がでたら教えてください。

それと、クリアできる人を探しています。
一応クリアはできます。
今のところ、クリアできたのはメインデバッカの一人だけです。
次回作の難易度調整の参考にしたいので・・・。

意見、アドバイス等があれば言ってくれればとてもありがたいです。

宜しくお願いします。

http://www5f.biglobe.ne.jp/~yakimorokosi/
840名前は開発中のものです。:04/05/02 11:54 ID:5MhNR0w8
>>839
やってみたよ

・時々落ちる(タイトルでボタン押すと落ちたりする)
・ジョイスティックのアナログ軸にデッドゾーンの設定してくれ
・終了後ウインドウ位置が元に戻らん

こんなとこですかね
841名前は開発中のものです。:04/05/02 12:09 ID:ON3G+DzB
DPPパラレルだと操作できない。JoytoKeyも無効。
なので、うちではジョイパッドが使えず、キーボードでしか操作できなかった。
バイクバンディッツのように、入力にDirectInputを使わないモードがあるといいんじゃないかな。
842名前は開発中のものです。:04/05/02 14:13 ID:HlcFzc0Q
>>839やってみた

Joystickオンだと解像度変更しに行った直後に終了しちゃって起動せず
使用パッドはUSBの、どっかの安モン
オフにしたら遊べたよ

私は1面もクリアできんかった
もともとSTGは得意じゃないんだけど
すっげー難しい! と思ったよ
参考までに
843名前は開発中のものです。:04/05/02 19:24 ID:45kFFDg5
>>839
ためしにやってみた。
うちにあるPSパッドのUSB変換器つかってまともにパッドは使えるっぽい。
ただし、>>840と同様に「やきもろこし」っていうロゴが出てるときにボタン4(だったと思う)押したら落ちた

難易度高過ぎ。STGは大往生5面いける程度の実力だが、2面途中までしかいけなかった
(初プレイでの感想ってのもまぁあるが)
1面でいきなり左右両方から弾幕貼るってのはどうかと思う

あと、あれだと誘導弾使う気になれない
大量に撃破できないため、誘導弾を使ったら死が待っているとしか思えん
844名前は開発中のものです。:04/05/02 19:28 ID:H8EMSMM+
>>839
設定後OKボタンを押しても起動せず
Joystickオフでも同様
845名前は開発中のものです。:04/05/02 21:38 ID:skeO4xtm
>839
試しにやってみた
バグとかは特に見つからなかったけど
難しすぎヘタレシューターには1面もクリアできなかったよ
1面ボスであの弾幕はやりすぎ大往生より難しいと思う
あとBGMがちょっと変かも
短い曲をループさせてるんだろうけど繋がってないから曲の切り替わりが気になってしょうがない(これは個人的な感想なんで気にしないでくれ)
846名前は開発中のものです。:04/05/03 00:08 ID:2W/aC+Ph
>839
>842に同じく、USBパッド有効だと直後に終了しました。
あと、6FPSしかでないっぽい。ので、難易度とかは全くわかりませんです。
847プログラムも初心者です:04/05/03 01:03 ID:yvAzXtSL
敵出現のまでのtimeと位置を入れる時にはすべての敵に手打ちで入れるべきでしょうか?

簡単な質問ですみません。
848名前は開発中のものです。:04/05/03 04:20 ID:hQjA8AGn
>>847
面数増えると疲れるよ。調整とか。

簡単なエディットモードを用意するとか
面作りが楽しくなる方向でひとつ。

あと、aba氏のサイト行くと弾幕MLとか面白いもんあるから
参考にしてみては。ttp://www.asahi-net.or.jp/~cs8k-cyu/
849プログラムも初心者です:04/05/03 04:33 ID:yvAzXtSL
なるほど、ありがとうございます。

というより、たまたま今来たら↑の方の書き込み時間が近い事に驚きです。
850名前は開発中のものです。:04/05/03 08:52 ID:s6SOnC7v
>>839 家のしょぼいビデオカードだと自機が消えたり表示が
変。難易度は高いけど作りこめば名作になる雰囲気はある。以上
851名前は開発中のものです。:04/05/03 10:25 ID:i/0fCijI
>>847
背景とシンクロさせない雑魚敵だったら、見えないジェネレータが
一定時間画面端からランダム、又は決まった点から編隊状に敵吐き出すようにすれば、
手間が大分軽減されるんでない?
...ってもうやってるんでしょうけど。(w

852名前は開発中のものです。:04/05/03 10:43 ID:/y7FPKn2
>847
1面だけじゃなかったり後で調整をするようなら
俺は簡易エディタを作るだろう。
853名前は開発中のものです。:04/05/03 12:09 ID:htlRz5k4
>>851
この方法なら苦労せずに100匹でも10000匹でも敵を出せるから、最初はこれがオススメ。
2面くらいあるシューティングが作れるくらいまで慣れたら、
簡易エディタ作ってちゃんと敵の配置をしてみるといい。

プログラム、ゲーム作り、ゲーム用ツール作り、それぞれに慣れてれば、
最初からステージエディタを作るのも良いかも知れない。
854名前は開発中のものです。:04/05/03 14:56 ID:nFPg0IBb
>>839
やってみた。数回やったが真琴まででEND。
とりあえず…
しょっぱなから中型機が多くて、最初のパワーアップ取るまでかなり押される。
弾幕が辛いのもあるけど画面全体をボスがぐるぐる回るのが辛い。蜂というよりタイトー系?。
ホーミング使わせたいのは判るけど、個人的にはボス戦はストレス溜まる。
パワーアップしちゃえば、2面までやった限りでは道中は簡単。ボスはかなり厄介といったとこ。
ボス戦がイヤンなのでクリアまでやる気になれなかったスマソ。
855名前は開発中のものです。:04/05/03 18:12 ID:LZEmFSxe
難易度に突っ込み入れるけどポテンシャルを
評価しないのはここの住人が雑魚で悔しいから
なんでつね。(わらわら
856名前は開発中のものです。:04/05/03 18:27 ID:GkZ6njEM
能書きたれる前に藻前が評価してあげたらどうだ。
もっと素直になったほうがいいよ。
857名前は開発中のものです。:04/05/03 19:06 ID:wH34SKjY
俺は面白いと思うよ。同人STGなんてバランス
滅茶苦茶だからあんなもんだろ。
858名前は開発中のものです。:04/05/03 20:39 ID:dW4RGEg2
CPU CLOCK -1896MHz
って合ってんの?
859名前は開発中のものです。:04/05/03 21:00 ID:nFPg0IBb
ポテンシャル?
860名前は開発中のものです。:04/05/03 21:45 ID:htlRz5k4
パフォーマンス?
861名前は開発中のものです。:04/05/03 23:12 ID:g4PuW+7Z
>>839 氏はポテンシャルなんて言っていないと思うけど。
862名前は開発中のものです。:04/05/04 00:12 ID:scGkWmqO
>>855が言ってもらいたいポテンシャルの評価ってこんなところか?
・痛みに耐えてよくぞこれだけのプロジェクトを完遂した。感動した!
・すごい弾の量ですね、ボクの技術じゃ到底できませんよ。
・キャラクターに萌えました! エロ画像キボンヌ

...って、全部評価になってない 駄レスやん(w
863名前は開発中のものです。:04/05/04 00:33 ID:+Fxe3bXD
Cと古典的タスクらしきものでやってきたけど
ここでC++とSTLの勉強でもということでごそごそ資料あさりしてる。

……タスク真理教から脱会するのって難しいなぁ。
864名前は開発中のものです。:04/05/04 01:00 ID:Q9WVIjjF
855はなんか煽り入れようとして失敗した模様
865名前は開発中のものです。:04/05/04 02:08 ID:/Z3eIGH0
>>839
青い方でプレイ、2ボスまでだがとりあえず
・道中はパワーアップを取るまでキツイが後は簡単、もう少し難しくしてもいい。
・1面ボスからはっちゃけすぎ、いきなり回転したときはビビった。
 道中とボスで難度に差がありすぎな気がする。
・自機が丸弾を撃ってると敵弾が見難い。
 自機の弾をうすく敵弾を濃く表示するか、自機の弾と敵弾の色を別系統にして欲しい。

上二つはあくまで感想、別にこのままでもかまわない。
敵弾が見難いのはやっててストレスがたまる、これだけは何とかして欲しい。
866名前は開発中のものです。:04/05/04 08:11 ID:mNwFkBl/
>>862 864 本人もゲームの感想を聞いていた訳では
ないから別に良いのですね。失敬。
867名前は開発中のものです。:04/05/04 12:31 ID:Q9WVIjjF
技術的な意見を求めていたのか
868名前は開発中のものです。:04/05/04 15:20 ID:9exrnQwN
純粋にプログラム面だけなら、やりたいことは出来てるみたいだから
パっと見では大してツッコミいれるとこもないだろう。
中でなにしてるかなんて2DSTGじゃ大差ないだろうし。
ポテンシャルに関しては、悪いがこのぐらいなら今や普通だからなぁ。
ツッコミいれるなら、弾の撒き方とか配置とかゲーム構成の話になっちまうが。
869名前は開発中のものです。:04/05/04 19:20 ID:TFC5PR2C
まとめとくか。
> 動作スペックを満たしていながらも、画面がおかしい、音が出ない、60fpsでない、ジョイスティックで操作できない等がでたら教えてください。
>>840>>841>>842>>843>>844>>846
>>850(もう少し環境を晒せば、そのカードでは無理なのかそうでないかがわかる)
>>858

> それと、クリアできる人を探しています。
該当者なし

> 意見、アドバイス等があれば言ってくれればとてもありがたいです。
省略
870名前は開発中のものです。:04/05/04 20:24 ID:7Lk2CvIY
ポテンシャルって何のことについて言ってんのかいまだにわかんないんだが。
871名前は開発中のものです。:04/05/04 20:51 ID:d02V5Vdq
>>870
たぶん
「内に秘めたエネルギー」⇒「将来化ける見込み」「将来の発展性」
とかだろ。知らんけどw
あんま執着しても実りはねーぜと。
872なんとなく:04/05/04 21:18 ID:hWwjGoqy
ポテンシャル=スゴイ度
じゃないか?
873名前は開発中のものです。:04/05/04 21:48 ID:9exrnQwN
完成度という意味で受け取ったが。
874名前は開発中のものです。:04/05/04 22:11 ID:d02V5Vdq
まぁ、シューターは横文字に弱いということがお互い確認できたわけだ。
875名前は開発中のものです。:04/05/04 22:16 ID:cZpe3gkC
お互いかよ!w
876名前は開発中のものです。:04/05/04 22:25 ID:UhuIoZ4M
ポテンシャル>潜在能力

イマイチ、ピンと来ないが、、。
動いてるもの見ただけでは、わからん事多いし。
プログラム的には開発環境や内部動作とか教えてくれんと何とも言えない。

言ってもらおうと思ってるようにも見えないし。
877名前は開発中のものです。:04/05/04 23:01 ID:tQAibQ3Z
潜在能力、ねぇ。
ソース見たいなぁ。
878名前は開発中のものです。:04/05/05 00:18 ID:/ftCat0Q
 ポテンシャルを評価するということに意味がない。
 >>855はポテンシャルの意味も分からずに、したり顔で使用した。
ということじゃのう。
879名前は開発中のものです。:04/05/05 05:48 ID:Uwp6HP2A
自分の場合、ポテンシャルの評価もお願い。と言っとくか。
ちょっと先になりそうだが、、。
880名前は開発中のものです。:04/05/05 12:01 ID:7BCRqSjN
ゲームの評価でポテンシャルという単語を使うとマズい、というのを
>>871>>878が丁寧に解説してくれている。
なにか他の言葉を使おう。
881名前は839のものです。:04/05/05 12:58 ID:YFcAhFzL
・841氏参考に、Joystickを修正してみました。
ONの時はDirectInput使用。
OFFの時はDirectInputは使用してません。OFFの時のみ、JoyToKeyが使えると思います。
DirectInput使用の時のJoystickも書き換えてあるので、動かなかった方はうごくようになってるかも・・・です。
こういった、パッドによる動作の不具合を調べる為いくつかのパッドを持っておくべきなのでしょうか?それこそ、ビデオカードによる画面の不具合のためにいくつか持っておくべきなのでしょうか?

・画面について
青弾と敵の弾の色が、かぶったのはどうかと思いましたがスルーしましたw青がしっくりきたので、そうしたのですが・・・。
画面で使われる色についてですが、ピンク弾は画面が安っぽくなるとかなんとか、ケイブ関係者さんがそんなこと言ってたような。
このゲムはもともと絵(画面)が安っぽいのと汚い弾幕?のため、青だけだと本当に弾がわけわからんという理由で
途中からピンク弾が存在します。画面の色使いで、なにかありますか?

・BGMと効果音について
プロギアの嵐がそうだったような気がするのですが、効果音の音(ジュエル回収)が大きすぎてBGMが聞こえなかったりしませんか?
私はBGM重視派なので、そういったことが無いようにしてみましたがどうでしょうか?

・内容について
敵の配置、弾幕等は私の決定的な知識不足です。結果的にあんな難易度になってしまいました。

ソースは見せられません・・・ええ見せられたものではありません。
実際、2Dゲームのプログラムでやることなんてほとんど無いと思うのですが。ほとんどDirectXがサポートしてくれていますし、パソコンの性能も高くなってるので、処理もはやいですし・・・。
もう2Dゲームは、きれいな絵や面白いシステム、付加価値等をつけるくらいじゃないのでしょうか?
まぁそのすべてがないゲームをつくる人間が言うのもなんですが・・・。
882名前は開発中のものです。:04/05/05 14:06 ID:Gwktyyzv
>>881
いろいろ指摘が出せるくらいの水準には達してるとも言える。
調整によってはかなり遊べるゲームになるかと。
883名前は開発中のものです。:04/05/05 16:53 ID:YBW/tBTG
>>881
>BGMと効果音
バランスの好みは人それぞれなので
コンフィグで音量バランスをいじれるようにすれば良いのでは。
技術的にやっかいなことでもないでしょ。

>配置、弾幕
プレイヤーキャラがどういう風に動くか
ある程度想定しながら配置していくといいと思うよ。
特にボス戦はどう避けさせたいのか見えない攻撃が多かった。
884841:04/05/05 16:59 ID:7BCRqSjN
Joystickの設定OFFでJoyToKeyが使えるようになったので、パッドでプレイができた。
あとはDirectInputを使わずWinAPIのjoyGet〜あたりで
パッド入力を見るモードがあれば良いと思う。

DirectInputの罠に対するFAQページがありそうなものだが…見つけていない。
885名前は開発中のものです。:04/05/06 16:27 ID:/WDv6Yl/
DiretInputにかぎらず、創る上ではまった!ってのにはどんなのがある?
漏れはテクスチャサイズに2のn乗でないのつかってて
表示できない環境があったことかな・・・あまりに初歩でスマソ
886名前は開発中のものです。:04/05/06 19:16 ID:5mdvKGy8
ハマりポイントは結構あると思うんだが、いざ思い出そうとすると出てこないなあ。
887名前は開発中のものです。:04/05/06 20:22 ID:ygXBD/Dl
>>839
SMARTJOYPAD3で動作確認です。
でも再起動するとボタン設定が初期化されるのはいかがな物かと…
888名前は開発中のものです。:04/05/07 04:50 ID:Z9MLU+vQ
あゆで3面開幕まで。

・1面道中はまあ、しょうがないとしておこうか。大往生白2面ランクぐらいだし。
・1面ボス、第2形態からなんかやけくそ感がしてきましたよ。弾封じ+回って回避でもかなりしんどい。
・発狂に移行したときの難易度は大往生白2面ボス以上?
・2面道中、ラスト以外は非常に楽しそう。○使って稼ぐか晒すかの世界。
・ただし、ラストであれが2体同時で出てくるのは反則ぎりぎりだろうと。とにかく硬すぎる。
・2面ボス、私の腕では第1形態確実に決めボム1ですが。あんな弾幕抜けて前まで進めねーよ!
・第2形態、炸裂弾地獄。ケツイ4ボス程度?かなり激しすぎる。というか、弾道が読めませんが。
・発狂したほうがまだマシかもと言ってみるかも。
・3面、中型雑魚が画面右下から出てきたところと衝突して死亡。えげつねえ。

889名前は開発中のものです。:04/05/07 10:53 ID:gAjpyWtI
PCゲーム板のスレみたいな感想ですな。
890名前は開発中のものです。:04/05/07 11:02 ID:BO0o9QH3
いい感じにスレが伸びてるな
950くらいで次スレのテンプレのためにリンク追ったりしておいたほうがいいかもね
891名前は開発中のものです。:04/05/08 19:05 ID:rBgOwkO/
>839
一面道中の曲ってこれですよね。
ttp://www.campus.ne.jp/~ishigami/CGI-BIN/fsdl.cgi?id=502&file=YUHEI/DYNAMITE.lzh
で、ゲームでは全然こう聞こえません。はっきり言って聞くに堪えないというか。
Wingroove使ってるんですがね。
どうきこえるかはwindowmodeがあれば録音できるかも
892名前は開発中のものです。:04/05/08 23:13 ID:MsUBoY5K
ところで…なんか道中に違和感あると感じたんだけど、
地上物が画面下方に行ったり、自機に接近したりしても、弾を吐きつづけてるとこが気になる。
そういう場面でしっかりと弾封じさせると「気持ちよく」プレイできると思う。
ケツイとかやりこんでると、その気持ちよさが分かると思うんだけど。
893名前は開発中のものです。:04/05/09 10:48 ID:EobpSBNz
このタイプのゲームなら小型地上敵は弾封じできるのが一般的だね
ケツイの場合弾封じできない中型地上敵も意外に多い
894名前は開発中のものです。:04/05/09 11:36 ID:ibxbJHH1
あー、ケツイの4面のカニみたいなやつか。
895名前は開発中のものです。:04/05/09 12:37 ID:XdlBilRP
あのさ、初歩的なことかもしれないけど
「DirectInputの落とし穴」
ってヤツについて詳しく教えてくれないかな?
896名前は開発中のものです。:04/05/09 12:54 ID:Y+/UhkXx
さあ、具体的に何のことを言ってるかは分からないけれど。
どうもカノン蜂やってると、十字キー離しても、その方向に移動しつづけるということがあるな。
何かバグを持ってるんではないだろうか?
897名前は開発中のものです。:04/05/09 13:05 ID:EobpSBNz
うちは観音蜂のJoystickモードだと入力しても反応なしだが
ttp://www.geocities.jp/toru_website/di/4.html
ここのDirectInputサンプルは動いた。
898895:04/05/09 14:19 ID:XdlBilRP
>>896
あ、ごめん、曖昧な書き方しちまった
質問の元は>>884、「DirectInputの罠」だったね

DirectInputを使う上で注意しなきゃならんことがあるのかなと思って
要は、今回話題になってる互換性のことかな?
DirectInputに対応してない入力機器も多くあるということ?
そういえば、どんなソフトにもだいたいオプションで
「DirectInputを使う/使わない」ってのがあるよね


899名前は開発中のものです。:04/05/09 14:55 ID:xOcMWt1e
DirectInput自体には罠と呼べるようなものは殆んど無い気がする。
大抵デバイス自体や使い方の問題かと。
900名前は開発中のものです。:04/05/09 23:52 ID:nMPp6Fh8
PC版のSTGスレで聞いたらこっちの方が作者がいていいのではということで
こちらで質問があります。

Win98+DirectX9の環境なんですが、観音蜂がエラーで起動しないです。
同様の環境で似た現象が起きてる方はいませんか?
エラーメッセージ見るとkernel32.dllで落ちてるんでメモリとかの問題かな
という気もするんですが・・・
GeForce2MXで、ドライバは最新です。
901名前は開発中のものです。:04/05/10 02:13 ID:6vw0zh70
ってもともと動作環境ME/2000/XPだったのね・・・
902名前は開発中のものです。:04/05/10 10:09 ID:mnou8Qh9
>839の観音蜂は封印が起こってしまうと、
○弾のターゲットを自分で設定しようとしたときにたいてい封印状態になってしまって、
プロギアで言う連爆ができなくなってしまうので、これはこれでありだと思う。

やっぱり自機が下方向からの攻撃に弱すぎ。天使2匹が下から来ると終わってる。
3面なんて上から来る敵と下から出てくる敵が同じぐらいの比率なのにこれはしんどすぎ。
それでも一応4ボスまでは行ったけど…結構処理オチしているので参考にはならないかも
でも処理オチ無しで3道中後半とか3ボス発狂とか処理できるの??
一応書いておくと自分は白大往生2-4・プロギア2-4ぐらい
903名前は開発中のものです。:04/05/11 00:33 ID:fOWPsomm
>839
クリアした。名雪で1面300万・2面4200万・3面8200万、3道中を奇跡の1ミス突破でラスボス突入残5、ALL時残1
2ボス第二安置使用、1ボス回転・2ボス発狂・3ボス4ボスの全部はボム使いまくりのごり押し
2面は画面の端の方に位置どってチビザコで中型機の弾をひたすら錬金
3面は中型機にある程度打ち込み&チビザコを錬金しながらついでに破壊
を中心にパターン作って20プレイぐらいでクリア。錬金中結構処理オチ有り

3面、中型機が下から出てくると否応無しに丸弾使わされてカウンタがなくなるのが嫌だった。
それでカウンタがなくなると錬爆範囲が狭くなってなおさらキツイし
904名前は開発中のものです。:04/05/13 00:09 ID:ou/E8VES
観音蜂クリアしたけど…もう一回やれって言われたら無理だろうなって思う
905名前は開発中のものです。:04/05/13 00:17 ID:z7ZqiaOu
観音蜂の起動画面で、Screen→Windowにチェックできないのだけど
これは仕様?
906名前は開発中のものです。:04/05/16 07:56 ID:WjGXM8gH
○が画面外の敵を追っていくがその場合ダメージ与えられないのはマズー
ロックし直そうとしてボタン離すと0%になるし
こうなったらロックが外れる所まで離れないと駄目なのか…?

でも一応4ボスまでは行った、結局2ボスまでで何機あるかですな

あとゲームオーバー時にスコア表示して欲しいです
リプレイ実装とまでは言わないから
907名前は開発中のものです。:04/05/16 17:11 ID:0A90bGjY
6月にソフトバンクから、シューティングゲームのアルゴリズムを
解説した本が出るらしい。

Cマガの6月号にその本の前振りとして、狙い撃ちや誘導段の
アルゴリズムの記事が載っている。
908名前は開発中のものです。:04/05/16 17:24 ID:viKhcrX5
ピンポンパンポーン
ライターの方このスレにいませんか〜
909名前は開発中のものです。:04/05/16 17:37 ID:0A90bGjY
あー、オレCマガの関係者といえば関係者だけど、>907の記事や本のライター
じゃないんで。
910名前は開発中のものです。:04/05/16 21:11 ID:gfWm4Dkw
やっぱ発行後、好感触を得てないと著者としては出にくいと思われ

名無しで執筆の裏話でもいいけど(w
911名前は開発中のものです。:04/05/16 23:19 ID:+A9Hqf43
ホーミングレーザーの奇跡を綺麗に表示する方法とか載ってたら
買うかも。

1冊まるごとシューティングのアルゴリズムって凄いな・・・
912名前は開発中のものです。:04/05/17 08:04 ID:IISlN8+F
>ホーミングレーザーの軌跡
普通にポリラインで良いと思うのだが
913名前は開発中のものです。:04/05/17 14:31 ID:YBrWspbu
ポリラインだとちょっと寂しい。
http://www.gogo3d.com/products/mathema/
この本にポリゴンを帯状に生成する考え方なんかが載ってる。
914名前は開発中のものです。:04/05/17 15:04 ID:IISlN8+F
ポリラインストリップのことを言うつもりだった。ごめんな。
その本はかなりいい本だからお勧めだね。
915名前は開発中のものです。:04/05/17 16:57 ID:YBrWspbu
>912 914
あ,こちらの読解力が足りなかったね。正直スマンかった。
とはいえ,さっきの本は本当にお勧め。ゲーム1本買うより楽しめると思う。

ソフトバンクのアルゴリズム本ってのは2D系なのかねぇ?
「2Dアルゴリズムぶっこ抜き!」とかじゃないように祈るよ。
916名前は開発中のものです。:04/05/17 21:26 ID:uw0zxPmB
そういや同人的には2Dの需要は高いけど、若い世代からの要望が多そう
なのはFPS系だろうから、主に面の接触とか、3次元ホーミングのやりかた等の
3Dベクトル計算だったりして。
917名前は開発中のものです。:04/05/17 23:20 ID:ZuBugayy
3Dのアルゴリズムは2Dにも応用利くじゃん。
今はどのみち3D使ったほうがいいから、3Dの計算覚えても損はないよ。
918名前は開発中のものです。:04/05/18 00:03 ID:3MT/6Tg9
弾幕のバリエーションとか期待してる
蜂の〜ボス型...とか

無理ぽ
919名前は開発中のものです。:04/05/18 00:10 ID:Wx7lRZzA
それはCマガとしては範囲外じゃないか?
逆に言えば、そういうのから本を書いたらビジネスになるかもね、とか言ってみたり(笑)
920名前は開発中のものです。:04/05/18 01:16 ID:c5PbEJQv
FPS系ってそんな需要あるかなあ…?
あの手のゲームってプログラム以外の部分を余程丁寧に作らないと、
遊べない気がするんだけど。
921名前は開発中のものです。:04/05/18 09:20 ID:h9eqJN19
やっぱワイヤフレームじゃない?
GLUTとか使えばすぐにグラフィック描けるし
922名前は開発中のものです。:04/05/18 18:03 ID:IIn09JyP
Cマガ買ってきた。
で,著者さんのサイト。
ttp://cgi32.plala.or.jp/higpen/shtbook/article.shtml
ガチガチの2D系みたいやね。
923名前は開発中のものです。:04/05/18 21:29 ID:+6tt+XSb
著者名からだと分からないけど、どこかで見たようなふいんき(ry
この道では有名人な人っすか?
924名前は開発中のものです。:04/05/18 22:41 ID:E7wSiDRI
MAKKEN氏じゃないっすか。
TOWNSでSky Duelというボクセルの3Dゲームを発表して
Oh!FM-TOWNSにゲーム(達人王や雷電伝説など)の攻略記事や
プログラミングの連載を書いていた人です。
TOWNSユーザにはそこそこ有名な人かと。
925名前は開発中のものです。:04/05/19 00:17 ID:gRdG9+Fk
>>918-919
マニアックスの方はそれっぽいな
926名前は開発中のものです。:04/05/20 00:00 ID:KvUY8pTd
弾幕とかだけでなく、多関節とかの事も扱っているとよいな。
久しく多関節使っているゲームみていないし。
927名前は開発中のものです。:04/05/21 21:09 ID:dsKRMcwW
>926
>誘導レーザーや触手といったカッコいい仕掛けの実現方法が知りたい方
 多間接も入ってるんじゃない?
928名前は開発中のものです。:04/05/21 23:42 ID:HYeo+8Ya
Cマガの上澄み液のような感じだったから、あんまり期待できないような…
929名前は開発中のものです。:04/05/27 10:28 ID:8tdEGAA/
http://gamdev.org/up/img/622.jpg
の左側の画像でジ・オが撃ってるようなホーミングするレーザーはどのようにして描画するのが一般的でしょうか。
バズーカ砲の軌跡を描画するときは、右側の画像で、点線で囲っているような、
丸い煙の画像を半透明で直線状に重ねて描画するのが普通ですよね。
レーザーの場合どうなんでしょう。
こうすれば綺麗に出来る、とか、コツとか有ったら教えていただけないでしょうか。
930名前は開発中のものです。:04/05/27 11:12 ID:Xff51N1y
>>929
ポリラインストライプを使え
931名前は開発中のものです。:04/05/28 13:41 ID:/+fpAYWQ
>>929
これってホーミングしてるの?
とりあえず,
1.小さいな円(楕円)の画像を加算半透明で連続して描く。(煙と同じ手法)
2.事前にレーザーを描画したポリゴンを用意して進行方向に伸縮させる。
3.弾の座標を元に帯状のポリゴンモデルを作る。
パッと思いつくのはこれくらいかなぁ・・・。
1は実装がラクだけど点で線を表現するからその辺でムリが出る。
2はホーミングビームに対応できない。
3は演算処理の負荷が1番高い。(>>930が言うポリゴンストライプはコレだと思う)
個人的には3がオススメ,ビーム以外にもソウルキャリバーみたいな剣の残像とかに応用できる。
実装方法決めたらまた書き込んでください。

>>930
×stripe
○strip
932931:04/05/28 13:43 ID:/+fpAYWQ
小さいな,って何だ・・・。_| ̄|○
933名前は開発中のものです。:04/05/28 15:13 ID:x8kU1hqC
それよりカンマが気になるな,
934名前は開発中のものです。:04/05/28 16:25 ID:grYeqGcU
「、。」か「,.」のどちらかならわかるんだが。
なんか半端だな。
935929
>>930 >>931
回答ありがとう、あれから自分でもいろいろ調べてたんですけど、
MicrosoftのDirectXの記事に丁度良さそうなサンプルを見つけたのでアドレス貼っておきます。
http://www.microsoft.com/japan/msdn/academic/Articles/DirectX/03/

上のサンプルだと帯状のポリゴンを使っているようですね。
>>931さんの言うところの3番でしょうか、自分もそれで行きたいと思います。