アクションゲーム製作総合スレッド Part1at GAMEDEV
アクションゲーム製作総合スレッド Part1 - 暇つぶし2ch353:名前は開発中のものです。
05/01/21 20:27:46 dR3s8yKc
>>350
音楽CDと同じで、面白いゲーム作れば売れるだろうし、
つまんねーゲーム作れば割れ厨の餌になる。ただそれだけの話だ。
要するに、つまんねーゲーム出してる所はさっさと潰れろと。


354:名前は開発中のものです。
05/01/21 20:41:37 dR3s8yKc
>>350
新品のPCの方がゲーム機の性能より上かもしれんが、
中古PC性能はゲーム機より下。中古PCで遊んで、
面白かったらゲーム機を買うヤシだっているだろ。
そもそも、PCは仕事でしか使わないから性能イラネ!
ってヤシも珍しくないし。

漏れなんて、3Dは未だにオンボードチップ使ってる。


355:名前は開発中のものです。
05/01/21 20:42:52 dR3s8yKc
>>350
利益出てるのか?

356:名前は開発中のものです。
05/01/21 20:57:53 dR3s8yKc
>>350
あと、利益の出し方は商売がうまいかヘタかの問題だしな。
少なくとも、PCはいらないけれどもPCゲームは遊びたい
という人なら買うだろ。


357:名前は開発中のものです。
05/01/21 20:59:35 dR3s8yKc
さてと、アクションゲームの話に戻すか。
藻前ら、ツールはどこまで作り込んでいますか?


358:名前は開発中のものです。
05/01/21 21:04:47 dR3s8yKc
>>346
フリーウェアが大量に出回りそうだな・・・

359:名前は開発中のものです。
05/01/21 21:24:33 Hoy2oMgd
よくできたコントだ

360:名前は開発中のものです。
05/01/21 23:23:10 UuLd6x2c
誰もが作れるほど敷居が低すぎると、クソゲーが増えて良作が埋もれる法則。
昔な、アメリカでアタリショックっていう現象があったんだ。

361:名前は開発中のものです。
05/01/22 01:25:19 4Gqz2KBw
>>353-356
ゲーム機メーカーはそのハード用ゲームのライセンス料をゲーム製作メーカーから
取る事が主な収益構造だと思ったんだが。
その点で、だれでもタダ(あるいは安く)でつくれたら、どうやって儲けるんだって話。

362:名前は開発中のものです。
05/01/22 02:02:53 SMeoGQLY
MSX

363:名前は開発中のものです。
05/01/22 04:14:06 vgSLqLDM
>>361
それでようやく色々と納得できた。
単に、数出せれば良いというモノでもないのな。
まあ、既に数出まくりなわけだが・・・

364:名前は開発中のものです。
05/01/22 09:31:30 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:名前は開発中のものです。
05/01/22 10:02:30 +QvrkUFh
>>364
ハゲワロス

366:350=361
05/01/22 10:26:27 4Gqz2KBw
>>364
腹イタイ

 _no  。oO(気付かんかった……)

367:名前は開発中のものです。
05/01/22 16:27:38 4spfk2UP
ケーブルとかでID同じ別人の可能性も一応。

「アタリショック」の嘘と誤解
URLリンク(d.hatena.ne.jp)

368:名前は開発中のものです。
05/01/22 17:02:44 NPoqSETA
俺も以前、偶然同スレで同じIDの奴にレスしちゃって
自演呼ばわりされたことがあるけど(レス先のやつはもっと可哀想だなw)
これは違うと思うぞ…

369:名前は開発中のものです。
05/01/22 17:14:09 y8MpdK29
マジでコントだな。

370:350=361
05/01/27 21:17:55 tuNCjFSI
>>360
>367を踏まえると、売価0で成り立つ世界があるなら、あとはフィルタか
モデレータ構造があればよいと思う。
今現在のフリーゲーム界隈の様子を見ると、作成側も紹介側も、それぞれ
直接金を取るモデルでなくても供給があるようだ。そして機能し続けている
ように思われる。
したがって、「そんなゲームハードを出すメーカーがいる」という仮定を崩さない
ならば、>360をもってゲームハードとその界隈を心配するのは杞憂だろう。

371:名前は開発中のものです。
05/02/21 04:08:25 WfwXUAVw
スレ過疎化しちゃってますね。

同人サイキ、新バージョンUPしてみました(殆ど変化ありませんが)
後、偽ガルーダも公開してます。
URLリンク(www.geocities.jp)

スクリプトやBGMの設定が機能してないので、出来れば近々最UPしたいと思ってます。

372:名前は開発中のものです。
05/02/21 12:59:35 sfkjYuGK
偽ガルーダ、やっぱりフルスクリーンになったあと終了しちゃうなあ。errlog出る前に終了してる。
同人サイキは起動できてerrlogも出てる。
RADEON9200、win2kでDX9、IE6。
もし楽ならウィンドウモードでの起動モードきぼんぬ

373:名前は開発中のものです。
05/02/22 02:53:39 ikR8To/o
>>372
そうですか、、同じエンジン使ってるので、ゲーム側で何かしちゃってるのかも。
スイマセン。

config.txtというファイルがexeと同じフォルダにあるので、
FullScreenをfalseにして下さい。
偽ガルーダ、同人サイキどっちも存在します。
config.txtの設定、ホムペの方に書くの忘れてました。
追加しておきます。

374:名前は開発中のものです。
05/02/22 14:36:28 p5aKw6II
偽ガルーダが非常に気になるのでダウンロードさせてもらいましたが、
なぜか解凍できません。
解凍中にエラーが出て、空のフォルダ「偽ガルーダ」が作成さてしまいます。
しかも、そのフォルダを消そうと思っても削除できない・・・

こんな事は初めてなのですが、
なにか特殊な圧縮方法なのでしょうか?

375:名前は開発中のものです。
05/02/22 15:38:02 hZBZtuyr
単にダウンロードに失敗してるとか

376:名前は開発中のものです。
05/02/22 15:46:25 p5aKw6II
今もう一度ダウンロードしてみたのですが、やはり一緒です。
ちなみに解凍ソフトは
+LhacaとWinRARを試してみました。

怖くて同人サイキの方は解凍してません・・・

377:名前は開発中のものです。
05/02/22 16:03:32 hZBZtuyr
WinRARとeoとXP標準のzip解凍
3つともちゃんと解凍できた
1,306,864バイト

378:名前は開発中のものです。
05/02/22 16:49:25 p5aKw6II
今XP標準の解凍を使ったら、また空のフォルダが・・・
消せないフォルダがもう一個ふえてしまいました (ノω`)・゚・。。
作成された空のフォルダ「偽ガルーダ」は、開く事もできない。。。

zipファイルのサイズは
1.24 MB (1,306,864 バイト)
でした。私のパソコン固有の問題でしょうか。
他のzipファイルは全て解凍できるのですが・・・ o(T_T)o モウダメポ

379:372
05/02/22 18:34:24 uPHZl7kd
>>373
config.txtあったのか。サンクス
ウィンドウモードだと、『0x47AA65の命令が"0x0"のメモリを参照しました』でエラー終了。errlog出る前

380:名前は開発中のものです。
05/02/22 19:31:22 vokUp0uw
>>378
proxomitronとかファイアウォールを使っていたとかいう
オチじゃないだろうな

ダウンローダを変えるか、串もためしてみなよ。

381:名前は開発中のものです。
05/02/23 03:07:40 Ep2lR8hE
>>378
すいません。ちょっと判らないです。
圧縮には、Explzhというソフトを使ってます。
たしかXPで標準対応してるという理由でZIPファイルを選択しました。

>>379
報告ありがとうございます。
errlogの所を見直してみます。
勘ですが、Direct3D等がdebugで再現するのかも。調べてみます。

382:名前は開発中のものです。
05/03/08 15:41:18 fOr0Y383
孤独にぬるく作りたかったんで、VB+Flashでアクションゲーム作ることにしてみた。

プログラムはVBでぬる~く作成。
ゲームパッド、ファイル出力、解像度の設定もVB側で。
グラフィック、アニメーションはFlash。
まあ作るのは楽。こんなオーサリングソフトは個人じゃ作れない。
アニメーションとプログラムとのタイミングも簡単にとれる。
サウンド周りも全部Flash側で鳴らせるようにした。
Flashコンポーネントひとつでいいから互換性やバグに悩まないですみ手軽。それでいて短期間で見栄えよくできた。
問題はFlashは重く、あまり沢山のオブジェクトを表示できないが工夫の余地はある。

383:名前は開発中のものです。
05/03/11 12:30:44 2wjY2/65
角度を決めて弾を打ち出すのって、どうすればできますか?
物理得意な方お願いします。


384:名前は開発中のものです。
05/03/11 12:38:40 qssgl8ma
指定した角度で弾を移動させればいい。物理関係ない。

385:383
05/03/11 12:44:58 2wjY2/65
x軸方向とy軸方向への移動を別々に考えて移動させてたんですけど、
角度を考えるとなると、その書き方が分からないのです。


386:名前は開発中のものです。
05/03/11 12:49:11 wol0IT/T
>>383
>物理得意
数学

// 角度=ラジアン
x=cosf(角度)*移動量;
y=sinf(角度)*移動量;


387:383
05/03/11 13:16:41 2wjY2/65
なかなか、うまくできない・・・。
ソースアップしてもいいですか?

388:名前は開発中のものです。
05/03/11 14:23:37 HTa5DsJA
>387
その場合、1レスに収まらないならテキストでアップロードしろよ

389:383
05/03/11 14:40:10 2wjY2/65
>>388
普通のあぷろだ37869にプロジェクトファイルごとアップしました。
なにとぞご教授おねがいします。
パスは「角度決めて発射」です。

390:名前は開発中のものです。
05/03/11 14:56:01 cHGKos1z
ごめん、言い方が悪かったかもしれない…
丸ごと来るとは思わなかった

391:名前は開発中のものです。
05/03/11 14:56:56 iFNRRCmz
まあまあリンクぐらい貼っとけ。
URLリンク(www.rupan.org)

392:名前は開発中のものです。
05/03/11 15:11:01 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
05/03/11 15:17:48 2wjY2/65
>>392
すごい、できてますね。
ちょっと感動・・・。

394:383
05/03/11 15:30:44 2wjY2/65
ついでに、棒に当たった時の反射角はどう算出したらいいでしょうか。
この棒は30度に設定してあります。


395:名前は開発中のものです。
05/03/11 16:55:54 BPAC//R0
うぜーーーー

396:名前は開発中のものです。
05/03/11 17:06:15 wol0IT/T
プログラム組まない(組めない)プログラマ増殖中

397:名前は開発中のものです。
05/03/11 18:29:28 Ajs4EMBm
それくらい検索汁。または図を描け。

398:名前は開発中のものです。
05/03/11 18:55:01 J61NQ7VU
それこそ高校物理の世界だなー
がんばって勉強しる

399:383
05/03/11 18:56:11 2wjY2/65
がんばります。

400:名前は開発中のものです。
05/03/13 16:36:38 fL2BiXJ1
PS2のドラゴンボールZ~Z3みたいなゲーム作りたいorz

401:名前は開発中のものです。
05/03/13 17:57:44 ynjg3961
ならまずアルゴリズムを理解することだ

402:名前は開発中のものです。
05/03/14 07:35:22 JuMY8nMU
>400
目標を高く持つことはいいことじゃが
プログラミングというものはじゃな
一足飛びには身に付かんものなのじゃよ
ここはじゃな
急がば回れと言う格言通りにじゃな
ブロック崩しから始めてみてはどうじゃろか?

403:名前は開発中のものです。
05/03/18 20:08:39 W6vbnPE1
初心者にはワンキーゲームがオススメかモナー。


404:名前は開発中のものです。
05/03/20 19:24:41 zaNdVfwo
たしざんゲームにしとけ

405:名前は開発中のものです。
05/03/20 19:38:09 xFvuiUNr
それって、ゲームというよりは、
「さんすう」ソフトの間違いかと。

406:名前は開発中のものです。
05/03/23 00:42:53 3cWT/ehY
2Dのロックマンみたいなゲーム作っているんですが、
二次元配列でマップチップをちりばめてステージを
作っている場合、どうやって当たり判定するんですか??

ロックマンみたいな重力を考慮しないと駄目な
時は「自キャラの底のY座標 > 物体の頭のY座標・・・」
の様に判定して自キャラの底のY座標が入っている変数に、当たっている物体の頭のY座標
を代入するのではうまくいかないのですが、、どなたかヒントを頂けませんでしょうか。
分かりにくい文章ですみません。。

407:名前は開発中のものです。
05/03/23 03:06:26 UGovkUa+
せっかくマップチップを使ってるんだ
マップチップで通れるか否かの判定しちゃえ

座標で考えるんじゃなくてチップ単位で処理するようにしたら楽
#座標をチップ単位に変換するのがちょっと面倒だけども

408:名前は開発中のものです。
05/03/23 11:37:05 3cWT/ehY
>>407
なるほど…。チップが16*16の時は座標/16…?
う~ん、もう少しヒントを頂けませんか?

409:名前は開発中のものです。
05/03/23 13:15:03 UGovkUa+
キャラの頭,足,右手,左手の座標があったら楽

頭の部分の判定
int i;
for(i=左手/チップの大きさ;i<=右手/チップの大きさ;i++){
 if(マップの配列[i][(頭+移動量)/チップの大きさ] が通過できないチップなら){
  移動量=-(頭-((頭+移動量)/チップの大きさ*チップの大きさ+(チップの大きさ-1)-1);
 }
}

こんな感じかな

410:名前は開発中のものです。
05/03/23 18:57:46 3cWT/ehY
おお、ありがとうございます!
早速試してみます。

411:名前は開発中のものです。
05/03/23 21:58:19 UGovkUa+
>>409
マップの配列は[横][縦]を前提としてるからその辺注意ね

412:名前は開発中のものです。
05/03/24 01:14:47 5VtHBaep
漠然とした質問だけれど。
アクションゲームにタスクシステムってどう?なかなか便利そうでそれで実装しようかと思ってんだが、
シューティングとかオブジェクトが多いもの向けな感じがするんだわ。3Dゼルダとかわんさか
オブジェクトが出てくるわけじゃないゲームとかだと、使ってないのかな などと思って。

どう?ってのも漠然としすぎてるんで、このスレの中にタスクシステムで実装してる人いるかな と思った次第。

413:名前は開発中のものです。
05/03/24 13:41:09 GOe2RJsQ
409さんのサンプルを参考に、自キャラが物体に乗った時の判定を
してみました。マップは[縦][横]=[30][40]で、チップの大きさは16*16です。

int j,i;
for (j = 0; j < 30; j++) {
for (i = 0; i < 40; i++) {
if (マップの配列[j][i] が通過できないチップなら) {
if(右手X座標 > i*16 &&
左手X < i*16 + 16 &&
足Y座標 > j*16 &&
足Y座標 < j*16 + 16){
頭Y座標 = j * 16 - 21; // キャラの縦の長さが21なので引いています
フラグ = true;
} else if (右手X座標 <= i*16 || 左手X座標 >= i*16 + 16) {
フラグ = false;
}
}
}
}

フラグがfalseの時(当たっていない時)は常にY座標を減算(8ずつ)するようにしています。
でもなぜか、フラグをチェックすると常時falseになっていて、一応、物体に
乗っているのですが8めりこんでいます。。もう一度、ヒントを頂けませんでしょうか。

414:413
05/03/24 13:43:11 GOe2RJsQ
あれ、スペースが入ってない…汗

415:名前は開発中のものです。
05/03/24 16:37:31 qEAHO4/J
行頭の半角スペースや連続した半角スペースは削除されちゃう
全角スペースに置換がてっとりばやい

416:名前は開発中のものです。
05/03/24 16:53:56 u7Oj2rIN
>>413
8進んでめり込んだあとに判定しちゃってるからだと思う
>409のは頭+移動量になってるからめり込む前に判定に入れる

417:名前は開発中のものです。
05/03/25 07:40:06 6vHhet0i
ふと思ったんだが、行動のモードを歩行とジャンプに分けるとして
それに落下モードを加えるのはデフォなのか?

ジャンプボタン離した時から上昇減速して落下とか
歩いてて地面が無くなったから落下とかの場合を考えると
そっちの方が簡単になるかな?と、ふと思いついたんだが
実はこっちの考え方の方が当たり前なのかも?と思ったんで。


418:名前は開発中のものです。
05/03/25 08:29:03 8zUnsj04
ジャンプ可能なアクションでは、足元に床が無ければ、
無条件に落下するのがデフォかと。ちなみに、床の有無の判定は、
ジャンプするかどうかの判定と一緒にやらない方が良いぞ。
かなりの確立で変なバグが出る。

1、足元に床があるかどうかの判別(ジャンプ処理用)
2、動作処理。
3、足元に床があるかどうかの判別(落下処理用)
4、落下処理。

ってな感じかな?

419:名前は開発中のものです。
05/03/25 14:12:26 UNQW+4b1
足元に床があるかどうかの判別をやって、
床フラグに反映させて、ジャンプしたら
床フラグをクリアする処理の方が良いな。


420:名前は開発中のものです。
皇紀2665/04/01(金) 14:35:11 ByLPmBAa
俺もマップチップとの当たり判定が微妙にうまくいかないのでageておく。
それは皇紀2665年の事であった・・・続く。

421:名前は開発中のものです。
皇紀2665/04/01(金) 18:26:57 Avk562TJ
最終手段として色で判定するというのもあるけどな

422:名前は開発中のものです。
05/04/02 16:58:54 bcEeWavw
なかなか面白い

URLリンク(www.malware.com)

423:名前は開発中のものです。
05/04/02 17:12:17 s9Y8P34v
>>422
いきなり自動的にヘンなソフトを
ダウンロードするページみたいだが、何だこれ?
妖しいからキャンセルしたが。

424:名前は開発中のものです。
05/04/02 17:30:20 bcEeWavw
URLリンク(www.runarudo.flnet.org)

425:名前は開発中のものです。
05/04/02 17:33:59 nltxwWQf
>>423
もう手遅れ

426:名前は開発中のものです。
05/04/02 18:06:32 IBVnthMA
>>423
ダウンロードしなけりゃ大丈夫だよ。
ダウンロードしたなら、HDをフォーマットした方がいいな。
多分、OSが変になるから。


427:420
05/04/04 22:21:39 W+uWA9ao
矩形情報を持ったオブジェクトが不可侵のマップチップと衝突したときに、めり込んだ分だけ位置を補正する処理なんだけど
振動したり、壁にくっついちゃったり、きれいにできない
みんなどんな感じでやってるか流れだけでいいから教えてくれー

今時の2Dアクションのマップって、描画は一枚絵、データは線分の集合で衝突判定は法線を元に、とかやってんだろうか
つーか最近の2Dアクション知らねーや俺

428:名前は開発中のものです。
05/04/05 00:14:28 DoQMdZY/
ひょっとして、めり込んだ後に補正処理してないかい?

1.移動する前に次の座標(移動先)を算出する
2.めり込まないならそのままGO
3.めり込みそうなら障害物の直前で止める

でいけそうなもんだが。

429:名前は開発中のものです。
05/04/05 00:17:20 DoQMdZY/
3Dゲームで主に使われてるけど、420さんの判定方法なら参考になるかも:)
URLリンク(www.cam.hi-ho.ne.jp)


430:名前は開発中のものです。
05/04/05 02:19:31 vtEI2kJK
>>428
この方法の場合、複数の物体があった場合に、
片方の手前で止めたら別の方の物体にめり込んだ、
なんて現象が発生する事もあるので、注意して作る事。


431:名前は開発中のものです。
05/04/05 02:28:58 QYk/Va0v
>>428
あとブロックより移動量が大きくなっちゃうとすり抜けちゃうんだっけ?
まあ、そこまで移動量が大きくなることはほとんど無いだろうけども

432:420
05/04/05 16:44:56 7/2TXIWe
やったできたー!
・速度の補正に、現在の位置ではなく新しい位置を使っていた
・オブジェクトの持つ矩形の幅、高さのoriginの問題
が主な原因でした

>>428-431
参考になりましたありがとう!固体感ハァハァ

433:名前は開発中のものです。
05/04/10 18:51:47 0EywJ/hC
VFや鉄拳のようなカメラワークはどうすれば実現できるんでしょうか。
2キャラ間の中心を見るようにしてあとはカメラを中心点から垂直にずらした位置へ
動かせばいいのかと思ってたらその目標地点の算出に手間取り。

もしかして考え方自体が違う?

434:名前は開発中のものです。
05/04/12 01:06:19 KPKJ9Df5
いいと思うよ。
2人のキャラの中心点をA、Bとすると、カメラの視線の先をCとするとC=(A+B)/2だよね。
カメラが存在する位置はC→A(C→B)のベクトルを90度回転させてもうちょっと伸ばせばいいんじゃないかな。
表記が分かりづらくてスマソ

435:名前は開発中のものです。
05/04/17 19:47:49 AVCbiNha
>>434
少々遅れたけどサンクス。
どうもC→Aの部分を間違えてたみたい。
その後も伸ばすときにwhile使ったりしてかなりテンパってたようだ…。

436:名前は開発中のものです。
05/05/07 12:27:56 5VRbH+3P
ほすage

437:名前は開発中のものです。
05/05/07 12:28:45 5VRbH+3P
下げ

438:名前は開発中のものです。
05/05/13 19:44:59 URgSvp8O
まったくの初心者が最終的にロックマンXを作ろうと思ってます。
とりあえず色々調べたり試しに簡単なのを作ってみようと思ってるのですが、
ツールや言語が色々あってどれを使おうか迷ってます。
ロックマン作るならこれだ!とか、これはだめだ!とかあったら教えてください。
どれもあまり変わらないものですか?
ちなみに2Dです。

あと、垂直の壁を登る壁蹴りなんてアクションはプログラムしだいでどうにかなりますか?

439:名前は開発中のものです。
05/05/13 21:13:00 wwYAXCZ1
ZGEがいいよ。

440:名前は開発中のものです。
05/05/13 21:41:41 oNN8yFJZ
あなたはロックマンは神が創ったものとでも思ってるんですか?
人間が作ったなら出来るに決まってるじゃないですか。
迷ってる?ならVC++でも買えばいいじゃないですか。10万あれば買えますよ。
ちなみにDelphiはだめですよ。VCLがうんちです。ZGEはマンモス太郎です。
そんな事よりACT系作るなら物理の勉強でもしろ。

441:名前は開発中のものです。
05/05/13 22:21:20 Fb21TaQW
VC++なんて過去の遺物はやめておけ。
参照じゃないクラスなんて考え方が古すぎてめんどっちい。
DelphiのVCLは神です。
JAVA SDKやC#の.NET Frameworkだったら超神です。

というか、HSPでもActive Basicでもなんでもいい。

442:名前は開発中のものです。
05/05/13 23:25:08 O6f7T5KT
C言語とDirectX

443:438
05/05/13 23:59:20 URgSvp8O
みなさんレスありがとうございます。
何を使うかよりどう使うか、うまく使えるかが大事なようですね。
まだ迷ってますがみなさんの意見も参考にして頑張っていこうと思います。
それでは、ありがとうございました。

444:名前は開発中のものです。
05/05/14 15:22:49 Gqt+hLdh
>>443
GameMakerで作るという手もある。
サンプルにロックマンのパクリがあるし・・・w

URLリンク(www.gamemaker.nl)
Top
>Games
 >Stand Alone Games

専用スレもあるよ。
【2D】ゲーム作成ツールGameMaker【マンセー】
スレリンク(gamedev板)

445:438
05/05/14 23:38:10 LROjirKM
>>444
レスありがとうございます。
GameMakerはダウンロード済みです。使うか判りませんが。
とりあえずまだサイトめぐりの段階です。

446:名前は開発中のものです。
05/06/04 19:47:34 F9U0FxWx
イースみたいに見下ろし型のARPGで
斜めの壁にぶつかったら勝手にズレてくれるる奴って
マップの地形データに斜めの情報も入れとけばいいんですか?
それとも周囲の地形からそのつど判定した方がいいですか?

447:名前は開発中のものです。
05/06/05 04:13:09 xdkgVqy1
>>446
大抵の場合は後者。

448:名前は開発中のものです。
05/06/07 12:10:07 YHhQeV4B
アクション用の素材ってツクールの素材以外だと、どこに素材がありますか?
素材がNEEEE

449:名前は開発中のものです。
05/06/07 12:57:37 bY/pc+ah
そういや見たこと無いな。
まあ他のジャンルと比べると、規格化の難しいジャンルだからな……


450:名前は開発中のものです。
05/06/12 20:06:19 WhyZAEvM
アクションもガンガレ!

451:名前は開発中のものです。
05/06/14 17:25:03 9FWtswMc
はじめまして。
さっきアクションゲースレがあるのを知らずに、
「ゲームのアルゴリズムを教えて」スレに書いちゃったんだけど、
マリオみたいなアクションゲーを作るにあたって、
スクロール・キャラクタ・当たり判定の管理方法の定石とか良い方法ってありますか?
見下ろしのRPGみたいに、自キャラを画面の中心に固定すると、
マップの端に来たときに、

(◇=自キャラ、■=壁)
              ■■■■■■
              ■■■■■■
              ■■■■■■
          ◇■■■■■■
■■■■■■■■■■■■■
■■■■■■■■■■■■■
■■■■■■■■■■■■■

これだと天井は見えないし、床の奥の方やマップのかなり奥の方まで見えちゃって、
美しくないしゲーム性にも難が出るでしょ。
結構古くから横スクロール系ACTゲームでは、

■■■■■■■■■■■■■
                      ■■
                      ■■
                      ■■
                  ◇■■
■■■■■■■■■■■■■
■■■■■■■■■■■■■

端まで来ると自キャラ中心じゃなくなるじゃん。これってどうやってるんですか?

452:名前は開発中のものです。
05/06/14 17:45:15 SX+8LP/H
画面の位置とキャラの位置を別々に管理してるだけ。

キャラの位置(x,y)
画面の位置(gx,gy)
マップの幅と高さ(mw,mh)
画面の幅と高さ(gw,gh)


453:名前は開発中のものです。
05/06/14 18:19:46 QN6CFzmy
キャラの位置(x,y)
画面の左上の位置(gx,gy)
マップの幅と高さ(mw,mh)
画面の幅と高さ(gw,gh)

gx = x - gw / 2;
gy = y - gh / 2;
if( gx < 0 )gx = 0;
if( gy < 0 )gy = 0;
if( gx + gw < mw )gx = mw - gw;
if( gy + gh < mh )gy = mw - gh;

あとは自分でアレンジ汁。

454:名前は開発中のものです。
05/06/14 19:39:31 9FWtswMc
お。サンクス。
マップ全体からのキャラ位置(x,y)を、
ディスプレイへの出力位置に変換するのどうしよ。
ちょっと考えてきます。

455:名前は開発中のものです。
05/06/14 20:29:27 OA7ZLhur
画面の左下をy=0にするか、画面の左上をy=0にするかでも、
話は色々と違って来るな。でもって、キャラの足元を
キャラの表示基準位置にするか、頭の先を表示基準位置に
するかでも、話は違って来るな。


456:名前は開発中のものです。
05/06/22 10:59:34 9EAdJ/sh
HSPを使って2Dアクションゲーム製作をしています。
特定のマップチップに当たるとキャラクターを死亡させるようにしたいのですが,
どうにもうまくいきません。
アドバイスを頂けないでしょうか?

ちなみに,現在自キャラの当たり判定に

celhit=8
{中略}

a=-1:mx=x/celx:my=y/cely:ma=x\celx

check=map.mx.my

if check=4 {
      map.mx.my
           }
if check>=celhit :return
といった式を使っており,
死亡させるのに使いたいマップチップは12番目です。
知識不足で申し訳ありませんが,どうかよろしくお願い致します。

457:名前は開発中のものです。
05/06/23 10:35:32 NNi2CtO/
全ソースupするとか、何がうまくいかないのかをもっと具体的に書いてもらわないとわからないです。
他の人はどうか知りませんが、私は頭が悪いのです。
出し惜しみしてもしょうがないじゃないですか。実際できてないんですから。

458:名前は開発中のものです。
05/07/01 21:30:15 uhCLvFf1
アクションゲームのデバッグモードに何が必要ですかね?
無敵 敵配置 無重力・・・・あとは?

459:名前は開発中のものです。
05/07/02 06:20:49 Gk32sIkc
お前は世の中に出回ってるアクションゲームが全部同じだというのかと

460:名前は開発中のものです。
05/07/18 15:17:29 EO3/QU2T
マリオのコピー作ってるんですが
プレイヤーがブロックと当たった時のプレイヤーの座標の修正ってどう考えればいいんでしょうか


461:名前は開発中のものです。
05/07/18 19:09:10 U/+zsg12
>>460
ブロックに当たっていると判定されない位置までしか移動しないのが基本。
例えば下に8単位移動することで床に当たってしまうのなら、4単位移動して当たるかどうか調べる。
当たれば2単位移動したとき、当たらなければ6単位移動したときに当たるかどうか調べ、
判定を繰り返して床に当たらない限界の移動量を突き止める。

ターゲットマシンの処理能力がファミコン並みの場合、ブロックが16x16単位でしか存在しないという規約を決め、
y=y/16*16 または y=y & 0xfff0
という単純な式で解決する方法がよく使われていた。マリオを作るならこちらがおすすめ。

462:名前は開発中のものです。
05/07/19 08:49:28 h08CCx7/
たいしたゲーム作れないヤシに限って
ソースを出し惜しみする罠w

463:名前は開発中のものです。
05/07/19 12:38:57 3gAxftmB
無茶言うなよ。ただでさえアクションゲーム
はソースが膨大になりがちなんだからさ。
汚いソースは見せたくないのが人情だろ?


464:名前は開発中のものです。
05/07/19 14:38:07 g9RffVxd
>>461
どうもありがとう御座います
判定後の修正済みの座標の計算自体はわかっていました
質問が言葉足らずでした

例えば右に走りながらジャンプしてジャンプ中に下からブロックに当たった場合(X方向の加速度が+Y方向の加速度が-でブロックに当たった)
修正後のプレイヤーのY座標は当たったブロックのY座標+ブロックの高さ
にしてX座標は変えない

右に走りながらジャンプしてジャンプ中に左からブロックにあったった場合
プレイヤーのY座標は変えない
修正後のプレイヤーのX座標は当たったブロックのX座標ープレイヤーの幅

というふうにすればいいのだと思うのですが
単純に当たり判定をしただけでは下から当たったのか左から当たったのか分からないので
その方法が無いかなと思ったのです

465:名前は開発中のものです。
05/07/19 18:21:22 Q/KJA8ki
ソース見せろというヤシに限って
汚くて読めないと文句言う罠w

466:名前は開発中のものです。
05/07/20 01:39:59 EPNi1Tp/
>464
横判定と縦判定を別にすりゃいいんじゃね?
横当たりで戻すなら横だけ戻す。縦当たりで戻すなら縦だけ戻すでいんじゃね?
それなら着地点がカドで両方めり込む場合も対応できるんじゃね?

467:名前は開発中のものです。
05/07/20 01:44:43 EPNi1Tp/
しかも縦判定を上下にわけたら頭にブロックがぶつかって上昇止めるのと
足の下にブロックがあって落ちないのを分けられるんじゃね?

468:名前は開発中のものです。
05/07/20 20:22:11 +a5dPNhL
どんな状態が横から当たったという事なのか
どんな状態が上下から当たったという事なのか
まずそれが定義できません
頭がこんがらがってきた

469:名前は開発中のものです。
05/07/20 20:27:59 +a5dPNhL
たとえばXの加速度が0でYの加速度がーの時ブロックにあったたら
それは下からブロックに当たったと考えられるけど
Xの加速度が+Yの加速度がーの時ブロックにあった時
下から当たったのか左からあたったのか
どう考えればいいんでしょう

470:名前は開発中のものです。
05/07/20 22:20:13 ZyAL1iJ1
キャラを左にずらしてみて当たっているようだったら左から
下にずらしてみて当たっているようだったら下から
実際に動かす必要はないから

ところで。。。
>右に走りながらジャンプしてジャンプ中に左からブロックにあったった場合
ひょっとして移動ブロック?

471:名前は開発中のものです。
05/07/20 22:21:22 G93mZ0AF
if(上)上の判定
if(下)下の判定
if(左)左の判定
if(右)右の判定
こうで良いんじゃないの?
if文4つで判定していけば面倒なこと考えずに済む

472:名前は開発中のものです。
05/07/21 23:30:52 wHTK6m5n
>>469
それってマリオで言うところの
下からブロックに接触したときだけキノコを出したいとかそういうことかな?

473:名前は開発中のものです。
05/07/21 23:35:09 HcWPA8Z2
めり込まないようにするための自キャラ座標の修正っしょ?

474:名前は開発中のものです。
05/07/22 02:20:52 C15cS8V2
>>469
1.Xの移動
2.壁との当たり判定(当たっていたらX値を修正)
3.Yの移動
4.壁との当たり判定(当たっていたらY値を修正)
矩形のブロックしか存在しない空間ならこれでOK
精度を上げたければ1/10ずつ移動させてどちらが先にぶつかるかを調べる。

これが気持ち悪ければ、ブロックに対するめり込み量が多いほうを優先するとか、
移動量自体が多いほうを優先するとか、いろいろ方法があると思う。

475:名前は開発中のものです。
05/07/22 21:01:41 rRyf+a+6
超高速走行時のすり抜け問題もあるな。1/10移動しかないか?

476:名前は開発中のものです。
05/07/24 17:31:12 L6ZxXouS
マウスで動くゲームでカーソルを自キャラの画像にしていないゲーム、
つまりマウスカーソルの移動量を取得して自キャラを動かしているものを、
DirectXなしで作るには、どうすればいいんでしょうか?

/*カーソルがウィンドウの中央からどれだけ動いたかを求めて自機の座標に反映*/
GetCursorPos(&ptCursor);
myX -= (WND_WIDTH / 2 - ptCursor.x);
myY -= (WND_HEIGHT / 2 - ptCursor.y);
/*カーソルをウィンドウの中央に戻す*/
SetCursorPos(WND_WIDTH / 2, WND_HEIGHT / 2);

上記のソースのような処理を自キャラの動作処理の度に行っているんですが、
SetCursorPosが重いのか動きがカクカクになります。
他にDirectXなしで、なにかいい(高速な)方法はないでしょうか?

477:名前は開発中のものです。
05/07/24 21:19:59 Tt4A7o+h
>>476
私の環境では目立ったガタツキはありませんでした。

>カーソルを自キャラの画像にしていないゲーム
こうしなければならない理由は何ですか?もし背景をスクロールさせているゲームなら、
マウスがすぐ机の端に行ってしまい、何度も持ち上げなければならないと思うのですが…。

個人的にはマウスポインタが画面中央からどの位置にあるかで移動量が決まる、
下記のような手法が好みです。
GetCursorPos(&ptCursor);
myX -= (画面中央X - ptCursor.x)/10;
myY -= (画面中央Y - ptCursor.y)/10;
※ゲーム開始時に画面中央をクリックさせる必要があります。
  /10の数値は調整してください。

478:476
05/07/24 22:00:52 L6ZxXouS
>>477
アドバイスありがとうございます。

カーソルを自キャラの画像にしていなかったのは、カーソルの速度が速すぎたので、
自キャラの移動量をカーソルの移動量の何分の一かにしようと思っていたからです。
実際のソースでは
myX -= (WND_WIDTH / 2 - ptCursor.x) / 5;
myY -= (WND_HEIGHT / 2 - ptCursor.y) / 5;
のように移動量を割っています(すみません、書き忘れました・・・)。

でも、「マウスポインタが画面中央からどの位置にあるかで移動量が決まる」って方法のほうが、
操作性もよさそうですね。僕のPCでは重かった、SetCursor関数も要りませんし。さっそく導入を検討してみます。

479:名前は開発中のものです。
05/07/25 01:51:00 d4SiN8in
マリオに関しては、まず移動させておいてから
めり込んでいる部分を押し返すだけでいいんじゃないかな、貫通するほどの速度もないし。
どの方向からぶつかったかというのはあまり意識しなくていいと思う。

ダッシュで1ブロック分の隙間を走り抜けたりするのも、意識しなくても勝手に再現されるよ。
プレイヤーの上昇方向の判定を少し狭くしておくと、
ジャンプが微妙にすり抜けて上の足場に着地するのも再現される。
ある程度めりこみが発生するのは構わないという前提で、甘めに判定するのがコツ。

HTMLとJavaScriptだけで作られたマリオ
URLリンク(www.janis.or.jp)

480:名前は開発中のものです。
05/07/25 19:16:34 vPG6HPYk
>>479
どの方向から来たのか分からないと
どの方向に押し返すのか決められないよ

481:名前は開発中のものです。
05/07/25 21:26:25 g1HMM4aW
右に移動してぶつかったら左に押し戻す、とか

482:名前は開発中のものです。
05/07/26 07:54:06 /o47BJro
で、ダメージで吹っ飛ばされてめり込むとw

483:名前は開発中のものです。
05/07/26 19:52:47 SBWFi+sv
吹っ飛び処理に接触判定入れてないの?

484:名前は開発中のものです。
05/07/27 09:05:46 cRa0iwYz
入れてるはずだろ。でなきゃ地面を突き抜けて落ちていく。

485:名前は開発中のものです。
05/07/27 17:39:34 JOpFaaQL
んじゃ、めり込むはずないね

486:名前は開発中のものです。
05/07/31 12:32:27 1cCJGwcX
何がどうなってか、壁のこちら側ではなく、
壁の向こう側に押し出された事ならあるぞw


487:名前は開発中のものです。
05/08/01 18:10:13 JGK4vs8h
キーによる移動と吹っ飛びによる移動を一緒にして判定すればいい

488:名前は開発中のものです。
05/08/04 05:34:35 0Nyl93/Z
物体を押して動かす動作って、やってる人いる?
複数の物体を動かすと、無茶苦茶大変じゃね?


489:名前は開発中のものです。
05/08/04 16:30:57 YFvDCil8
物体=オブジェクト=3D=3Dで物を動かすのは簡単
結論:そうでもないよ

490:名前は開発中のものです。
05/08/04 18:38:45 e7pfmO0E
>>488
矩形にとらわれない形状・空間・移動方向で、直接押された物体以外も連鎖的に
動かそうとなると、一筋縄ではいかないよね。
物理シミュレーションとかかじると面白いんだけど、そっちに気が向きすぎて
ゲーム製作どころではなくなりそう。

491:名前は開発中のものです。
05/08/04 22:56:58 Y2kkgy0i
結構大変そうだな
今年の盆休みはコレにチャレンジしてみるか・・・
いつか通る道だし

492:名前は開発中のものです。
05/08/05 09:30:12 BLdYd1nn
多少のめり込みを許容しつつ、いい感じに動くやつをつくりてぇ。

493:490
05/08/05 23:47:24 j/CQ3Nfi
円形オブジェクトを動かすサンプルを作ってみました。
参考になればいいんだけど…

Javaのソースとアプレットのデモを掲載中
URLリンク(summerclap.hp.infoseek.co.jp)

494:名前は開発中のものです。
05/08/06 00:08:25 ozOLA3p2
>>493
すげー!感動した!!
でもCしか読めん (T_T)

495:名前は開発中のものです。
05/08/06 01:23:04 mdQmR8Nd
>>494
オブジェクトの衝突判定って所だけ見れば問題なし

キモは動かす玉の加速度からぶつかり先の加速度を求めるんじゃなくて
重なった量からぶつかり先の加速度を求めてる所にあると思われる
ボールが凹んだ分だけ押し返すみたいな感じかな
スマートにまとまってていいね~

496:名前は開発中のものです。
05/08/06 09:04:03 SCanc4CH
凄い凄い。めり込み具合から計算するなんて、考えた事もなかったよ。

昔、キャラが重なる事を、全く想定しない方式で作った事があってな。
運悪くキャラが重なれば、キャラが動作不能におちいるわ、複数の
物体を押そうとすると、自キャラの移動がガクガクするわで、全然
うまくいかなかったんだよ。

Thanx!!


497:名前は開発中のものです。
05/08/06 10:11:44 D5FBVQjr
ペナルティ法

498:名前は開発中のものです。
05/08/06 12:01:33 PNc88TP1
>>497
そ~ゆ~のは何で調べるの?
アルゴリズム辞典には載って無かったんだが。


499:名前は開発中のものです。
05/08/06 16:15:06 gXfKdljo
>>498
昔はいいサイトがあったんだけど そこの作者winnyつくって捕まっちゃったんだよな

500:名前は開発中のものです。
05/08/06 17:54:31 qONoCor0
>>499
そうそう
なんか3Dのプログラムとかうpてたよね

501:名前は開発中のものです。
05/08/06 18:20:37 OQXjMLjA
PGには色々な意味で、無政府主義者が珍しくないからなぁ・・・
逆も珍しくないけどさ。


502:名前は開発中のものです。
05/08/07 02:45:23 5OtBYpxD
貴様等に何が分かるか

503:名前は開発中のものです。
05/08/07 06:13:35 R5K/VwOD
金の無い学生が、とりあえず共産主義に走ってるだけの話かと。


504:名前は開発中のものです。
05/08/07 06:26:22 ms9PetyD
学校や一部の会社は、その組織の中だけで
運営される、閉じた共産主義の世界だからなぁ・・・


505:名前は開発中のものです。
05/08/07 06:50:06 ms9PetyD
割れ厨房やピーコ厨房の悲しい所は、圧倒的に世界が狭い点だな。
夢や希望、理想を信じていて、現実を直視出来てない点が問題だ。
もっと広い目で世間を見ていれば、違った見方も出来るだろうに。
現実には、Winnyとかの氾濫で、著作権の強化には歯止めがかから
なくなりつつあるのが現状だしな。


506:名前は開発中のものです。
05/08/07 06:57:31 EiSRB336
法律は弱者救済が原則。

そして著作権は、著作権を所有している人間が弱者だと
認定している法律だ。この意味を、深く考えるべきだね。


507:名前は開発中のものです。
05/08/07 10:07:54 ZFBJiW80
>>506
>法律は弱者救済が原則。

低脳はマイルールを法律と言い出すから困る

URLリンク(www.google.co.jp)

508:名前は開発中のものです。
05/08/07 11:26:21 xz3quRgr
>>507
それは藻前の調べ方が悪い

URLリンク(www.google.co.jp)


509:名前は開発中のものです。
05/08/07 11:56:43 DvKZ5TPE
こっちの方が詳しいかもな。

URLリンク(www.google.co.jp)


510:名前は開発中のものです。
05/08/07 14:51:33 2zoPxgWc
とりあえず俺に言えることは言えることは
お前らみんなスレ違い

511:名前は開発中のものです。
05/08/07 22:08:23 Qhu6bNnu
>>510 error C4292:'お前らみんな'はあいまいであるか、アクセスできません。明確な参照を指定してください。

512:名前は開発中のものです。
05/08/07 23:58:19 5OtBYpxD
>>498
物理シュミレーションの分野。解析法とか。

513:名前は開発中のものです。
05/09/17 09:10:29 Ou43c5rT
質問です
ソニックザヘッジホッグのように
曲線で描かれた地面との衝突判定って
どう処理するのがよいのでしょうか。
地面に沿った曲線方程式を持っていて
それから計算するのでしょうか
ご教授ねがいます


514:名前は開発中のものです。
05/09/17 09:55:39 8tvgUAR/
線との接触判定を地道に一つ一つやっている。
今のマシンのパワーなら、そのぐらいは簡単だよ。


515:名前は開発中のものです。
05/09/17 14:43:24 Ou43c5rT
>>514
回答ありがとうです
接触判定用の線の配置マップは
やはりマトリクスで管理するのでしょうか?
たとえば↓のように坂道があったら
□□□□□
□□□□/
□□_/□
_/□□□
□□□□□
各マスごとに接触線の有無情報を持つということでしょうか。
00000 0:なし 1:_ 2:/
00002
00120
12000
00000
※おおまかに数値化した例です

マップがでかくなったり、細かいカーブのある地面を表現しようとすると
管理できなくなりそうだなあ。
素人丸出し、すんまそん。
何か良い方法ありますか。


516:名前は開発中のものです。
05/09/17 15:18:30 E0zJ1TH0
>>515
それは、マップの作り方次第やね。

たとえば515のマップなら、こんな風に作る事もできる。
00000 0:なし 1:床 2:坂
00002
00021
02111
11111

あと、閉じた線リストのグループを組み合わせてマップを作る方法もあるが、
これはちょっち難しいかな?


517:名前は開発中のものです。
05/09/17 15:37:45 Rc3vY+QN
まあ要するに、マップの作り方は、作りたいゲームによって変わるって事だよ。

レースゲームでは、道の両側の座標を二本のポリゴンで管理する事も珍しくないし、
道幅が固定なら一本のポリゴンで管理する事もある。


518:名前は開発中のものです。
05/09/17 16:15:52 Ou43c5rT
レスありがとう、参考になります。
ソニック系のゲームを作りたくて
どの方法がいいのが決めかねていました。
>>516
>あと、閉じた線リストの~
例えばマップを10×10マス単位に区切って
その中に含まれる直線式をリスト管理しておいて
キャラクタが居る場所のリストとの当たり判定を
するということでしょうか。
□□□□□□□□□□
□□□②__□□□□
□□□/□□□□□□
□□/□□□□□□□
□/□□□□□□□□
①□□□□□□□□□
□□③――□□□□
□□□□□□□□□□
□―□□□④――□
□□□□□□□□□□
リスト1
①y=ax+b
②y=cx+d
③y=ex+f
④y=gx+h
このマップ内にいたら上記①~④の式との衝突判定をする
ってことでしょうかね。
これなら曲線式(円とか)もリストに入れられそうですね。


519:名前は開発中のものです。
05/09/17 18:01:47 ScEP3mCD
直線の始点(x1,y1)と終点の座標(x2,y2)があれば、一本の線が描ける。
そして二つの点が決まって居れば、その線の計算式を求める事は可能だ。
(y-y1)=((y2-y1)/(x2-x1))(x-x1)

三つの座標があれば三本の線が描ける。
(x1,y1)~(x2,y2),(x2,y2)~(x3,y3),(x3,y3)~(x1,y1)
四つの座標があれば四本の線が描ける。
(x1,y1)~(x2,y2),(x2,y2)~(x3,y3),(x3,y3)~(x4,y4),(x4,y4)~(x1,y1)
こうした折れ線が、閉じた線リスト。

三つの座標で、二本の線。
(x1,y1)~(x2,y2),(x2,y2)~(x3,y3)
四つの座標で、三本の線。
(x1,y1)~(x2,y2),(x2,y2)~(x3,y3),(x3,y3)~(x4,y4)
こうした折れ線が、開いた線リスト。


520:名前は開発中のものです。
05/09/18 12:43:56 s39mZ4CU
さて質問。
今マリオ風アクションゲームを作っているんだが、壁とマリオの衝突判定で問題発生。

マリオの上、下、左、右それぞれに当たり判定を作って上が当たったら頭があたったと判定させ
下が当たったら足と壁(地面)が衝突するからY軸の重力加速度をゼロにして地面の上にたたせる。
右がぶつかったら左にすこし押し返される感じにして左も同様

こんな感じで基本的に動くようになったんだが、このキャラクターが吐く玉があるんだが
その玉にも同様の当たり判定(上下左右)を行ってるのね
だけどこの玉の移動速度があまりにも速いものだから壁にめり込んで正確に動作してくれないんだ
玉のスピードによって当たり判定を伸ばせばいいのかな?ともおもったが色々考えて却下。

最終的に1秒60フレームの60FPSとは別に玉の動作だけ600FPSくらいで判定処理をさせればOKじゃね?とおもってやってみたが
なぜか動かん!

本来マリオ風アクションゲームを作る時のキャラの当たり判定ってどう行うんだ?

521:名前は開発中のものです。
05/09/18 13:37:00 yP69ys0m
60FPSを600FPSにした場合、1フレームの移動量は1/10倍に、
60FPSを6FPSにした場合は、1フレームの移動量を10倍にしないと
玉の速度が変わるわけだが?


522:名前は開発中のものです。
05/09/18 13:39:07 vUrboQp9
めり込んでから判定するか、めり込む前に判定するか

523:名前は開発中のものです。
05/09/18 14:01:59 d7ieMFyE
>>520
このスレの上の方で、

①移動前に判定
②当たらなかったらちょっと'(1ドット?)移動
これを1フレームの移動量に達するor壁に当たるまで繰り返し

ってやりかたが出てたような気がする

524:名前は開発中のものです。
05/09/18 16:45:57 TnJMPUnx
弾が壁に当たったらデカいエフェクトでも出せば~
そんな気にならんと思うぞ。

525:名前は開発中のものです。
05/09/18 18:17:20 +n+8NiI7
マリオが壁にひっかかったりめりこんだりすりぬけたりするバグまで再現するのは、普通にやると難しいんだろうか

526:名前は開発中のものです。
05/09/18 18:50:37 fAahe9rg
>>513-519
メガドラ版とかだったらそんな大層な事してなさそう
例えばマップデータにその点での曲線の傾きを入れておいて、傾き2のポイントに左からぶつかったら上に2上がる、みたいな

もちろん上の人はわざわざ「今のパソコンなら」って書いてるわけだし今ならその方がスマートだとは思うんだけど、
ソニックは移動が高速だから多少粗くても問題なさそうだし、処理性能の面でも当時ならそうしたんじゃないかなと
見当違いだったらスルーよろ

527:名前は開発中のものです。
05/09/18 18:52:21 fAahe9rg
ごめん寝ぼけてた
忘れて下さい

528:名前は開発中のものです。
05/09/18 20:18:59 tilH0X8d
>>524
何げに良いテクを言ってる気ガス。

529:名前は開発中のものです。
05/09/18 20:25:37 tilH0X8d

|   ○))))



|  ○))))



| ○))))


・・・
・◆・
・・・

◆◆◆
◆◇◆
◆◆◆

□□□
□□□
□□□






530:名前は開発中のものです。
05/09/19 00:47:45 pDDJ7+1W
>>528
そもそも壁にあたったと判定できなくてこまってるんじゃ
あんまり意味がない気がする。

531:名前は開発中のものです。
05/09/19 09:43:08 v8vzsqdV
60フレで移動値10ぐらいならそんな気にならんと思うし、
それ以上になるようならデカいエフェクトで対処したほうがいいと思う。
接触をどこで判定するかにもよるが、弾自体をデカくしてもいいかと。
見た目のめり込みドット数は減ると思うぞ。

532:名前は開発中のものです。
05/09/19 09:45:00 FeS2reeC
>>523
なるほど
次フレームに位置する玉の場所と現在の場所にスライドするように判定を行うわけだね?

頭いいー!
で、どうやるんだろ…w

がんばってくる!

533:名前は開発中のものです。
05/09/19 09:47:15 FeS2reeC
>>弾自体をデカくしてもいいかと。

それ考えたんだけどやっぱそうしたほうがいいのかなぁ。
うぅむ。
ちなみにエフェクトで対処とかっていう案が結構でてるけど
>>528
さんが言うように早すぎると壁抜けてしまうので
エフェクト以前に判定できないのよね。

とりあえず↑の方法を頑張ってみる。


534:名前は開発中のものです。
05/09/19 09:48:32 FeS2reeC
すまん。
>>530さんね。

みんなありがとう!

535:名前は開発中のものです。
05/09/19 20:10:36 FeS2reeC
手短にC++について質問

class MOVEOBJ {
public:
**省略**
MOVEOBJ();//コンストラクタ
MOVEOBJ(int x, int y);//コンストラクタ
};

class PLAYER : public MOVEOBJ {
public:
**省略**
};

MOVEOBJ a(8,8);//これは出来るけど
PLAYERn(8,8);//敬称してもこれは出来ない。

どうすればPLAYERクラスからMOVEOBJ内のコンストラクタにアクセス出切る?

場違いかな?

536:名前は開発中のものです。
05/09/19 20:56:48 JUxOCKS9
class PLAYER : public MOVEOBJ {
public:
PLAYER( int x, int y ) : MOVEOBJ(x,y){}
**省略**
};


537:名前は開発中のものです。
05/09/20 14:48:01 1rmjE96S
>>536
THX

538:名前は開発中のものです。
06/01/05 23:56:28 8YIYn0ZE
>>227
年を2つ越えて亀レスだが、俺がPC版アーマード・コア作っちゃっていい?
本家のACはもう行くところまで行ってしまった気がする。

539:名前は開発中のものです。
06/01/06 03:29:23 MTbix/3n
>>538
ガンガレ

540:名前は開発中のものです。
06/01/06 14:04:58 yOgH2a1d
>>539
㌧クス、地道にがんがる。

541:名前は開発中のものです。
06/03/07 01:01:48 LVgywCzP
横スクロール型アクションゲームを作っているんですが(魔物ハンター舞(知ってるかな?))みたいなやつ、
コマンド技などを実装しようと思いますがコマンドの判定がいまいちわかりません。
1フレーム(約14ms)毎にキー状態を取得し、前のキー状態と比較してAかつBのコマンドがあれば
フラグをONにし、そのフラグがONの状態の時あるボタンを押されたらコマンド技という実装を考えたのですが、
どう頑張っても入力が不可能になってしまいます、どうすればいいでしょうか?

542:名前は開発中のものです。
06/03/08 10:36:03 mZu8SEWn
それでいいはずだけど?実際のキー入力見たら?
入力無し状態が間に入って、成立してないって判定してるかも。

543:名前は開発中のものです。
06/03/08 19:45:40 LPRPt45/
コマンド解析ロジック
でぐぐって参考にすれば?

544:541
06/03/08 21:30:58 7jcBB4H/
>>542
その通りでした、くだらないバグですいません。

>>543
ありがとうございます、参考にします。

545:名前は開発中のものです。
06/03/21 18:07:26 s8nZYA/R
プレイヤーキャラクタの動かしかたについて質問です。
キー入力をキャラクタの動きに対応させる際に、以下の二通りの実装を考えています。

1. 上位側でキー取得、キーに対応したキャラクタの関数呼び出しで行動。
2. キャラクタ側行動関数内でキー取得、対応した動作を内部で記述。

1、2、どちらがOOPとしてスマートな実装方法だといえるでしょうか?
識者のかたお願い致します

546:名前は開発中のものです。
06/03/21 19:18:13 JkFbCiMp
>545
俺もちょうど似たようなところを組んでいたが、OOPとしては当然1じゃね?

ゲーム内のキャラクタが、現実のキー入力という異世界の情報を、直接扱うのは美しくない。

547:名前は開発中のものです。
06/03/21 19:47:18 II3VfSa/
なるほど、そういう考え方もあるな。

548:名前は開発中のものです。
06/03/21 19:55:29 BETRB9Hh
そうなん?
普通に2がやりやすいと思うが。

549:名前は開発中のものです。
06/03/21 22:51:39 nXEENBpa
やりやすいとスマートは違うぞな、もし

550:名前は開発中のものです。
06/03/23 03:37:22 2sNSmG50
1だとCPUもキー入力的に動かせる気がして1にしてる。

551:名前は開発中のものです。
06/03/23 17:03:05 Ccbbk2h0
てか、2の方法だと、プレイヤーの行動以外のために
キー入力状態が欲しくなったら面倒じゃん。

552:名前は開発中のものです。
06/03/23 17:18:37 lA0BaRyH
イベントリスナーを使うのがオブジェクト指向っぽい

553:名前は開発中のものです。
06/03/24 01:57:47 4Uk+3T2/
ところでまったくの初心者である俺から質問させてほしいんだが

C言語とかDelphiとかどれがお勧め?

いま友達が簡単だからお勧めっていうHSPってのを勉強してるんだが
使ってるのによって何か弊害とかあるのですか?
あのプログラムができない云々とか(´・ω・

554:名前は開発中のものです。
06/03/24 03:03:04 HlGxkzvX
言語にお勧めなんて無いよ、使い慣れたのが一番だ

あとの質問は意味が理解しきれないのでパス
#使ってるコンパイラなのか言語なのか
#プログラムができないってどういう意味なのか

555:名前は開発中のものです。
06/03/24 03:12:01 7W3qOTI+
プログラムの基礎を学ぶ意味でCを最初にやる事を強く勧める


556:名前は開発中のものです。
06/03/24 04:00:40 4Uk+3T2/
>>554使いなれたのが一番・・・なるほど、あと説明が変ですみませぬ
>>555やっぱりCが押されるようで、ありがとう
んーやっぱC言語からって意見をよく聞くからC言語がいいのかな


なんかHSP使うと細かな命令がやりにくいとか、
処理が重いとか言われてて、もしHSPに満足できなくて
C言語に乗り換えて使うとしてもHSPの知識では役に立たないとか?
だったら早期に見切りを付けてC言語やったほうがいいのかなって
(;´・ω・
いずれは3Dアクションゲームを作ろうと思ってるからなおさらC言語なのかなと
(こう発言して散っていった先人達は星の数ほどいるらしいから
今は笑い飛ばしてくれていい)
だけど早期にそれなりのアクションゲーム作りたいならHSP使えと言われるジレンマorz

557:名前は開発中のものです。
06/03/24 06:09:45 lhqBkY85
とりあえずHSPで何か作っちゃうのが良いよ

558:名前は開発中のものです。
06/03/24 06:57:50 fkaCWNcU
HSPの言語の知識は役に立たないかもしれないが、
HSPでのプログラムの経験は、役に立つかもな

559:名前は開発中のものです。
06/03/24 10:40:32 6JV0Yf7q
結果が全てなのだぁ

560:名前は開発中のものです。
06/03/24 10:53:44 7W3qOTI+
最初はコンソール画面でオセロでも迷路でも作ればいいよ
プログラムすることの面白さに気付ければ
後は誰の後押しも無く自分で学んでいける

HSPはポインタあるのかな?
ポインタって何?(・∀・)
という状態になるのが怖いな

Cでグラフィカルな表現に進む場合にはWindows、DirectXが立ちはだかるわけだが
SDLという道もあるので頑張って欲しい

561:名前は開発中のものです。
06/03/24 17:07:56 ynvPJr33
>>553
マジレスするとRuby。趣味言語として。
しかし趣味でゲームつくるくらいならHSPで間違いなく十分。

モチロン職に就くなら話は別だが。

562:名前は開発中のものです。
06/03/24 17:10:41 ynvPJr33
連レススマソ

>>560
HSPでも一応ポインタは使えるよ。

ところで、>>555もそうなんだが
なぜ職でプログラミングをやるわけでもない初心者に
Cを進めるのか理解できないんだ。
煽りとかじゃなくて真剣な話ね。

ちょっと答えてくれるとウレシス

563:名前は開発中のものです。
06/03/24 17:19:20 6JV0Yf7q
>>562
2DゲームならHSPでもいいかもしれんけど、
3Dゲームになると明らかにdirectXとか使ったほうが良いし
そのためにはC言語くらい出来ておくべき。

それと俺の場合はシューティングゲームを良く作るんだけど、
最近の弾幕バリバリ系のをHSPで作ると凄く処理が重たくなる。

564:553
06/03/24 17:25:42 4Uk+3T2/

>>557とりあえずHSPで作ってみます

>>558という思考からやっぱり最初からCやるべきなのかと思ってしまう

>>559同意

>>560なんか擬似的にポインタっぽい仕様があるとか聞いた

>>561.562んー趣味LVだからなァ、たしかに・・・


とまあ、Rubyとか出てきたしそれぞれに特徴があるんだったら
説明をお願いしたいんですがorz
初心者すぎてゴメン、とりあえずCはプロ向きで
HSPは初心者向きで他のを使うときには役に立ちにくい感じのでいいのかな
他のDelphiとかどうなんでしょ(´・ω・

とりあえずいずれの目標は
つ{URLリンク(www.geocities.jp)
↑のをもうちょいゲームとして遊べる仕様なのを作ってみたいです

565:名前は開発中のものです。
06/03/24 17:32:18 7W3qOTI+
最初に身に付ける言語が基礎になると思うから。



566:553
06/03/24 17:38:50 4Uk+3T2/
おっと書き込み中にレスが増えてました

>>563
そう、その意見をHSPを使ううえでよく聞かれるんだよね
「処理が重たくなる」っての、それが心配なんだけど
Cで作る場合とかなり違うと思っていいんですか?


C言語が優秀なのはわかった
とりあえずこのスレで質問した結果から
明日書店へひとっ走りして入門書を購入してこようと思います

ちなみに今手元にあるのは
「HSP3プログラミング入門」
「12歳からはじめる、HSP3.0ゲームプログラミング教室」
中古本ですけど値段が手ごろだったので

567:名前は開発中のものです。
06/03/24 17:41:50 7W3qOTI+
書籍代はケチるんじゃないぞ
ゲーム買うの我慢しても良書を買うべきだ

568:562
06/03/24 17:42:27 ynvPJr33
>>563
HSPでも3D扱えるしDirectXでなくとも
今なら[SDL]+[OpenGL]も十分実用に耐え得るようになってきている。
にもかかわらず、未だに皆初心者にCを進めるんだよなー。
HSPの速度は同意。[hspdxfix]を使うとかなり軽減はされるが。
……と[C++] +[DirectX]でゲーム作ってる職業プログラマ志望の
漏れが考えていますw

>>565
だからその基礎にするのがなぜCなのか理解できない。
初心者がCやるくらいならJAVAからはじめたほうがずっといいと思う

>>566
早まるな、HSPならネットの資料で十分足りる、金の無駄だ

やべぇ、長文な漏れキモスwwww

569:名前は開発中のものです。
06/03/24 17:46:37 7W3qOTI+
>初心者がCやるくらいならJAVAからはじめたほうがずっといいと思う

初心者がいきなりオブジェクト指向を理解できるとは思えないんだよね
手続き型の限界を知ってからのほうが身につくんじゃない?
CならC++に無理なく移行できるし
Cは色んな意味で入門言語として手堅いんだと思うよ。

570:名前は開発中のものです。
06/03/24 19:44:31 UCMQhwlE
C++かJava、それと企画書はUMLの技法を使う
つまりオブジェクト指向を勉強したほうが良い
(C++の言語を作った人(ストラウストラップだっけ?)が、C++から始めることを薦めていた)
手続き型言語のCは、もはや時代遅れ

例えば敵機にしても、一つ一つがオブジェクトであり、個々に判定したり動くのが原則
またクラスを派生させ、敵機などは系統立って設計されるべき

571:名前は開発中のものです。
06/03/24 20:29:43 ynvPJr33
>>569
そっか。漏れは初心者の頃オブジェクト指向には目から鱗だったんだが。
今度新規生がまたくるから、ウチの人員を研究対象として
今年は手続き型とオブジェクト指向型とどちらがわかりやすいか
調査なんかしてみるかな。

>>570
趣味プログラマがUMLなんか使うかよ禿www

572:名前は開発中のものです。
06/03/24 20:34:18 mFmDrFXE
手続き型を先にやったがために、
オブジェクト志向になじめないってパターンもあるしな

573:553
06/03/24 20:40:01 4Uk+3T2/
ん、通常はC→C++という流れで覚えると思ったんだが
>>570のいうC++から始めることを薦めてるってのが気になるなぁ

ついさっき本屋でC++の入門本に
「本書はCを知らなくてもC++ができるようになる本です」
ってのがあったんだけどC++から覚えるってのも
一つの手段として考えたほうがいいのかしら
聞けば聞くほどHSPに不安が出てくるな(笑

574:570
06/03/24 21:01:26 D/m13lxQ
C++よりもCのほうが難しい
Cの本には、こういうプログラミングをすれば処理速度が上がるなどの個別のテクニックの解説が多い
またわけのかわらん自己中なプログラムを組む奴が多い

またクラスが無いから構造体を使うが、構造体にはアクセス権が無いため、
その構造体がどこでアクセスされているか、ソースコードを追っていくのが大変

プログラミングが難しい

575:名前は開発中のものです。
06/03/24 21:29:57 ynvPJr33
>>573
この程度の情報量でHSPに不安がでてくるようなら
HSPやるにしてもCの勉強をはじめるにしても長続きしない。
とりあえず手軽に始められるんだからHSPで1ヶ月もやってみ。
そしたらHSPで足りるのか足りないのかわかるから。
なんにしろ3DACTなんて初心者が独学で数ヶ月でできるもんじゃない。

>>574
ただのOOP厨でしたか。お帰りください

576:名前は開発中のものです。
06/03/25 03:43:31 lNWu+DsU
ってか、Cから始めるといろいろめんどいというか、
ゲーム作り始めるまでに覚えることが多々有りすぎるから、
だったらまずはゲームってどんなふうに作られてるのか知る上でも、
メッチャ簡単なものでいいからHSPで作っちゃえば良いと思うんだけど。

577:名前は開発中のものです。
06/03/25 04:26:04 9+AYDTvc
単純な内容ですぐ遊べるものが欲しいならHSP。
じっくり学んでたくさん作るつもりがあるならC。

578:名前は開発中のものです。
06/03/25 10:55:59 Xo5AkaJL
>>577
嘘ばっかか。
たくさん作るつもりならむしろ手軽なHSPだろ
Cで作るならクオリティに凝ってもらいたいものだ

579:名前は開発中のものです。
06/03/25 13:24:10 oCQS7gTs
Cは低水準よりの言語だからなあ、ある程度プログラミングに慣れてからのほうが覚えやすいと思うな


結論としては、C言語は覚えておいても損は無いよってことで

580:名前は開発中のものです。
06/03/25 21:19:25 1d6aG4+O
俺としては
HSP→手軽、限度低い。
C,C++→とっつきは悪いかも。ただ覚えさえすれば、かなり使える言語。

って感じ。
なんでHSPがよく批判されるかっていうと
入門者に手軽なHSPを薦めること自体は別にいいんだけど
HSPの簡単さになれると他の言語に移りににくくなるんだよね。
まぁそれでもいいって言うんならいいけど

581:名前は開発中のものです。
06/03/26 03:38:03 eIBmOWGN
>>580
どうせ向上心のあるやつは半年もすれば
ほうっておいてもHSPから離れていくんだから、
当面初心者にはHSPを進めておけばいいと思うんだ。

ただ、
>まぁそれでもいいって言うんならいいけど
な上から見た態度はすこぶる気に食わないんだ。

582:名前は開発中のものです。
06/03/26 04:19:19 5pnITBBi
そだね、やりたいことができないってわかったら、自分で他に移るんだし
これで十分だと思ったら、そのままでいいし。

583:名前は開発中のものです。
06/03/29 00:14:45 9KBKOr3E
とりあえずJavaScriptとかでプログラムの雰囲気を覚えるのもいいかと思う。
結果がすぐ分かるし。
つーか他の言語に移るとかよく分かんない。
今まで使ってきたもの全部適材適所で使うでしょ?
全体をC++とかJavaで作ってるときに、使い捨てツールが急に
欲しくなったときにHSPとかPerlとか使う、みたいな。


584:名前は開発中のものです。
06/03/29 00:30:48 QNwATx3h
>>583
ヒント:いきなりたくさんやるのむり

585:名前は開発中のものです。
06/03/29 00:54:46 hjjCj64h
漏れ、Javaなんて全く使った事が無い
で、初めての人にはJavaが良いのか、HSPが良いのかは分からない

が、BASICから入った漏れとしては、プログラマとして初心者なら、
初めの1~3年ぐらいは簡単な言語を使うことをオススメしたい

ちなみに今は、C++から全く動けない体になってマス

586:名前は開発中のものです。
06/03/29 17:16:40 FqCl1dxd
HSPは一番最初にお付き合いする言語にはちょうど良いんじゃない?
簡単にウインドウ出せて、描画も出来る、日本語資料いっぱい。

理解できなきゃプログラムは組めないわけだし
最初の言語は分かりやすさ優先にするのが良いんじゃないかな、と思ってる

587:名前は開発中のものです。
06/03/30 04:19:50 56EhH4Nk
スーパーマリオ3系の2Dアクションゲームを作ってるんですが、
斜めの坂と接触したときの自機のずらし方向について悩んでいます。

・自機の当たり判定を1点(1x1の大きさ)で、あたりを判定した場合には、
 坂のパターンに応じてうまく動かせます。

・自機の当たり判定を大きく(16x32)した場合には、マップデータが8x8ドット
 単位なので、どこで判定をとればよいか悩んでおります。

たとえば、16x32の4スミ(※)でそれぞれあたりを取った場合、
 ※4スミ=(0,0) (16,0) (0,32) (16,32)
あたるマップチップがそれぞれ別のものになりますので、
どうしてもずらし方向が矛盾してしまうのです。

ここ1年ほど、この論理についてずっと悩みっぱなしなのですが
作例、論理などわかるかたいらっしゃいませんでしょうか。

588:名前は開発中のものです。
06/03/30 15:00:35 Ehg64lwS
スレリンク(gamedev板:634番)n

589:名前は開発中のものです。
06/03/30 15:29:26 Wa3+p1az
ちょっとマリオ3をやってみたら
?ブロックや土管とか通常の地面は、足先までの長めの判定をとってるけど
坂とかを含んでるチップでの、足元判定は下底の中心1x1でしかやってないっぽいな



590:名前は開発中のものです。
06/03/30 17:37:15 1FMFXNfJ
つまりこうか?マリオの座標を
123
456
789
として、通常当たり判定は1379の4隅を使って
坂の当たり判定処理だけ8の位置のみでしている。と?


591:名前は開発中のものです。
06/03/30 21:06:27 iAtYOob+
>>589
===
***=
****=
*****=
******=======
って判定で、見た目だけずれてるとかじゃなくて?

592:名前は開発中のものです。
06/03/31 00:34:18 hNd3BF7c
>>591
ごめん、図がよく分からんけど
おそらく見た目とかそういう話じゃないと思う
あと、敵はどんな地形でも足元は1ドットしか判定見てないっぽいな

593:587
06/03/31 03:33:00 akpZ63XX
>>588,589
有用な情報をホントにありがとうございます。

590さん風にいうと、
とりあえず2段階にわけて、どこに立っているかは8で判定して
坂でなければ、1379の4隅を使って判定する、を
やってみようと思います。

ただ、まじめに判定するとすれば、588さんに教えてもらったURLの
チュートリアルの内容を実装する必要がありそうですね。
まさにこのノウハウが知りたかったのですが、めちゃ奥が深そうです。
ありがとうございました。

このサンプルの重さを解析してみないとわかりませんが、
8bitゲーム機でも耐えうる速度がだせる判定方法であれば
マリオ3的なアクションゲームでは、まさにこれを実装する必要が
ありますよね。頭がいたいですが。

説明が英語だけにかなり厳しいですが
アクションスクリプトをCに移植しながら、理解を深めてみますです。
もしスピードが稼げる方法でなければ、これと似た結果をだせる
簡易計算方法が他にもあるかもしれませんね。

594:名前は開発中のものです。
06/03/32 13:26:32 gZPGpn4t
>>589
それは結構難しそうな気が

595:名前は開発中のものです。
06/04/05 01:59:43 NKcmYNvl
gああああ。
斜めの坂むずかシー。
誰か概念を教えて栗。

596:名前は開発中のものです。
06/04/08 22:47:03 o8GmMFvy
つ「内積、外積」

自分で調べて学ぶ事も重要

597:名前は開発中のものです。
06/04/09 01:37:25 n8SWzf4S
内積、外積、垂線の求め方などが考え方に必要なのはわかるが
2Dアクションゲームのプログラムには必要ない。3Dでは必須。
のハズ。

598:名前は開発中のものです。
06/04/09 23:47:28 n8SWzf4S
>596
念のため、2Dベクトルでの内積による当たりを判定してみましたが、
sqrt()の負荷がちょっと高いけど、全然実用的でした。
ごめんなさい。悪かったです。


599:名前は開発中のものです。
06/05/18 21:31:48 vFoh02c7
保守

600:名前は開発中のものです。
06/05/22 00:55:20 oNNgZz3T
sqrtなんて使わなくね?

601:名前は開発中のものです。
06/05/22 00:57:22 invPdzO+
単位ベクトルとか求めるとき必須

602:名前は開発中のものです。
06/05/22 01:45:22 oNNgZz3T
もしかしてみんな点と三角形の当たり判定じゃなくて
線と三角形の当たり判定でやってるの?

603:名前は開発中のものです。
06/05/22 21:38:24 oNNgZz3T
点と三角形の当たり判定

点(px,py) 三角形(p1x,p1y),(p2x,p2y),(p3x,p3y)
v1x=pxーp1x v1y=pyーp1y
v2x=pxーp2x v2y=pyーp2y
v3x=pxーp3x v3y=pyーp3y
v1=v1x*v2yーv2x*v1y
v2=v2x*v3yーv3x*v2y
v3=v3x*v1yーv1x*v3y
(v1>0)かつ(v2>0)かつ(v3>0)
または
(v1<0)かつ(v2<0)かつ(v3<0)
のとき当たり


誰か線と三角形の当たり判定教えて

604:名前は開発中のものです。
06/05/22 21:39:15 9H//M9F4
お前に教えるハンテイはねぇ!

605:名前は開発中のものです。
06/05/22 21:40:28 oNNgZz3T
あれ なんか表示がおかしい

606:名前は開発中のものです。
06/05/23 01:07:00 ig3OAxwb
2D上で線と三角形だと連立方程式立てられないんじゃないかな。
むしろ線と線(三角形の辺)でやったほうが良い希ガス。

607:名前は開発中のものです。
06/05/24 00:14:18 w03ixZiV
>>606
サンクス

608:名前は開発中のものです。
06/06/09 06:37:51 /Hg1o1U9
衝突処理書き上げたらスタックが発生しまくり
ムカムカage

609:名前は開発中のものです。
06/06/10 00:44:59 INde8ODr
スタックが発生するとはまたよく分からない言葉ですね

610:名前は開発中のものです。
06/06/10 22:00:32 YNMEkrNo
データ構造のスタックしか知らん人が登場した。
さすがゲ作板だ。

611:名前は開発中のものです。
06/06/16 00:44:02 FNjrQ/wZ
スタックってなーに?

612:名前は開発中のものです。
06/06/21 00:34:39 RcYQeqBn
オー人事オー人事

613:名前は開発中のものです。
06/06/21 10:02:38 xkmiQecp
>>612
ソレ書こうと思ったけどツッコミなさそうなので
書かなかったよ、そんな勇者なおまえに

スタッ○サービスじゃねーかよ

614:名前は開発中のものです。
06/06/27 22:10:52 zklAs/7x
誰か>>603の解説お願いします
どうしても分かりません

615:名前は開発中のものです。
06/06/27 22:34:22 G7pNNqKH
URLリンク(gamdev.org)

616:名前は開発中のものです。
06/06/27 23:34:17 kVI76xNg
>614

v1x=pxーp1xは

 ・(px,py)          ・(p1x,p1y)

           ・(p2x,p2y)          
                    ・(p3x,p3y)
のとき

(px,py)     線分v1
  ・-----------------------・(p1x,p1y)

           ・(p2x,p2y)          
                    ・(p3x,p3y)
v1xは線分v1のxの長さ
同じくv1yはyの長さ

v1=v1x*v2yーv2x*v1y はもしv1=0だと
0=v1x*v2yーv2x*v1yでv2x*v1y=v1x*v2yで
v1x:v1y=v2x:v2yとなる
つづく

617:名前は開発中のものです。
06/06/27 23:35:15 kVI76xNg
つまりv1=0の状態は
(px,py)    (p1x,p1y)     (p2x,p2y) 
  ・-----------・-------------・

(p1x,p1y)   (px,py)     (p2x,p2y) 
  ・-----------・-------------・

(p2x,p2y)   (p1x,p1y)     (px,py) 
  ・-----------・-------------・
・・etc
と3点が同直線上にあることを指す
v1>0やv1<0なのは互いに同直線上にないこと指す

値が全て正のとき
v1=v1x*v2yーv2x*v1y がv1<0のとき常に

(px,py)    
  ・
 
 (p1x,p1y)     (p2x,p2y)
  ・----------->・  
となる

v1=v1x*v2yーv2x*v1y がv1>0のとき常に

 (p1x,p1y)     (p2x,p2y)
  ・----------->・ 
 
(px,py)    
  ・
となる
つづく

618:名前は開発中のものです。
06/06/27 23:38:37 kVI76xNg
3つの辺を同時に考えると点(px,py)は
(px,py)①    
  ・
 (p3x,p3y)     (p1x,p1y)
  ・----------->・  
   ▽  (px,py)④|
     \   ・  |  ・(px,py)②
      \    ..|
        \  ..|
  ・       \ V 
 (px,py)③     ・(p2x,p2y)
の4つが考えられる
①は (v1<0)かつ(v2>0)かつ(v3<0)か
   (v1<0)かつ(v2<0)かつ(v3>0)かになる
②は (v1>0)かつ(v2<0)かつ(v3<0)か
   (v1<0)かつ(v2<0)かつ(v3>0)かになる
③は (v1>0)かつ(v2<0)かつ(v3<0)か
   (v1<0)かつ(v2>0)かつ(v3<0)かになる
④は (v1<0)かつ(v2<0)かつ(v3<0)になるこのとき点は面上にあることになる
 もし値が全て負なら符号が全て逆転するので
①は (v1>0)かつ(v2<0)かつ(v3>0)か
   (v1>0)かつ(v2>0)かつ(v3<0)かになる
②は (v1<0)かつ(v2>0)かつ(v3>0)か
   (v1>0)かつ(v2>0)かつ(v3<0)かになる
③は (v1<0)かつ(v2>0)かつ(v3>0)か
   (v1>0)かつ(v2<0)かつ(v3>0)かになる
④は (v1>0)かつ(v2>0)かつ(v3>0)になるこのとき点は面上にあることになる
 すなわち
(v1>0)かつ(v2>0)かつ(v3>0)
または
(v1<0)かつ(v2<0)かつ(v3<0) になるこのとき点は面上にあることになる


619:名前は開発中のものです。
06/06/28 19:32:25 PGbIKTZD
>>618の訂正
3つの辺を同時に考えると点(px,py)は
(px,py)①     (px,py)②
  ・   \     ・     |・(px,py)③
       \          |
      --・----------->・-----  
   (p1x,p1y) ▽  (px,py)⑦|(p2x,p2y)
           \   ・  |  ・(px,py)④
            \    ..|
              \  ..|
        ・       \ V 
       (px,py)⑥      ・  (p3x,p3y)
                  |\
                  |  \
                    ・(px,py)⑤
の4つが考えられる
①(v1<0)かつ(v2>0)かつ(v3<0)、
②(v1<0)かつ(v2>0)かつ(v3>0)、
③(v1<0)かつ(v2<0)かつ(v3>0)、
④(v1>0)かつ(v2<0)かつ(v3>0)、
⑤(v1>0)かつ(v2<0)かつ(v3<0)、
⑥(v1<0)かつ(v2<0)かつ(v3>0)、
⑦(v1>0)かつ(v2>0)かつ(v3>0)になるこのとき点は面上にあることになる

 もし値が全て負なら符号が全て逆転するので
 すなわち
(v1>0)かつ(v2>0)かつ(v3>0)
または
(v1<0)かつ(v2<0)かつ(v3<0) になるこのとき点は面上にあることになる

620:名前は開発中のものです。
06/07/11 16:18:01 Ogk6iPLD
>>618
当たり判定を中心の1ドットで
坂道判定するのって可能ですか?
平面はx座標、y座標を独立させて当ったときに
境界線ぎりぎりの座標までのを取得しています

621:名前は開発中のものです。
06/07/11 16:56:38 D7mjjvxH
>>620
3Dの話?

622:名前は開発中のものです。
06/07/11 20:23:02 wHSXxOQ3
>>620
2Dです
出来たら2Dで坂道のアルゴリズムをご教授いただきたく存じます

623:名前は開発中のものです。
06/07/11 20:57:36 5ZQUQ7kJ
>坂道判定するのって可能ですか?
クオータービューの話ですよね

■■■□□□□
■■■■□□□
■■■■■□□
■■■.X.■■□
□■■■■■■
□□■■■■■
□□□■■■■

■・・・坂の上れる部分
□・・・触れない部分
X.・・・中心の1ドット

で内容はいいんですかね

624:ナギサ
06/07/11 22:04:59 kIX/RGjS
この本を見て勉強すれば簡単なゲームなら作れるだろうって本とかないでしょうか??教えてください。目標はとりあえずアクションゲームを作りたいです

625:ナギサ
06/07/11 22:30:04 kIX/RGjS
ちなみに超初心者です。ゲーム作った事ないです

626:名前は開発中のものです。
06/07/11 22:39:45 wU1DkrDU
2Dか3Dかで変わるどっちなんだ?


627:名前は開発中のものです。
06/07/11 23:17:34 GVuJ27Dn
完全無料のプログラミング言語HSPによるゲーム制作方法を徹底解説(単行本)
URLリンク(www.amazon.co.jp)

628:名前は開発中のものです。
06/07/11 23:26:09 D7mjjvxH
>>623
2Dって事だから
マリオみたいな感じじゃないかな?
620の平面ってのは真横から見た平面って事だろう
でも、これなら線分と点でどっちの領域にあるか調べるだけな気が・・・
(坂の始点からの距離xの高さを求めて比較とか)

あぁ、618のを使って出来るか聞きたいだけなら
出来る




629:名前は開発中のものです。
06/07/12 00:44:10 eXlRPZTF
>>628
>でも、これなら線分と点でどっちの領域にあるか調べるだけな気が・・・
ヴァルケンやマリオ3のような2Dなのでこれぐらいの仕様で
いけると思うのですが問題はそのアルゴリズムが思いつかないのですorz

仮に45度角の坂道を配置するとき、中心線がその枠内に入った場合、
どんな感じで境界線ぎりぎりのxy軸を取得するのか……

当方、かなりの数学嫌いですがお願いします。

630:名前は開発中のものです。
06/07/12 02:01:43 Nv9TYXvG
>>629
>ヴァルケンやマリオ3のような2Dなのでこれぐらいの仕様で
最初からそれ言ってりゃ早いのに

でも、斜面の何処に戻すのがいいのか分からんな・・・
x座標に合わせた高さを求めるなら簡単だし
横移動の速度は変わらずに済むからこっちかな?

坂の領域判定は矩形と点で判定は済んでるとして
坂始点(sx,sy) 坂終点(ex,ey) 点(x,y)

ax=sx-ex
ay=sy-ey
ky=ay/ax
bx=sx-x
cy=ky*bx

(sy-cy)<=y なら y=sy-cy で坂の上に乗せる

線分判定やるとしたら線分と線分の判定じゃないとダメかな?
(斜面に直角に当たる座標になっちゃうから)

>当方、かなりの数学嫌いですがお願いします。
自分は中学ぐらいで数学は止まってる・・・





631:名前は開発中のものです。
06/07/12 04:05:30 Nv9TYXvG

>横移動の速度は変わらずに済むからこっちかな?
kyを適当に利用して上りは遅く下りは早くしてみた

URLリンク(gamdev.org)
これで使ってる移動ベクトル
vx=-(2.0-ky/2) 左移動
vx=(2.0-ky/2) 右移動

地面の移動ならこれでよさそう


632:名前は開発中のものです。
06/07/12 11:13:18 9vgHlyH+
>>631
カコイイ!

633:名前は開発中のものです。
06/07/12 13:01:22 hG6RiEWp
>>630>>631
解説ありがとうございます
実際どうなっているか流れを見てみます。

634:名前は開発中のものです。
06/07/12 22:41:39 Nv9TYXvG
>>633
ジャンプとスクロールもさせてみた

URLリンク(gamdev.org)
(スクリプトも付けたけどHSPやってない人には読みづらいんだろうな・・・)

弾が斜面のどこに当たったとかは
603にある
>点(px,py) 三角形(p1x,p1y),(p2x,p2y),(p3x,p3y)
>v1x=pxーp1x v1y=pyーp1y
>v2x=pxーp2x v2y=pyーp2y
>v1=v1x*v2yーv2x*v1y
これを応用すれば出来ると思う
分からなかったら又質問でもしてくれ
(誰か答えてくれるだろうw)

635:名前は開発中のものです。
06/07/13 00:00:37 l1X/KRTM
>>634
数学嫌いの私にも45度坂が出来ましたm(__)m
これで擬似物理とか出来たら萌え死にます
蛇足・630の公式をBCCでいじっていたのですが
ax=sx/ex
ay=sy/ey
ky=ay/ax
と誤って入力したらフリーズしました
仕様でしょうか

URLリンク(read.kir.jp)

636:名前は開発中のものです。
06/07/13 00:17:00 YmBc8lTP
ゼロ除算に100物理


637:名前は開発中のものです。
06/07/13 00:28:25 abHzvvv+
>>635
636も言ってるように0で割るとエラーが出る(これは言語に関係はない)
だから0で割る事にならないように工夫する必要がある
(0の時ようの処理を用意したり)



638:634
06/07/13 21:51:57 abHzvvv+
ありゃ、ボンミスしてた
color 100,255,255 :mes "x("+x+")"+" y("+(x+ry)+")"
y表示しようとしてるのにxって
楽してコピペしてると変なミスするな・・・

639:635
06/07/14 01:26:48 J8kNYWyd
今、マップチップを32ドットで編集しているのですが
16ビットで分割する必要が出てきました。

32ビットチップに当たった→16ビットに分けた4つのどこに当たったか
→その位置になるように合わせる

といった処理が思い浮かんだのですが、これで60FPSを
維持するのは正直つらいでしょうか?

0x00000F00
という感じでFを当たり判定用にしています
(1、左端 2、右端)という感じで

連投申し訳ございません、m(__)m
面倒でしたらチラシの裏だと思ってくれてもいいです

640:名前は開発中のものです。
06/07/14 01:46:48 zYRCrdZI
よゆー

641:635
06/07/30 16:32:32 51bUWeEi
またも質問させていただきます

アクションゲーム作ってみましたが
URLリンク(gamdev.org)

4方向による16ビットの当たり判定まで作ってみたのですが
角にキャラを近づけると引っかかってしまうことがあります

おそらくx軸の判定とY軸の判定が同時に発生していると思うのです
不明瞭だとは思いますが、一応、問題のソースコードも添付しておきます。

C++やダイレクトXに詳しい住民様、解消法を
よろしくお願いしますm(__)m




642:635
06/07/30 16:34:56 51bUWeEi
sage忘れましたorz


643:名前は開発中のものです。
06/07/30 17:39:00 Z/wMdCeC
まじめに読む気がしない。

こんなのは必ず解決するから、よく自分で試行錯誤し、
あたり判定もう一度最初から書き直してみれ。

644:名前は開発中のものです。
06/07/30 21:07:12 Al09+sjw
>>641
xとyの距離比較してそれぞれのフラグ立てれよ

円として判定したいなら
円の方程式使って進入許可できる距離を判別しろ

645:名前は開発中のものです。
06/07/30 21:54:13 Al09+sjw
デバック用の文字列とか表示しないのかね・・・
VC++のデバック機能にも限界があるから作ったら?

あとインデントとかちゃんとして
コメントアウトも多めに付けた方が他人に分りやすい

関数の前にアルゴリズムの図とかをコメントアウトで描いたりや
アルゴリズムの図をBMPとかで描いて残したりした方が
自分が再認識したり整理するのに役立つよ


646:635
06/07/31 00:05:39 dVzSVGJA
>>643,644,645
アドバイスありがとうございましたm(__)m

もう一度粘ってみたら原因が分かりました。
方向をX軸移動、Y軸移動と分けていたので
角に来たとき、少しだけ当たり判定内に進入してたようです
X軸、Y軸両方に判定がなかった場合、
続けてXY軸両方合わせて判定するようにしました。




>>インデント
よく注意されてます
仕事するようになるまでにはちゃんと直したいのですが
なかなかうまくいきませんorz

647:名前は開発中のものです。
06/07/31 10:22:10 HgdAdx/E
仕事とか関係無しに見やすいソースを書く癖はつけといたほうがいーぞ
まずはこれ使え
URLリンク(astyle.sourceforge.net)
URLリンク(homepage2.nifty.com)


648:635
06/07/31 23:17:19 dVzSVGJA
>>647
勉強になります


クラスを他のクラスにそのまま引き渡すのは良くないでしょうか
参照しやすいのですが、かわりに結合度が高くなってしまいます
初心者なのでよく分かりません

649:名前は開発中のものです。
06/08/01 02:09:51 Xih0MczD
>>648
> クラスを他のクラスにそのまま引き渡すのは良くないでしょうか
んなこたぁない。

> 参照しやすいのですが、かわりに結合度が高くなってしまいます
それは設計の問題。

650:635
06/08/03 00:23:26 VuMChKx3
スクロール処理で向きを変えたときに自動的に前の方向が
スライドして見やすくなる(ヴァルケン、洞窟物語風に)
処理がうまくいきませんorz

ちょっといじればできそうなのですが……

651:名前は開発中のものです。
06/08/03 10:24:50 CyBLhj/X
自機の向きから出す視点の横補正の目標値とは別に
現在の横補正値を変数にもち、こっちの値で描画を行い、
段階的に現在の横補正値を目標値に近づけてきゃいいんじゃねーの

652:名前は開発中のものです。
06/08/04 17:04:02 0Gt94er7
URLリンク(gamdev.org)
画像のように、COMが自分に向かってジャンプしてくるにはどうすればいいでしょうか

653:名前は開発中のものです。
06/08/04 17:13:59 RYO7NJkZ
直線的な追尾処理だけじゃなく

追尾相手と同じ段に行く というアルゴリズムを挟め

その段に行けるかどうか どういうルートで到達できるかは
足場座標とキャラのジャンプ力使って試算させとけ

654:名前は開発中のものです。
06/08/05 16:42:52 THTGPtgh
再三にわたり失礼いたします。
表示を320×240に変えて、フルスクリーンにしたところ
縮小、ウインドウモードに変えると強制終了になってしまいます。
あきらめるしかないのでしょうか

URLリンク(gamdev.org)

655:名前は開発中のものです。
06/08/05 17:01:52 MNA8j4SI
ヒントやるよ
フルスクリーンからAlt+Tabで別ウインドウに切り替えても強制終了するだろ?

つうかDirectXスレで聞け

656:名前は開発中のものです。
06/08/16 21:17:11 gZ/W8DL2
マリオ風のアクションゲームを開発をしているのですが
プログラミングしたジャンプや移動の操作を5分以上操作し続けると
動作中に強制終了してしまいます。
なにも操作していない時は強制終了しないで動いているですが
原因が分かりません。

操作系のクラスをプログラミングしている際、int型やfloat型、double型
をごっちゃにして入力していたからでしょうか。

DirectXの原因かとも考えたのですが、よく分かりません。

ほかに考えられる原因があれば教えていただけないでしょうか
よろしくお願いいたします。



657:名前は開発中のものです。
06/08/16 21:30:47 n6yg13h7
b=a/0みたいな0除算はマズいぞ?


658:名前は開発中のものです。
06/08/17 00:03:23 OsG5VGmG
>>656
ゲーム開発オワタ\(^o^)/

659:名前は開発中のものです。
06/08/17 11:15:47 wgi9SDS+
>>656はエスパーを探しに来た人

660:名前は開発中のものです。
06/08/17 12:58:43 XudnPJ+x
>>656
つ デバッガ

661:名前は開発中のものです。
06/08/17 16:33:17 rHhEO1GS
>>656
日本語でおk

662:名前は開発中のものです。
06/08/17 18:24:42 kAihMmpa
どう見てもメモリリークです

663:名前は開発中のものです。
06/08/17 18:35:11 Rn/CHa6g
本当にどうもありがとうございました

664:名前は開発中のものです。
06/08/18 01:38:21 HJMqSlyb
いえいえ、どういたしまして



665:名前は開発中のものです。
06/08/18 02:51:39 LVwpbsbn
いえ、こちらこそ

666:名前は開発中のものです。
06/08/18 18:56:07 IL8eodyq
おれもやってみるかな。

667:名前は開発中のものです。
06/08/18 19:23:58 i7u6URSm
>>666
ゲーム開発ハジマタ\(^o^)/



668:名前は開発中のものです。
06/08/18 19:45:03 F6pe9bNb
開発始まったって?
 *     +    巛 ヽ
            〒 !   +    。     +    。     *     。
      +    。  |  |
   *     +   / /   イヤッッホォォォオオォオウ!
       ∧_∧ / /
      (´∀` / / +    。     +    。   *     。
      ,-     f
      / ュヘ    | *     +    。     +   。 +
     〈_} )   |
        /    ! +    。     +    +     *
       ./  ,ヘ  |
 ガタン ||| j  / |  | |||
――――――

669:名前は開発中のものです。
06/08/19 14:27:17 S1w/yWyB
      ,一-、
     / ̄ l |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    ■■-っ < 一旦CMでーす
    ´∀`/    \__________
   __/|Y/\.
 Ё|__ | /  |
     | У..  |


670:名前は開発中のものです。
06/08/19 20:24:34 g7yx4bI3
>>656“ウプレカス”

671:名前は開発中のものです。
06/08/19 23:22:29 lHUQ84EI
マリオ作っている656です
内容をデバッグしてみたのですが、
「シンボルテーブルをロードするにはメモリーが足りません」
と出てきました。
メモリーリークですか、よく分かりません

672:名前は開発中のものです。
06/08/19 23:29:23 lHUQ84EI
フルスクリーンからウインドウに変わるバグは
動的確保したlong型の変数を
同クラス内のデストラクタで開放するようにしたら
解決しました。


673:名前は開発中のものです。
06/08/20 19:41:16 UuHBYu6d
>>671-672
>解決しました。
ということはニュートリノピンガーには問題が無いのですね。
メモリリークはコラプシウムをイントロダスするときメニューの
イクスリンクオプションでオグリロンライブラリ(ogrirn32.lib)を追加していない
ことなどが原因だと思われます。
VCにはカナカレデスのPLCEがインストールされていないから、
マリオ風ゲームでこういう問題が出ることがよくあるんですよね。

まあつまりは環境と問題のありそうな部分をもっと“ウプレカス”

674:名前は開発中のものです。
06/08/20 23:35:34 LgC2X665
>>671-672
ゲーム開発オワタ\(^o^)/



675:名前は開発中のものです。
06/08/28 00:04:20 TjuofUTm
なんでフリーのアクションゲームってのはマリオとかロックマンみたいに
ボタンを押した長さで飛距離・滞空時間が変わるっていうシステムがみあたらなくて
格ゲー式のジャンプばかり何?

676:名前は開発中のものです。
06/08/28 01:27:27 VU6Zuu/A
日本語でおk

677:名前は開発中のものです。
06/08/28 19:47:05 TjuofUTm
フリーでアクションゲームって言うと、大抵ボタンを押した→一定距離をジャンプ
っていうシステムばかりじゃん。
なんで皆マリオみたいなボタンを押してる間だけジャンプし続けるっていうシステムをいれないん?
ってはなし。

678:名前は開発中のものです。
06/08/28 19:58:58 1YCUNRSD
ジャンプ初速を設定すれば簡単に実装できるからかな
677自身でどう実装するか考えてみて

679:名前は開発中のものです。
06/08/28 22:22:01 TjuofUTm
>>678
いや、ASで両方ともジャンプだけ作ってみたら、えらい複雑怪奇な
スクリプトになっちゃったことならある。
他の複雑なシステムは探したり聞いたりすればちょっとはノウハウがでてくるのに
こんな重要なシステムがほとんど全く見当たらないことに疑問を抱いただけ

680:オレの場合
06/08/29 00:47:55 rZW12SLq
慣性と重力を実装させる
横の移動を縦の移動に変えるだけでジャンプの完成

ジャンプも所詮はただの移動処理でしかない

681:名前は開発中のものです。
06/08/29 01:24:18 fbusqzej
こんな感じかな?

・ジャンプポイント
ジャンプボタンを押しているときに、ジャンプポイントがあると、
上に力がかかり、ジャンプポイントを消費。
ジャンプボタンを放すとジャンプポイントが0へ。
接地してるとジャンプポイントが回復。


682:名前は開発中のものです。
06/08/29 07:30:00 25DQC6v0
個人的にはどちらかというと
ボタンを押す長さでジャンプの高さが変わらないことよりも
落下速度に制限がないことの方が気になる。
放物線の式にまんま当てはめているやつ。
普通は早い段階で重力加速度がかからなくなり落下速度は一定になる。

683:名前は開発中のものです。
06/08/29 12:39:40 +GsQLbTw
>>680
アクションの肝は「移動」だぞ
それ以外はオマケに過ぎん

684:名前は開発中のものです。
06/08/29 17:17:29 2lGX4f4y
>>682
高いところから飛び降りる場合はすごいことになりそう。

>普通は早い段階で重力加速度がかからなくなり落下速度は一定になる。
そういえば昔そんなのを物理で習ったような・・

なんかこのスレ見てたら2Dアクション作りたくなってきた。
HSPしかわからないけど作ってみるか・・
とりあえずスクロールなしのやつでも。

685:名前は開発中のものです。
06/08/29 17:34:22 YBNXLQm5
>>684
>>682の言う「普通」はアクションゲームにとっての普通であって
現実世界で重力加速度がかからなくなるなんて素敵は起こらない。

>>680の方法に加えて空気抵抗も実装するか、
速度が一定以上になったら加速度の増分を無視するか、
上とほぼおなじだけど頂点付近での動き以外は等速直線運動にしちまうか…。

686:名前は開発中のものです。
06/08/29 17:43:27 2lGX4f4y
>>685
うお、すばやいレスどうもです。

>頂点付近での動き以外は等速直線運動
これがなんか簡単そうでいいですね。
スクロールありの作品を作るときにはこれでいってみるのがいいかなあ・・


687:名前は開発中のものです。
06/08/29 18:43:19 2lGX4f4y
URLリンク(gamdev.org)

とりあえず左右移動とジャンプだけ・・
ジャンプも単純なものです。


688:名前は開発中のものです。
06/08/30 12:14:11 HDX1nRgM
特にコメントしようが無いくらいオーソドックスですな。

689:名前は開発中のものです。
06/08/30 20:36:18 0+uciLrU
>>675-681
・ボタン入力でのジャンプ開始は上方向に加速
・ジャンプ開始から一定時間
 ボタンが押されていたら上方向に少し加速(押されていなければ加速しない)
・もちろん毎フレーム重力で下方向に加速

普通はそんな実装だと思う。意外と不自然にならないし

URLリンク(gamdev.org)

690:名前は開発中のものです。
06/08/31 02:44:22 6kg/g5a1
結構簡単そうだねw

691:名前は開発中のものです。
06/09/01 03:45:31 GPL3C9Uc
このスレ見てたらなぜかゲーム製作を始めたきっかけを思い出した・・・
色々脱線したがやっと自分の作りたかったゲームを作れそうだ

692:名前は開発中のものです。
06/09/01 15:58:11 6p7n2Zvv
>>691
ガンガレ

面白いアクション出来たら是非ここで晒して欲しい。

693:名前は開発中のものです。
06/09/01 23:05:21 oK46bBEe
イース5みたいな見下ろし型アクションでのジャンプと高低さってどうやって実装したらいいんだか

694:名前は開発中のものです。
06/09/02 02:05:34 7X8d3SoD
簡単な例、影を二種類用意する

695:名前は開発中のものです。
06/09/02 02:08:14 VDs1F/a3
何言ってんのお前

696:名前は開発中のものです。
06/09/02 02:58:29 z39240xp
俺は解った

697:名前は開発中のものです。
06/09/02 22:54:08 ba0CY4T7
高いジャンプの時は小さい影、
低いジャンプの時は大きい影ってことか?

698:名前は開発中のものです。
06/09/04 09:21:05 lXvZXMzj
もし座標管理を言ってるのなら単純にZ軸足して描画に加味すればいいだろ

699:名前は開発中のものです。
06/09/06 08:13:09 2TD49+ND
それをどうやるかって聞きたいんじゃね?

700:名前は開発中のものです。
06/09/06 11:35:32 ddiodJa7
イース5は地形の高低もあるわけだが

701:名前は開発中のものです。
06/09/06 11:49:06 fKr1adkj
高さの値を設定すればいい

010001
000000
110000
110000

010003
000000
111000
221000

702:名前は開発中のものです。
06/09/06 12:34:20 ddiodJa7
真上から見下ろしているわけではあるまいし、
そんなに単純にはならない。

703:名前は開発中のものです。
06/09/06 13:38:39 Nu1Drfsn
立体交差が無ければ、内部処理は >>701 の方法でやって、
描画時は >>698 が言うようにZ軸分を考慮して描画すればO.K.

斜め見下ろし型の2Dアクションで画面の左上座標を(0, 0)とした場合、
ジャンプの高さのドット数をキャラのy座標から引いて描画すれば良い。
あとはキャラの真下にあたるところに影を描画すればO.K.


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch