トピック
かいしゅう kaikai.jp

すんごくまともなゲームのインスピレーションが沸いてきたから協力よろしく

レインディアみたいな感じのゲーム
2そうだね
プレイ済み
返信[1]
親投稿
かいしゅう kaikai.jp
DATAから読み込んだマップデータを元に レインディアみたいな感じの立体マップにして さ ら に カーブ等も出来る様にしたいがどーすれば…
0そうだね
プレイ済み
返信[2]
親投稿
地面も左右にずらして配置する。 (これだけで案外それっぽくなる。)
0そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
要するに擬似3Dのレースゲームを作りたいということですか? 正確にカーブを表現しようと思ったら三角関数の知識が必要になりますが、カーブっぽいものを表示するだけならば簡単です。 その前に擬似3D表示の方法ですが、これは実は横に細長い道路(地面)を奥に行くにしたがって縮小表示するだけです。この計算方法は正しく行うことは可能ですが、擬似3Dである以上は正確さよりもそれっぽさが重要だと思います。 その辺は長くなるので「プチコン 擬似3D レース」あたりのキーワードでネット検索すると良いでしょう。 直線コースが表示できたらカーブは奥に行くごとに少しずつ横にずらせばいいだけなので実は簡単に表現できます。
0そうだね
プレイ済み
返信[4]
親投稿
かいしゅう kaikai.jp
ぎじすりぃでぃですね うーん そーゆー峠道みたいなのじゃなくて 一般道路のカーブでドリフトする感じなんだな
0そうだね
プレイ済み
返信[5]
親投稿
かいしゅう kaikai.jp
道以外にも方向を示す矢印とか障害物とかガードレールみたいなのとかも表示したいから基本的に道はSPかBGで行きたい
0そうだね
プレイ済み
返信[6]
親投稿
かいしゅう kaikai.jp
イメージはこんな感じ
0そうだね
プレイ済み
返信[7]
親投稿
MIKI ifconfig
グワァとした後、プレイヤーから見て、 車は右に進むの?? それとも視点が車の後ろに移動して、車は前に進むの??? 「すれちがいMii広場」第3弾に「サクッと! スロットカー」というカーレースがあるけど、あんな感じ??? (無料でダウンロードできるのでぜひ遊んでみてください)
0そうだね
プレイ済み
返信[8]
親投稿
かいしゅう kaikai.jp
カメラが常に車の真後ろ 車がカーブしきってからカメラを真後ろに持ってく どっちにするか考え中
0そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
どちらにせよよくありがちな擬似3Dレースゲーム(ファミコンのレースゲームみたいなやつ)と比べると難易度は高めになっていますね。 進行方向が1方ならば三角関数を使わなくても十分作れますが、このイメージ絵のようなゲームならば回転処理が必要なのでそれ相応の知識も必要になります。 ちなみによくありがちな擬似3Dレースゲームだと奥に行くに従い左右にずらすとカーブが表現でき上下にずらすと下りや上りの坂道が表現できます。
0そうだね
プレイ済み
返信[10]
親投稿
おちゃめ ochame_nako
すでにレースゲームを作った経験があるならばステップアップとして擬似3Dはオススメできますが、レースゲームの制作未経験ならば真上からの見下ろしゲームを作ってからの方が良いかもしれません。 見下ろし型レースゲームなら簡単に作れるというのでしたら擬似3Dのコースの表示をするところから始めると良いかも知れませんね。 コース表示の方法は無数にあります。私が作った2軸回転プログラムを使っても構いません。
2そうだね
プレイ済み
返信[11]
親投稿
ワイヤーフレームと疑似3Dで ドリフトとかやってみたいと思ったことある。 2軸は処理に時間が掛かりそう &3Dにするのめんどくさそう で、最初から諦めた←←
0そうだね
プレイ済み
返信[12]
親投稿
かいしゅう kaikai.jp
やっぱ作るなら難易度高めの方がいいよね。その方が楽しいし カーブは全て一般道路にしてしまえば角度は90度で統一出来るし 車の回転とかは…まぁ何とかなるっすよ といっても初歩の時点でつまづいてんすけどね このSPとSPの差を埋めるにはどーすれば…
0そうだね
プレイ済み
返信[13]
親投稿
かいしゅう kaikai.jp
これなんだが
0そうだね
プレイ済み
返信[14]
親投稿
すげぇ似てるやつを製作中。 ただ、むこうに走るんじゃなくて こっちに走ってくるゲーム。 操作むずそう。 SPの隙間を埋めるには、 ・SPの縦の拡大率を増やす。 ・SPの枚数を増やす。 ↑こんなんでどうかな。
0そうだね
プレイ済み
返信[15]
親投稿
かいしゅう kaikai.jp
SPの拡大率は増やせない 奥にいくほど拡大率が減っていくようにしてるから SPは増やせるかわからない 住宅街、障害物、矢印、ゴールとかほかにも表示するものがいっぱいあるから
0そうだね
プレイ済み
返信[16]
親投稿
縦だけ拡大率上げればいいじゃん。 疑似3Dって大変だね…
0そうだね
プレイ済み
返信[17]
親投稿
だにえる haru2016nen
こめのこ。 SPSCALEは実数の倍率にすると 処理が重くなった気がします。
0そうだね
プレイ済み
返信[18]
親投稿
おちゃめ ochame_nako
表示された道路に隙間が開く理由は簡単です。 かいしゅうさんが作られたプログラムはほぼ同じ比率で縮小した横長の道路のスプライトを縦方向に等間隔(6ドットごと)に表示していますが、パースがついているためこの道路を真上から見ると(1)のように奥の方が長くなっているのです。 こうやってみると隙間だらけなのが一目瞭然ですね。 では、どうするかというと(2)のように奥に行くほど道路の縦方向の比率を大きくする(画面上では同じドット数にする)か、(3)のように均一な幅で統一(画面上では奥に行くほど縦方向に小さくなる)かという方法を採る必要があります。 擬似3Dにおいてはどちらが正解というわけではなく好きなほうを選択して構いません。 ただし、(2)と(3)では距離感が変わるためそれに関しては注意をする必要があります。
1そうだね
プレイ済み
返信[19]
親投稿
おちゃめ ochame_nako
ちなみにИあっキー#ジャロさんの最初の画像(5つ上のコメント)は(2)、次の画像(3つ上のコメント)は(3)の方式が採られていると思います。 計算式等はいろいろありますが、3Dだとカメラ位置を決めておくと計算がしやすいです。 あくまで「擬似」なんだからカメラ位置はアバウトでもそれっぽく見せることは可能ですが。(実際、そのように作られたゲームも少なくない) あと直角カーブはよく使われる擬似3Dの表示方式である「横ずらし」では対応できません。 したがって、これを行うならばコース全体図を用意してそこからスキャンしたものをパースをつけて表示という形を採るのがベターだと思います。 この場合は直線の表示方式そのものは(1)~(3)のどれでも対応が可能なのでまずは、カーブがない直線コースから確実に表示できるようにするというのもありだと思います。
0そうだね
プレイ済み
返信[20]
親投稿
かいしゅう kaikai.jp
まさか回答が来てるとは知らず自力で解決してました… まぁいいや 次の問題「道路を奥から手前へスクロールしようとしたら逆になった」です 数値逆にすればいいじゃんとか思ってたんだけど…
0そうだね
プレイ済み
返信[21]
親投稿
かいしゅう kaikai.jp
数値逆にしたらこうなりました…
0そうだね
プレイ済み
返信[22]
親投稿
かいしゅう kaikai.jp
これがプログラムっす 矢印のとこが大事な数値っす SPVARを変数に入れてないのはあとあとわかんなくなるからっす 相変わらずのスパゲティでサーセン
0そうだね
プレイ済み
返信[23]
親投稿
3Dかぁ 地面は描けたけど高さと奥行きのあるオブジェクト置けなくて挫折した
0そうだね
プレイ済み
返信[24]
親投稿
おちゃめ ochame_nako
320~335の値をループさせる必要があるのにそれ以外の値になってしまうのが表示崩れの原因ですね。 そうなるのはなぜかというと逆方向に動かしたときが考慮されたプログラムになってない(正しく判定が行われてない)ためです。 SPVAR I,0,SPVAR(1,0)-1とした時には値が負数になる可能性もあるためIF SPVAR(I,0)<16 THEN ~だけでは条件が不十分ということです。
0そうだね
プレイ済み
返信[25]
親投稿
おちゃめ ochame_nako
一定の値をループさせるならばMODを使うのが簡単です。 例えばBの値が1の場合もー1の場合もあり得るという場合でも A=(A+B+16) MOD 16 でAの値は0~15の間をループさせることができます。この「+16」というのが重要でループ数と同じ値(同周期の値)を設定することでA+B+16が負数になるのを防いでいます。 16を入れずにA=(A+B) MOD 16とするとAが0、Bが-1の時は次のAの値は-1 MOD 16(=-1)となり0~15のループから外れてしまいます。
0そうだね
プレイ済み
返信[26]
親投稿
おちゃめ ochame_nako
あまさとしおんさんへ 道路と同じ方法で横ではなく縦で表示すれば高さと奥行きのあるオブジェクトを表示することができますよ。(ただし、スプライトで表示するならばオブジェクト数によってはスプライトの限界を超える恐れがあるけど) この方法は回転を伴わない処理ならば簡単に3Dで表現できます。
1そうだね
プレイ済み
返信[27]
親投稿
おちゃめ ochame_nako
電車ゲームにおいて駅のホームみたいなのを3Dで表示したいという場合にはホームの断面は同じ形状であるためこの方法で簡単に表現できますが、断面が変化するような物体の場合は頂点座標を求めてポリゴン表示しないと難しいでしょうね。
1そうだね
プレイ済み
返信[28]
親投稿
いや…ただ隙間を少なくして、 縦の拡大率を上げただけですね… (2)でも(3)でもないです。 ここまで作ったけど、 いいネタが思い付かない…
2そうだね
プレイ済み
返信[29]
親投稿
おちゃめ ochame_nako
要するにちゃんと奥行きの計算をしたものではなく見た目がそれっぽくなるようにしたものということですね。 私のプチコンmkII用の擬似3Dレースゲーム講座もそういう感じで書いています。擬似3Dなんだから「正しく計算しなくてはならない」なんてことはないですからね。
0そうだね
プレイ済み
返信[30]
親投稿
かいしゅう kaikai.jp
新しく建てるからここストッピなんだぜ
0そうだね
プレイ済み