mieki256's diary



2021/10/06(水) [n年前の日記]

#1 [python][pygame] 道路の自動生成処理を書き直し

Python + Pygame を使って道路の自動生成処理っぽいことができないか試しているのだけど。

道路相当を一旦全部引いた後で、マップ全体をスキャンして、交差点や角を探して置換する方法は無理がありそうだと分かってきた。交差点その他として判別すべきパターンが、あまりにも多過ぎる…。Tiled上で、マウスでポチポチと、置換前後のパターンを増やしてみたけど…。こんなの人間が目視と手作業でリストアップなんかしてられない…。絶対にパターンの見落としもあるだろうし…。

そもそも、ロードローラーモドキのオブジェクトを大量発生させて、一気に並列して動かすから処理が面倒臭くなるような気がしてきた。一本一本、順々に引いていけば、タイルを置いていく際に交差点かどうか等の判断も比較的できるようになるのでは…。

ということで、処理の書き直しを始めた。

パターン置き換え用辞書の生成スクリプトを書いたり等もしてたけど、そのあたりは没だな…。

2021/10/07追記。 :

せっかく書いたのにもったいないから一応アップロード。

動かすと以下のような感じになる。Spaceキーで生成し直し。




ソースや使用ファイルは以下。

_05_makeroadtilemap2.py
_rep_dic0.json
_road_chip.png

辞書生成用のスクリプトや、置換パターンの Tiled用ファイルは以下。

_04_make_replace_dic.py
_road_replace_pattern.json
_road_chip.json
_road_replace_pattern.tmx

置換パターンを手作業でリストアップしていったけど、以下のような量になったわけで…。

road_replace_pattern_ss01.png

これでもまだパターンが足りない…。しかも、一度正しく置換した後、また間違った状態に置換し直している可能性も否定できないわけで…。この方法はダメだなと…。

以上です。

過去ログ表示

Prev - 2021/10 -
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project