This repository has been archived by the owner on Apr 26, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
TownGenerator2
Kasugaccho edited this page Mar 12, 2019
·
19 revisions
道伸ばし生成
二次元配列であるint matrix[y][x]がある。(xはX軸方向のマスの大きさ, yはY軸方向のマスの大きさ)
matrixは全ての値を0で初期化する。
matrixに以下の手順に示す通りに道(曲線)を生成する。
-
始点を決め(マップの端が相応しい)、そこから(値が1の)曲線を描く。 ※曲線は画面端や曲線に当たるまで描く。
-
(値が1の)曲線の任意の位置(ある程度ランダム)を始点として(値が2の)曲線を描く。
-
(値が1の)曲線の任意の位置(ある程度ランダム)を始点として(値が3の)曲線を描く(ただし、別の曲線と距離が遠くなる場所を始点とする)。
-
曲線を書き終える都度、曲線の値をインクリメントして、3.を繰り返す。
-
(値が1の)曲線から曲線が引けなくなったら次のインクリメントした曲線(この場合は値が2の曲線)から曲線を生成する。
赤色の曲線(値が1の曲線)を引く。
赤色の曲線を始点とした曲線を引く。
赤色の曲線を始点とした曲線を引けなくなったら、 赤色の曲線(値が1の曲線)の次に引いた曲線(値が2の曲線)を始点とした曲線を引く。 ※この場合は青紫色。
この操作を曲線が引けなくなるまで繰り返す。
・始点
赤色
↓
・赤色
青紫色
明るい緑色
山吹色
オレンジ色
↓
・青紫色
明るい赤紫色
紫色
青色
↓
・明るい緑色
水色
↓
・山吹色
くすんだ水色
↓
・オレンジ色
明るい青緑色
黄緑色
くすんだ黄色
桃色
↓
・明るい赤紫色
なし
↓
・紫色
なし
↓
・青色
なし
↓
・水色
薄い赤色
薄い赤紫色
薄い青紫色
薄い青色
薄い水色
↓
・くすんだ水色
なし
↓
・明るい青緑色
薄い青緑色
↓
・黄緑色
なし
↓
・くすんだ黄色
薄い緑色
↓
・桃色
なし
↓
・薄い赤色
薄い黄緑色
↓
・薄い赤紫色
なし
↓
・薄い青紫色
なし
↓
・薄い青色
なし
↓
・薄い水色
なし
↓
・薄い青緑色
なし
↓
・薄い緑色
なし
↓
・薄い黄緑色
なし