正月休みの帰省先で暇にかまけて普段やらんことをやる。ということで、今回のネタはコレ。
GTSportではSVGファイルをデカールとして取り扱える機能があるものの、コイツがなかなかに曲者で、SVG仕様に完全に準拠しているわけではない。公式サイト(オンラインマニュアル)には「SVGのバージョンが1.0、ないしは1.1であること」とあるが、あれは嘘……というか、正しくない。
こんな感じで、特にグラデーション周りで問題が起こることが多く、デカール制作者の頭を悩ます種になっているらしい。何故こんなことが起こるのか不思議で、ちょっと自分でもやってみた。
再現したのがこんな感じのSVG。
なんの変哲も無い、同一のグラデーションのかかった2つの長方形があるだけであるが、これをGTSport側で表示すると……
このように、グラデーションが死んで、真っ黒になる。何故???
実は当初、上記のような状況が全く再現せず。頭を悩ませていた。その時のものがこちら。
さっきのと全く変わらない。(よく見るとフィルの設定が先ほどとは違うのだが、これが再現しなかった理由だった)
ただこれをGTSportで表示すると正しく表示される。これの違いは何だろうか?ということで中身を比較してみる。
見づらいが……言葉にすると、問題の無いSVGファイルは、長方形とグラデーションの設定が1対1であるのに対して、問題のある方は2対2対1になっている。
と、ここでお詫びです。この事象を調べていたら、偉大なる先達が既に、しかも詳しく分析・解析されていることが分かりました。
GTSportのユーザーデカール機能でグラデーションが表示されない問題と対処法(追記あり)
なるほど、分かりやすーい! 睨んでいたとおり、「xlink:href」が問題だったんだね!
と、これで終わりだと何なので、後半に続く。正月休み明ける前に何とか公開したい……