【ゲーム】simutrans 自作マップ
そこに、結論じみた形で高さとクレースケールの表を書いたのですが、どうもそれだけではなくて、simutransのバージョンや設定で違いがある事がわかりました。のでそれを書きます。
まずバージョンによって違います。すべてのバージョンで確認したわけではないのですが、
simutrans 102.2.1
simutrans 120.4.1 <現時点での最新
少なくとも上記2バージョンで違いがあるです。
先日書いたのは、simutrans 120.4.1での値になります。
そこでいろいろ試してみようと思ったのですが、よく考えたらsimutransはソースが公開されてます、そうです、シムトランスはsourceが公開されているんです。なのでソースコードを確認してみる事にしました、source codeはSVNで管理されているようで、GitHubでも公開されています。(SVNとGitHubどっちが本流本元なのかな、たぶんSVNのような感じです。)
確認したのは下記2バージョンです。
・simutrans 102.2.1
https://github.com/sanna/simutrans
/simworld.cc : karte_t::get_height_data_from_file()
設定による違いは無いです。ので1つです。
・simutrans 120.4.1
https://github.com/aburch/simutrans/tree/master/simutrans
/dataobj/height_map_loader.h : rgb_to_height()
設定により違います。
[height_map_conversion_version_new ON/OFF]
[pak_height_conversion_factor == 2 / != 2]
4通りあります。
この5つの違いを確認すべく、確認プログラムを作ってそれぞれ0~255の結果をテキストで出力しました。結果はテキストファイルとして公開しますね。公開結果テキストはココです(ついでに確認プログラムのソースも公開しておきます。単にsimutransのソースと同じ計算してprintf()してるだけですが。)あ、値はなぜかsimutransのゲーム画面で表示されるものより1少なかったりしますがたぶん後の処理で表示は+1されるんでしょということで気にしない方向で(笑い) まあ、区切りがわかればいいという程度で。
簡単に結論を書くと
・simutrans 102.2.1は、11区切りか10区切り。
0~10が-14、11~21が-13、22~31が-12、、、235~245が8、246~255が9
(区切りとはこんな感じですので、以下は値範囲の具体的な記述を省略します。
詳しくは結果テキストをご覧ください。)
・simutrans 120.4.1は、
[height_map_conversion_version_new ON/OFF](以下verと呼びます)と
[pak_height_conversion_factor == 2 / != 2](以下convと呼びます)の設定で変わります。
ver OFF conv == 2 :5区切りか6区切り。
ver OFF conv != 2 :11区切りか10区切りで、simutrans 102.2.1と同じ。
ver ON conv == 2 :4区切りで、252~255が29(ゲームでは高さ30になります)
ver ON conv != 2 :8区切りで、【ゲーム】simutrans 自作マップ で書いたのはこれ。
となりました。
ver ON conv == 2で高さ30まで表現できるのはいいなぁと思いますた。
height_conversion_factorの設定を2にして海-20 高さ30まで表現可能 |
0 件のコメント:
コメントを投稿