[[アドオン開発]] // #contents *png製作時の検討事項 [#cd3da025] pakファイル作成に必要なpngを描く上で参考になるかもしれない技術です。 **陰と影 [#w684d900] Simutransの太陽は真南仰角60度にあります。 面の法線と太陽の向きのなす角の余弦と環境光の強さの和がその面の明るさになります。 これは各色成分についても成り立ちます。 下図はhttp://forum.simutrans.com/index.php?topic=782.0 より引用 &ref(geometry.png,nolink,600x400,); 「陰」とは、立体にできる暗い面のことを言います。 日光が強いほど明面は明るくなります。相対的に陰は暗く見えます。 また日中を想定する場合、環境光は空の青色によりやや青色がかるため 太陽光(白色光)の弱くなる陰では相対的に青みがかって見えることがあります。 青くなく光沢もないものではこの効果は非常に弱まります。 &ref(GazouKaisetsu_2.PNG,nolink); ↑全体の明度差を上げた。 &ref(GazouKaisetsu_4.PNG,nolink); ↑全体の彩度を下げ、灰色っぽくした。 夕暮れ時にあなたの後ろに付いていく黒いもののことを、「影」と言います。影には色の要素のほかに、長さという要素もあります。 真南60度からの影の長さは高さの約0.6倍になります(∵1/(tan(π/6))≒0.57)。 ↓影は太陽光が遮られるため入射光は環境光のみとなります。したがって非常に明度が落ちます。 &ref(GazouKaisetsu_5_1.PNG,nolink); **照り返し [#z3e25532] ↓暗い光沢面は、明るい光沢面と凹接していると光を受けてぼんやりと明るくなります。 S向き垂直面では太陽光、環境光ともにこの影響を受けるため効果は比較的大きく、E向き面では環境光のみこの影響を受けるため効果は小さいと考えられます。 光沢の少ない砂や土、磨かれていない暗色の石などではこの影響は小さいです。 &ref(GazouKaisetsu_6_1.PNG,nolink); **アンチエイリアス [#y9b40249] &ref(GazouKaisetsu_8.PNG,nolink); &ref(GazouKaisetsu_9.PNG,nolink); ↑上がアンチエイリアス前、下がアンチエイリアス後。 違う色と色の間のギザギザを目立たなくする塗り方です。 ある量を周期的に離散化するときにもとの量と異なるノイズが乗る現象をエイリアスと呼びます。 画像においてはある境界をピクセル単位に描く際に現れるジャギーがこれに相当します。 これに対処するため1ピクセルを元データが占める面積比によって中間色を置く操作をアンチエイリアスと呼びます。 不適切なアンチエイリアスにより境界が上下したり、境界のシャープさが損なわれる場合があります。 中心線の位置を常に意識し最小限の量を添加しましょう。 &ref(GazouKaisetsu_7_1.PNG,nolink); ↑アンチエイリアス処理後 #comment