- 1 名前:名前は開発中のものです。 [04/09/26 23:35:52 ID:U/f0VG3h]
- ワンキーゲーから格ゲーまで、様々なジャンルの基礎とも呼べるアクションゲーム。
このスレでは、そんなアクションゲームの製作技術や技術の検証、成功談 失敗談笑い話、難易度の設定方法論などについて語り合いましょう。 もちろん自分の作ったアクションゲームを晒してみたり、 プロジェクトをはじめてみるなどもOK! ただし、アクションゲームの未来とか既存のゲームの話題などは、関連する他の スレでやってくれ。
- 311 名前:名前は開発中のものです。 mailto:sage [05/01/16 22:50:40 ID:IJy2W+As]
- PeekMessageを使ってるとか。
ゲームでは、間違っても使ってはいけない関数だからなぁ・・・
- 312 名前:名前は開発中のものです。 mailto:sage [05/01/17 00:27:46 ID:90hq1/Eg]
- >>311
ん?それは マルチスレッドでGetMessage使う場合と シングルスレッドでPeekMessageを使う場合とで 比較をしているのかなと勝手に脳内補間したんだけど、合ってる? で、この二者間のパフォーマンス差が(今時のPCで) どれほどのものか比較したうえでその見解? > 間違っても使ってはいけない関数 少なくとも、俺の環境(Athlon 1GHz + Radeon9200)で 自作の2Dアクションを組んだときは、どっちでもいいという結論に達したけど。
- 313 名前:名前は開発中のものです。 mailto:sage [05/01/17 06:41:28 ID:/r2ckyEZ]
- >>312
いや、マルチスレッドでGetMessageを使う場合と、 PeekMessageを使う場合とで比較しただけだから、 シングルスレッドは想定外。
- 314 名前:名前は開発中のものです。 mailto:sage [05/01/17 06:43:32 ID:dU23o/pP]
- >>313
GetMessageとPeekMessageを勘違いしてたわけか
- 315 名前:名前は開発中のものです。 mailto:sage [05/01/17 06:45:49 ID:dU23o/pP]
- あ、>>314取り消し
レスよく読んでなかったスマソ そろそろ寝るか_| ̄|○
- 316 名前:312 mailto:sage [05/01/17 23:45:43 ID:Y4/IgqbU]
- >>311
>>313 で、PeekMessageがゲームでは間違っても使ってはいけない関数 というのは具体的にどういう条件で出てくる話なの? 粘着してるわけでなく、率直な疑問。
- 317 名前:名前は開発中のものです。 mailto:sage [05/01/18 00:54:35 ID:ydi2Mvvf]
- >>316
PeekMessageループとマルチスレッドを併用すると、 悲惨な現象がいくつも発生する。 まず、PeekMessageループはCPU稼働率を100%に押し上げる。 CPU稼働率100%の状態でマルチスレッドを使用すると、 マルチスレッドの処理は異常に重くなり、マルチスレッド の動作期間中は、PeekMessageループの処理もガクガクになる。 あと、CPU稼働率を100%にしていると、ファンの音はウルサイし、 並列動作させてる別のアプリが異常に重くなるわ、Windowsは 動作不安定になるわ、マウスはマトモに反応しなくなるわ・・・ まあ、Pentium4以上ならCPUの追加機能があるから、 こうした現象は、発生しないかもね。
- 318 名前:名前は開発中のものです。 mailto:sage [05/01/18 01:54:12 ID:fRzX6xxO]
- PeekMessageというAPIは、貧弱なCPUを100%利用しつつ、かつ、
Windowsの動作も行うための命令だったと、漏れは思ってる。 けれども今は、マルチスレッドで同期を取りつつブン回しても、 普通のCPUでもパフォーマンス的には同等近い速度が出せるし、 さらに、Hyper-Threadingに対応したCPUなら、同じCPU稼働率 100%でも、マルチスレッドの方が高速になりかねん。 その意味では、PeekMessageループは、今は、 ほとんど不用なAPIでないかと思うんだよな。
- 319 名前:名前は開発中のものです。 mailto:sage [05/01/18 02:10:18 ID:1XF5tIKv]
- 「PeekMessageループ」などというAPIは存在しない。というのは置いといても、
普通Sleep(1)、最悪でもSleep(0)をはさんどくもんじゃないのか?
- 320 名前:名前は開発中のものです。 mailto:sage [05/01/18 07:36:34 ID:lXPOJuNH]
- OSとのやり取りが不安定になるだろ。
ただでさえ操作性が気になるジャンルなんだし、 DirectInputとのやり取りが不安定になるのは、勘弁してほしい。
- 321 名前:名前は開発中のものです。 mailto:sage [05/01/18 08:01:45 ID:bnzqLo0Q]
- そうなのか。俺は
while(1) { if(::PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE)) {// メッセージがあるか調べる if(!::GetMessage(&msg, NULL, 0, 0)) {// メッセージがとれない break; } ::TranslateMessage(&msg); ::DispatchMessage(&msg); } else// メッセージがないのなら独自の処理を { ::MsgWaitForMultipleObjects(0, NULL, FALSE, (ゲーム処理にかかった時間から適切な止める時間), QS_ALLINPUT); ゲームアップデート(); } } ってのがデフォだと思ってた_| ̄|○
- 322 名前:名前は開発中のものです。 mailto:sage [05/01/18 19:06:23 ID:X88J3aOH]
- 私は次のように解釈しています。
1) PeekMessage() だけでメッセージ(メイン)ループ → CPU 使用率 100% → 消費電力、発熱、Windows アプリとしての行儀の悪さが気になる。 2) フレーム毎に Sleep(0) を挿入する → プロセスの CPU 占有は解消できる。 → システムは依然として CPU 100% を示す。過剰発熱は続く。 3) フレーム毎に Sleep(n) を挿入する → 余剰時間を待機する。CPU を解放できる。 → ただし Sleep 中はメッセージループが滞ってしまう。やはり行儀が悪い。 4) そこでマルチスレッド。 メッセージループとメインループのスレッドを分ける。 ここで PeekMessage() すると (1) に戻ってしまうので GetMessage() を使う。 メインループは Sleep(n) などで fps を調節する。 ただ、ttp://homepage1.nifty.com/bee/tk/timer.html には 「GetMessage() はスレッドを停止しない」とあります。 PeekMessage() + WaitMessage() で代替すべきなのかも。
- 323 名前:名前は開発中のものです。 mailto:sage [05/01/18 22:17:15 ID:OsP497Jz]
- Sleep(n)で制御を他に渡すと、fpsの精度が(せっかくtimeBeginPeriodしてても)維持できない気が。
- 324 名前:名前は開発中のものです。 mailto:sage [05/01/18 22:53:48 ID:v1uoKNWT]
- まずは実験してみましょう。たまたま同じタイミングで
複数の重い処理が同時に実行される、なんて事がない限り、 気にならないと思うよ。
- 325 名前:名前は開発中のものです。 mailto:sage [05/01/19 02:29:32 ID:tOpn/RpV]
- Sleep(n)はtimeBeginPeriodしても制度が問題になることが多いよ
Sleepはなんだかんだで精度が保障されないしね たとえば次のフレームまで10msあいているのなら5msあけて そのあと役5msくらいsleep(0)で監視とかそういう小手先のテクが必要になる ちなみにSleep(n)でやばいのはノート系、とくにPentiumM搭載マシンは デフォの電源管理がデスクトップになっていないので可変クロックなわけだが Sleepで1以上をつかうとまったく安定しないのがよくわかる いまやPentiumMはデスクトップでもかなりの分野で使われているので これを考慮しないというのはもはやありえないべ
- 326 名前:名前は開発中のものです。 mailto:sage [05/01/19 03:00:23 ID:ibNY0vPj]
- sleepがダメなら何を使えばCPUを100%にさせずにFPSを維持させるんだ?
- 327 名前:名前は開発中のものです。 mailto:sage [05/01/19 03:13:09 ID:tOpn/RpV]
- 基本的にリアルタイムOS使ってない時点で妥協するしかあるまい
- 328 名前:名前は開発中のものです。 mailto:sage [05/01/19 07:54:38 ID:KlNdNs9J]
- >>326
俺は規定時間を満たさないなら(例えば1フレーム16ミリ秒)、Whileループさせてたけれど。 でも結局Sleepと同じか。
- 329 名前:名前は開発中のものです。 mailto:sage [05/01/19 11:21:05 ID:etvgdar6]
- ただのループ待ちだとCPUがMAXに熱くならない?
- 330 名前:名前は開発中のものです。 mailto:sage [05/01/19 21:12:30 ID:aKYZjqz+]
- 試しに 東方永夜抄 と Queen of Heart 99 で試してみましたが、
やぱCPU使用率100%になりますね。 ゲームだと100%になるのはしょうがないのかな。 エロゲとかはまた違うんだろうか。
- 331 名前:名前は開発中のものです。 mailto:sage [05/01/19 23:23:50 ID:kI8iKu4Y]
- こうなったらゲーム用のOSが欲しくなるな。
- 332 名前:名前は開発中のものです。 mailto:sage [05/01/20 00:33:28 ID:1MmCAp1f]
- 最近のマシンはCDから起動できるんだからそれ使えば
main()からブートするのがさくっとつくれるとおもわれ ただし、ビデオカードとかサウンドカードとかつかえないけどなー 公開されているパーツを集めてきて組み立てるのだ まぁ86系の場合boot面倒だからやるひとあまりいないとおもうけど 昔のPCの感覚でつかえるはずだ
- 333 名前:名前は開発中のものです。 mailto:sage [05/01/20 00:33:50 ID:wKUxX6sK]
- >>328
Sleepより悪い。というか最悪。
- 334 名前:名前は開発中のものです。 mailto:sage [05/01/20 01:05:45 ID:UKmHVJSG]
- 誰か>>332を解説してくれ
- 335 名前:名前は開発中のものです。 mailto:sage [05/01/20 01:09:15 ID:DPMkEMAS]
- 俺からも頼む
- 336 名前:名前は開発中のものです。 mailto:sage [05/01/20 01:23:02 ID:cRp2WmOq]
- スレッドはビジーループさせてもCPU100%いかないの?
- 337 名前:名前は開発中のものです。 mailto:sage [05/01/20 07:31:09 ID:2l+XOu2v]
- >>336
100%稼働させても、GetMessageなら安定動作してくれる。 まあ、スレッドの優先順位にもよるらしいが。
- 338 名前:名前は開発中のものです。 mailto:sage [05/01/20 07:34:11 ID:Ref4TFhU]
- 意訳
1段落目: 自分で1からOSを作ってブート可能なCD作ればいいじゃん (2行目は意味不明) 2段落: 翻訳不可能 ドライバのことだろうか? 3段落目: (省略) OS作ること自体は難しいだろうけど不可能じゃないよね OSを作ろうpart9 ttp://pc5.2ch.net/test/read.cgi/tech/1076217479/
- 339 名前:名前は開発中のものです。 mailto:sage [05/01/20 14:19:24 ID:XBff+/Qh]
- シングルスレッドならブートローダーさえあれば、OSは必要ないでしょ。
多分>>332は、こう言いたいと思われ 「一気にプログラム&データ読み込んでリセットベクタにエントリーすればフルパワーで全エリア使い放題」
- 340 名前:名前は開発中のものです。 mailto:sage [05/01/20 18:56:59 ID:DvGagJ0Z]
- 記憶媒体が無いと記憶させれんぞ。
それぞれの記憶媒体に対応させるデバドラは、どうすんだ?
- 341 名前:名前は開発中のものです。 mailto:sage [05/01/20 20:46:10 ID:U3Hu7z70]
- むしろMS-DOSでやれ。
- 342 名前:名前は開発中のものです。 mailto:sage [05/01/20 23:27:48 ID:Cat713Cg]
- LinuxとSDL使えばそれなりにできそうな気もする。激しく面倒そうだが。
記憶媒体はFDかUSBメモリあたりが妥当か?
- 343 名前:名前は開発中のものです。 mailto:sage [05/01/21 00:58:36 ID:ZvargaUa]
- >>342
Linuxという時点ですでにリアルタイム性が 割り込み応答でサウンドドライバ掛けたりラスタースクロールでいるくらいの応答性があれば問題なし
- 344 名前:名前は開発中のものです。 mailto:sage [05/01/21 01:15:21 ID:IN7lhuFe]
- >>343
ディスプレイによって画像同期周波数の違ってる問題とか、 どうするんだ? >>331 漏れ的には、PCで自由に開発出来るゲーム機が欲しいな。 実行させるだけならPCでもできるが、ゲーム機なら、 統一環境で実行させられる、みたいな感じで。 XBoxにはそーゆーのを期待してたんだが・・・
- 345 名前:名前は開発中のものです。 mailto:sage [05/01/21 01:18:33 ID:JDbvAaFT]
- >>344
そこでコンソールプログラミングですよ! XboxやGCはまだ敷居は高いですがお手軽なGBA、 ちょっと本格的にやりたいならDCなど各種取り揃えております。
- 346 名前:名前は開発中のものです。 mailto:sage [05/01/21 01:30:06 ID:MlXISHIM]
- PCで開発できて、PCでもゲーム機でも、
誰もが遊べる点がポイントな。
- 347 名前:名前は開発中のものです。 mailto:sage [05/01/21 01:34:39 ID:MlXISHIM]
- 特殊な環境がないとPCでは遊べないとか、そーゆーのでは駄目。
一般人のPCでも、ゲームとして遊べないとな。
- 348 名前:名前は開発中のものです。 mailto:sage [05/01/21 02:31:38 ID:V/hhRqKz]
- つまり、次のWindowsにXBoxエミュレータが標準搭載され、
次のVisual C++でXBoxのソフト開発が出来ればOKと。
- 349 名前:227 mailto:sage [05/01/21 06:00:37 ID:rVO9zRuX]
- >>312
PeekMessage関連は、何れ調べてみます。 現在はappWizが生成したコードまんまです。 見たところ、アクティブである場合>PeekMessage ない場合>GetMessage をコールしてるようです。 アクティブってのが、多分フォーカスとかも含んでるのかな?と。
- 350 名前:名前は開発中のものです。 mailto:sage [05/01/21 06:45:18 ID:6gp8NAog]
- >>346
ゲーム機メーカーはどうやって利益を上げるんだ。
- 351 名前:名前は開発中のものです。 mailto:sage [05/01/21 06:57:11 ID:IAlZHZ67]
- アクションゲーム製作総合スレッド・・・
- 352 名前:名前は開発中のものです。 mailto:sage [05/01/21 17:18:31 ID:i4hNq7ja]
- シューティングスレが寂しくなったので、ここでクダまいてるだけ
- 353 名前:名前は開発中のものです。 mailto:sage [05/01/21 20:27:46 ID:dR3s8yKc]
- >>350
音楽CDと同じで、面白いゲーム作れば売れるだろうし、 つまんねーゲーム作れば割れ厨の餌になる。ただそれだけの話だ。 要するに、つまんねーゲーム出してる所はさっさと潰れろと。
- 354 名前:名前は開発中のものです。 mailto:sage [05/01/21 20:41:37 ID:dR3s8yKc]
- >>350
新品のPCの方がゲーム機の性能より上かもしれんが、 中古PC性能はゲーム機より下。中古PCで遊んで、 面白かったらゲーム機を買うヤシだっているだろ。 そもそも、PCは仕事でしか使わないから性能イラネ! ってヤシも珍しくないし。 漏れなんて、3Dは未だにオンボードチップ使ってる。
- 355 名前:名前は開発中のものです。 mailto:sage [05/01/21 20:42:52 ID:dR3s8yKc]
- >>350
利益出てるのか?
- 356 名前:名前は開発中のものです。 mailto:sage [05/01/21 20:57:53 ID:dR3s8yKc]
- >>350
あと、利益の出し方は商売がうまいかヘタかの問題だしな。 少なくとも、PCはいらないけれどもPCゲームは遊びたい という人なら買うだろ。
- 357 名前:名前は開発中のものです。 mailto:sage [05/01/21 20:59:35 ID:dR3s8yKc]
- さてと、アクションゲームの話に戻すか。
藻前ら、ツールはどこまで作り込んでいますか?
- 358 名前:名前は開発中のものです。 mailto:sage [05/01/21 21:04:47 ID:dR3s8yKc]
- >>346
フリーウェアが大量に出回りそうだな・・・
- 359 名前:名前は開発中のものです。 mailto:sage [05/01/21 21:24:33 ID:Hoy2oMgd]
- よくできたコントだ
- 360 名前:名前は開発中のものです。 mailto:sage [05/01/21 23:23:10 ID:UuLd6x2c]
- 誰もが作れるほど敷居が低すぎると、クソゲーが増えて良作が埋もれる法則。
昔な、アメリカでアタリショックっていう現象があったんだ。
- 361 名前:名前は開発中のものです。 mailto:sage [05/01/22 01:25:19 ID:4Gqz2KBw]
- >>353-356
ゲーム機メーカーはそのハード用ゲームのライセンス料をゲーム製作メーカーから 取る事が主な収益構造だと思ったんだが。 その点で、だれでもタダ(あるいは安く)でつくれたら、どうやって儲けるんだって話。
- 362 名前:名前は開発中のものです。 mailto:sage [05/01/22 02:02:53 ID:SMeoGQLY]
- MSX
- 363 名前:名前は開発中のものです。 mailto:sage [05/01/22 04:14:06 ID:vgSLqLDM]
- >>361
それでようやく色々と納得できた。 単に、数出せれば良いというモノでもないのな。 まあ、既に数出まくりなわけだが・・・
- 364 名前:名前は開発中のものです。 mailto:sage [05/01/22 09:31:30 ID:rictG3Qy]
- >>353-358 これ全部同じヤツの連レスかよ!
>>353-356は全部>350へのレスかよ!一回のレスで済ませろよ。つうか自演? >357 名前:名前は開発中のものです。[sage] 投稿日:05/01/21(金) 20:59:35 ID:dR3s8yKc >さてと、アクションゲームの話に戻すか。 >藻前ら、ツールはどこまで作り込んでいますか? 1人で勝手に過熱しといて何が「さてと」だタコ >358 名前:名前は開発中のものです。[sage] 投稿日:05/01/21(金) 21:04:47 ID:dR3s8yKc >>>346 >フリーウェアが大量に出回りそうだな・・・ 戻ってねーじゃねーかよ!この糞が!
- 365 名前:名前は開発中のものです。 mailto:sage [05/01/22 10:02:30 ID:+QvrkUFh]
- >>364
ハゲワロス
- 366 名前:350=361 mailto:sage [05/01/22 10:26:27 ID:4Gqz2KBw]
- >>364
腹イタイ _no 。oO(気付かんかった……)
- 367 名前:名前は開発中のものです。 mailto:sage [05/01/22 16:27:38 ID:4spfk2UP]
- ケーブルとかでID同じ別人の可能性も一応。
「アタリショック」の嘘と誤解 ttp://d.hatena.ne.jp/hally/20040514
- 368 名前:名前は開発中のものです。 mailto:sage [05/01/22 17:02:44 ID:NPoqSETA]
- 俺も以前、偶然同スレで同じIDの奴にレスしちゃって
自演呼ばわりされたことがあるけど(レス先のやつはもっと可哀想だなw) これは違うと思うぞ…
- 369 名前:名前は開発中のものです。 mailto:sage [05/01/22 17:14:09 ID:y8MpdK29]
- マジでコントだな。
- 370 名前:350=361 mailto:sage [05/01/27 21:17:55 ID:tuNCjFSI]
- >>360
>367を踏まえると、売価0で成り立つ世界があるなら、あとはフィルタか モデレータ構造があればよいと思う。 今現在のフリーゲーム界隈の様子を見ると、作成側も紹介側も、それぞれ 直接金を取るモデルでなくても供給があるようだ。そして機能し続けている ように思われる。 したがって、「そんなゲームハードを出すメーカーがいる」という仮定を崩さない ならば、>360をもってゲームハードとその界隈を心配するのは杞憂だろう。
- 371 名前:名前は開発中のものです。 [05/02/21 04:08:25 ID:WfwXUAVw]
- スレ過疎化しちゃってますね。
同人サイキ、新バージョンUPしてみました(殆ど変化ありませんが) 後、偽ガルーダも公開してます。 www.geocities.jp/psyact_dev/ スクリプトやBGMの設定が機能してないので、出来れば近々最UPしたいと思ってます。
- 372 名前:名前は開発中のものです。 mailto:sage [05/02/21 12:59:35 ID:sfkjYuGK]
- 偽ガルーダ、やっぱりフルスクリーンになったあと終了しちゃうなあ。errlog出る前に終了してる。
同人サイキは起動できてerrlogも出てる。 RADEON9200、win2kでDX9、IE6。 もし楽ならウィンドウモードでの起動モードきぼんぬ
- 373 名前:名前は開発中のものです。 [05/02/22 02:53:39 ID:ikR8To/o]
- >>372
そうですか、、同じエンジン使ってるので、ゲーム側で何かしちゃってるのかも。 スイマセン。 config.txtというファイルがexeと同じフォルダにあるので、 FullScreenをfalseにして下さい。 偽ガルーダ、同人サイキどっちも存在します。 config.txtの設定、ホムペの方に書くの忘れてました。 追加しておきます。
- 374 名前:名前は開発中のものです。 mailto:sage [05/02/22 14:36:28 ID:p5aKw6II]
- 偽ガルーダが非常に気になるのでダウンロードさせてもらいましたが、
なぜか解凍できません。 解凍中にエラーが出て、空のフォルダ「偽ガルーダ」が作成さてしまいます。 しかも、そのフォルダを消そうと思っても削除できない・・・ こんな事は初めてなのですが、 なにか特殊な圧縮方法なのでしょうか?
- 375 名前:名前は開発中のものです。 mailto:sage [05/02/22 15:38:02 ID:hZBZtuyr]
- 単にダウンロードに失敗してるとか
- 376 名前:名前は開発中のものです。 mailto:sage [05/02/22 15:46:25 ID:p5aKw6II]
- 今もう一度ダウンロードしてみたのですが、やはり一緒です。
ちなみに解凍ソフトは +LhacaとWinRARを試してみました。 怖くて同人サイキの方は解凍してません・・・
- 377 名前:名前は開発中のものです。 mailto:sage [05/02/22 16:03:32 ID:hZBZtuyr]
- WinRARとeoとXP標準のzip解凍
3つともちゃんと解凍できた 1,306,864バイト
- 378 名前:名前は開発中のものです。 mailto:sage [05/02/22 16:49:25 ID:p5aKw6II]
- 今XP標準の解凍を使ったら、また空のフォルダが・・・
消せないフォルダがもう一個ふえてしまいました (ノω`)・゚・。。 作成された空のフォルダ「偽ガルーダ」は、開く事もできない。。。 zipファイルのサイズは 1.24 MB (1,306,864 バイト) でした。私のパソコン固有の問題でしょうか。 他のzipファイルは全て解凍できるのですが・・・ o(T_T)o モウダメポ
- 379 名前:372 mailto:sage [05/02/22 18:34:24 ID:uPHZl7kd]
- >>373
config.txtあったのか。サンクス ウィンドウモードだと、『0x47AA65の命令が"0x0"のメモリを参照しました』でエラー終了。errlog出る前
- 380 名前:名前は開発中のものです。 mailto:sage [05/02/22 19:31:22 ID:vokUp0uw]
- >>378
proxomitronとかファイアウォールを使っていたとかいう オチじゃないだろうな ダウンローダを変えるか、串もためしてみなよ。
- 381 名前:名前は開発中のものです。 [05/02/23 03:07:40 ID:Ep2lR8hE]
- >>378
すいません。ちょっと判らないです。 圧縮には、Explzhというソフトを使ってます。 たしかXPで標準対応してるという理由でZIPファイルを選択しました。 >>379 報告ありがとうございます。 errlogの所を見直してみます。 勘ですが、Direct3D等がdebugで再現するのかも。調べてみます。
- 382 名前:名前は開発中のものです。 mailto:sage [05/03/08 15:41:18 ID:fOr0Y383]
- 孤独にぬるく作りたかったんで、VB+Flashでアクションゲーム作ることにしてみた。
プログラムはVBでぬる〜く作成。 ゲームパッド、ファイル出力、解像度の設定もVB側で。 グラフィック、アニメーションはFlash。 まあ作るのは楽。こんなオーサリングソフトは個人じゃ作れない。 アニメーションとプログラムとのタイミングも簡単にとれる。 サウンド周りも全部Flash側で鳴らせるようにした。 Flashコンポーネントひとつでいいから互換性やバグに悩まないですみ手軽。それでいて短期間で見栄えよくできた。 問題はFlashは重く、あまり沢山のオブジェクトを表示できないが工夫の余地はある。
- 383 名前:名前は開発中のものです。 [05/03/11 12:30:44 ID:2wjY2/65]
- 角度を決めて弾を打ち出すのって、どうすればできますか?
物理得意な方お願いします。
- 384 名前:名前は開発中のものです。 mailto:sage [05/03/11 12:38:40 ID:qssgl8ma]
- 指定した角度で弾を移動させればいい。物理関係ない。
- 385 名前:383 mailto:sage [05/03/11 12:44:58 ID:2wjY2/65]
- x軸方向とy軸方向への移動を別々に考えて移動させてたんですけど、
角度を考えるとなると、その書き方が分からないのです。
- 386 名前:名前は開発中のものです。 mailto:sage [05/03/11 12:49:11 ID:wol0IT/T]
- >>383
>物理得意 数学 // 角度=ラジアン x=cosf(角度)*移動量; y=sinf(角度)*移動量;
- 387 名前:383 mailto:sage [05/03/11 13:16:41 ID:2wjY2/65]
- なかなか、うまくできない・・・。
ソースアップしてもいいですか?
- 388 名前:名前は開発中のものです。 mailto:sage [05/03/11 14:23:37 ID:HTa5DsJA]
- >387
その場合、1レスに収まらないならテキストでアップロードしろよ
- 389 名前:383 mailto:sage [05/03/11 14:40:10 ID:2wjY2/65]
- >>388
普通のあぷろだ37869にプロジェクトファイルごとアップしました。 なにとぞご教授おねがいします。 パスは「角度決めて発射」です。
- 390 名前:名前は開発中のものです。 mailto:sage [05/03/11 14:56:01 ID:cHGKos1z]
- ごめん、言い方が悪かったかもしれない…
丸ごと来るとは思わなかった
- 391 名前:名前は開発中のものです。 mailto:sage [05/03/11 14:56:56 ID:iFNRRCmz]
- まあまあリンクぐらい貼っとけ。
www.rupan.org/~kain/cgi-bin/upload/src/up37869.zip.html
- 392 名前:名前は開発中のものです。 mailto:sage [05/03/11 15:11:01 ID:cHGKos1z]
- あんまし考えないで書いたけど玉の処理はこんな感じで良いの?
tama_old_x = tama_x; tama_old_y = tama_y; /* 3.14/180.0はマクロ化したほうが見やすいけど面倒だから省く */ x_mov = cosf(ue*3.14/180.0)*pow; y_mov = sinf(ue*3.14/180.0)*pow; tama_x+=x_mov; tama_y-=y_mov-gra;
- 393 名前:383 mailto:sage [05/03/11 15:17:48 ID:2wjY2/65]
- >>392
すごい、できてますね。 ちょっと感動・・・。
- 394 名前:383 mailto:sage [05/03/11 15:30:44 ID:2wjY2/65]
- ついでに、棒に当たった時の反射角はどう算出したらいいでしょうか。
この棒は30度に設定してあります。
- 395 名前:名前は開発中のものです。 mailto:sage [05/03/11 16:55:54 ID:BPAC//R0]
- うぜーーーー
- 396 名前:名前は開発中のものです。 mailto:sage [05/03/11 17:06:15 ID:wol0IT/T]
- プログラム組まない(組めない)プログラマ増殖中
- 397 名前:名前は開発中のものです。 mailto:sage [05/03/11 18:29:28 ID:Ajs4EMBm]
- それくらい検索汁。または図を描け。
- 398 名前:名前は開発中のものです。 mailto:sage [05/03/11 18:55:01 ID:J61NQ7VU]
- それこそ高校物理の世界だなー
がんばって勉強しる
- 399 名前:383 mailto:sage [05/03/11 18:56:11 ID:2wjY2/65]
- がんばります。
- 400 名前:名前は開発中のものです。 mailto:sage [05/03/13 16:36:38 ID:fL2BiXJ1]
- PS2のドラゴンボールZ〜Z3みたいなゲーム作りたいorz
- 401 名前:名前は開発中のものです。 mailto:sage [05/03/13 17:57:44 ID:ynjg3961]
- ならまずアルゴリズムを理解することだ
- 402 名前:名前は開発中のものです。 mailto:sage [05/03/14 07:35:22 ID:JuMY8nMU]
- >400
目標を高く持つことはいいことじゃが プログラミングというものはじゃな 一足飛びには身に付かんものなのじゃよ ここはじゃな 急がば回れと言う格言通りにじゃな ブロック崩しから始めてみてはどうじゃろか?
- 403 名前:名前は開発中のものです。 mailto:sage [05/03/18 20:08:39 ID:W6vbnPE1]
- 初心者にはワンキーゲームがオススメかモナー。
- 404 名前:名前は開発中のものです。 mailto:sage [05/03/20 19:24:41 ID:zaNdVfwo]
- たしざんゲームにしとけ
- 405 名前:名前は開発中のものです。 mailto:sage [05/03/20 19:38:09 ID:xFvuiUNr]
- それって、ゲームというよりは、
「さんすう」ソフトの間違いかと。
- 406 名前:名前は開発中のものです。 mailto:sage [2005/03/23(水) 00:42:53 ID:3cWT/ehY]
- 2Dのロックマンみたいなゲーム作っているんですが、
二次元配列でマップチップをちりばめてステージを 作っている場合、どうやって当たり判定するんですか?? ロックマンみたいな重力を考慮しないと駄目な 時は「自キャラの底のY座標 > 物体の頭のY座標・・・」 の様に判定して自キャラの底のY座標が入っている変数に、当たっている物体の頭のY座標 を代入するのではうまくいかないのですが、、どなたかヒントを頂けませんでしょうか。 分かりにくい文章ですみません。。
- 407 名前:名前は開発中のものです。 mailto:sage [2005/03/23(水) 03:06:26 ID:UGovkUa+]
- せっかくマップチップを使ってるんだ
マップチップで通れるか否かの判定しちゃえ 座標で考えるんじゃなくてチップ単位で処理するようにしたら楽 #座標をチップ単位に変換するのがちょっと面倒だけども
- 408 名前:名前は開発中のものです。 mailto:sage [2005/03/23(水) 11:37:05 ID:3cWT/ehY]
- >>407
なるほど…。チップが16*16の時は座標/16…? う〜ん、もう少しヒントを頂けませんか?
- 409 名前:名前は開発中のものです。 mailto:sage [2005/03/23(水) 13:15:03 ID:UGovkUa+]
- キャラの頭,足,右手,左手の座標があったら楽
頭の部分の判定 int i; for(i=左手/チップの大きさ;i<=右手/チップの大きさ;i++){ if(マップの配列[i][(頭+移動量)/チップの大きさ] が通過できないチップなら){ 移動量=-(頭-((頭+移動量)/チップの大きさ*チップの大きさ+(チップの大きさ-1)-1); } } こんな感じかな
- 410 名前:名前は開発中のものです。 mailto:sage [2005/03/23(水) 18:57:46 ID:3cWT/ehY]
- おお、ありがとうございます!
早速試してみます。
- 411 名前:名前は開発中のものです。 mailto:sage [2005/03/23(水) 21:58:19 ID:UGovkUa+]
- >>409
マップの配列は[横][縦]を前提としてるからその辺注意ね
|

|