ないブログに表示されています。新しい記事を書く事で広告が消えます。その2今回は透過について語っていきます。TrainsimとOpenBVEでは若干違います。その仕様の違いを例えてみると例:)------------------------------------------------CreateMeshBuilder,AddVertex,x,y,z,(中略)SetTextureCoordinates,n,x,ySetDecalTransparentColor,0,0,255Setcolor,200,220,240,GenerateNormals,------------------------------------------------このように書かれたcsv(ストラクチャ)があるとします。Trainsimの場合、色に関しては構文を読み取る順番を意識しません。一方で、OpenBVEの場合はストラクチャを読み込む時に書かれている順番を意識します。要するに、上から書かれている順に読み込んで生成していくようなのです。次のような場合------------------------------------------------SetDecalTransparentColor,0,0,255Setcolor,200,220,240,------------------------------------------------と、------------------------------------------------Setcolor,200,220,240,SetDecalTransparentColor,0,0,255------------------------------------------------この場合では、OpenBVEだと前者が正常に透過されません。色をつけてから透過するのはOK。...つまり透過されない理由が矛盾しているのです。Trainsimは------------------------SetDecalTransparentColor,0,0,255SetDecalTransparentColor,0,0,254------------------------を"近似値"として同一に扱う。どちらでも透過されます。OpenBVEは全ての色を正確に読み込むため、------------------------SetDecalTransparentColor,0,0,255SetDecalTransparentColor,0,0,254------------------------このような場合でも255と254をきちんと分けて生成されます。Trainsimでは本当のテクスチャの色と一つ違う色を取っていても平気だったのに対して、OpenBVEではそこに気を払わなければいけなくなりました^^;OpenBVEを作る上での注意する点はこのくらいかな。あとの細かいことは一言で解決するので、ついでに載せときます。Fogを運転視野から程遠い値(8000など)をとって背景テクスチャの色に近い色を記入すると綺麗になる。→車両ストラクチャの中心位置が0でないのが原因。がんばってずらして0が基準になるようにすることで解決。*OpenBVE専門に作るなら「TranslateAll」で一発。→Setcolor,r,g,b,αとAddFace2の競合が原因。透過されたストラクチャの上にストラクチャを置くと、上に置いたストラクチャ表示がおかしくなります。あるパターンとして、海の上に橋を置いたときに、橋の一部のFaceが点滅してしまいます。「AddFace2」を「AddFace」に直しましょう。Trainsimの魅力は、こうした良い意味での"曖昧さ"があるからこそなのかもしれませんね。