[{PageViewPlugin}]
[Minecraft Programming]
!!!Abstract
国交省でプラトーという面白いプロジェクトがある。全国の都市をデジタルツイン化して、オープンにするというもの。このデータをマイクラで使えないか。
!!!Topics
!!情報収集
*GITHUBに変換ツールらしきものがある。新宿を変換した例も。
|[https://github.com/Project-PLATEAU/plateau2minecraft]
*example 埼玉
|[https://edu.watch.impress.co.jp/docs/news/1620192.html]
*example 新潟
|[https://www.nais21.co.jp/3d/plateau/minecraft/]
*example 四国
|[https://www.skr.mlit.go.jp/kikaku/infraDX/plateau.html]
!!変換してみる
*[Python]!?
|Windows へのPythonのインストールは[Python]で
|その後[1]に従い、GITHUBのリポジトリをクローンして、そのトップフォルダで”poetry install"と打ってみる。jsonschema-specificationsとnumpyが失敗。それ以外はインストールされたようだ。さて、動くのか!?→poetry run python -m plateau2minecraft ・・・とやってみてもplateau2minecraftというモジュールがありませんと言われてしまう。つまりちゃんとインストールされていないということか。
*MACで
|結局Windows側では、jsonschema-specificationsのエラーが解決できず、ためしにMACでやってみる。MacへのPythonのインストールはこちらに→[Python]
|Windowsででたようなjsonschema云々というエラーは起きず、ちゃんとツールもインストールできた模様。その後、[1]のマニュアルにそってG空間情報センター[5]からデータをダウンロードして、ツールに食べさせてみる。途中most likely due to a circular importとかエラーメッセージが出たけど、types.pyというファイルの名前がよくないらしく[3]、types2.pyに変更して、呼び出している部分をちょっと変更すると動くようになった。結構時間がかかったものの、なんか出力された。これをマイクラのJava版で開いてみると。。。ちなみに[Mac book air]の時のRegionフォルダは、[4]によると~/Library/Application Support/minecraft/saves/から行ける場所にあります。
|[{Image src='Plateau_Minecraft/near_nishiogi_sta.png' width='500'}]これは西荻窪駅の北口の交差点。書いてあった通り、岩ばかりで殺風景ではあるものの、形としては、いい感じ。
[{Image src='Plateau_Minecraft/google_earth_nishiogi_sta.png' width='500'}]
これがGoogle Earth!
!!ソース解読
|[1]のマニュアルによると、”交通(tran)・橋梁(brid)・都市設備(frn)・植生(veg)の変換に対応しております”とのこと。解読が必要か。。
|[1]のparser.pyを見るとfeature_typeというインプットされる文字列があります。この中には、'bldg'、'tran', 'brid', 'frn', 'veg'が入るようです。これは、ファイル名から読み取るようで、例えば、例で示される新宿のインプットファイルの名前は、53394535_bldg_6697_op.gml。このファイル名からbldgを読み取って、建物のデータとして読み取るようです。というとファイル名に例えばtranという交通のデータがあるのか?->[1]のp17を見るとちゃんと書いてある。早速tranデータをツールに読み込ませてみると。。
[{Image src='Plateau_Minecraft/plateau_tran.png' width='500'}]
これも西荻窪駅北口付近。探すのにすごく苦労した。
|しかし、建物は石じゃなくてクウォーツの方がいいし、道路は灰色コンクリートの方が好き。出力するブロックの種類変えられないかな。converter.pyの68行目付近に以下の記述発見。ここを変えられれば。
{{{
stone = Block("minecraft", "stone")
}}}
|ここを以下のように変えると。。こっちの方が好き。
{{{
stone = Block("Minecraft", "quartz_block")
}}}
[{Image src='Plateau_Minecraft/quartz_nishiogi.png' width='500'}]
|あと、なんとかTranとbldgを一緒に出せないかな。
!!変換
*Chunk?
|別ページで考えよう→[Minecraft_world_convert]
!!!Reference
#[#1]2023年, 国土交通省都市局, Minecraftワールドデータ作成マニュアル, [https://github.com/Project-PLATEAU/plateau2minecraft/blob/main/docs/Minecraft%E3%83%AF%E3%83%BC%E3%83%AB%E3%83%89%E3%83%87%E3%83%BC%E3%82%BF%E4%BD%9C%E6%88%90%E3%83%9E%E3%83%8B%E3%83%A5%E3%82%A2%E3%83%AB.pdf]
#[#2]2022年10月1日, nippa, Python Poetry完全アインストール, [https://timesaving.hatenablog.com/entry/2022/10/01/150000]
#[#3]Pythonでファイル名が悪くてimportでハマった, [https://qiita.com/7shi/items/9c15e2aca88bd40eed2a]
#[#4]マイクラ(Minecraft)のデータが保存されている場所【Windows/Mac】, [https://zenn.dev/to3izo/articles/36a26c33fdd0be]
#[#5]G空間情報センター, 3D都市モデル(Project PLATEAU)ポータルサイト, [https://www.geospatial.jp/ckan/dataset/plateau]