Simutrans Advent Calendar 2025 11日目の記事となります。
Simutrans Advent Calendar 2025 - Adventar
最近Simutransはご無沙汰しておりまして、他のことでいろいろ忙しい日々を過ごしております。大遅刻をかましてしまい申し訳ございません… (仕事もそうだし、主に他のゲーム原神やランニングに時間を割かれております。)
ということで、今回は昨年の記事に引き続き、マップ関連のお話をしていきます(時間があまりなくて途中で止まっているのですが)。最近面白いアルゴリズムを見つけたので、何か役立つようなヒントがあればと思います。
小学校・中学校の理科で習う川の三作用、浸食、運搬そして堆積。これを長い年月をかけて山野を削っていった結果が侵食地形で、これによって現実の地形は山あり谷あり起伏に富んだ地形となっています。普段、日本でよく見られる地形はほぼこの侵食地形になっています。

典型的な侵食地形 (出典: 地理院地図)
他の侵食地形としては海蝕、風蝕、氷河地形が挙げられますが、今回のシミュレーションでは河川による浸食を扱います。
以下のアルゴリズムを参考にして、実験を行ってみました。
https://github.com/dandrino/terrain-erosion-3-ways
アルゴリズムはだいたい以下の通りです。
実際、コードを見るとこのように非常にシンプルな実装となっていまして、確かに簡易的なモデルを作るとそうだけど、そう簡単に行くかな…?と疑問でした。というわけで、早速動作確認です。
GUIを作り、シミュレーション部分はほとんどコードをコピって実験を行ってみます。