2010年4月10日土曜日

FreeStyleのスタイルモジュールの改行コードにはまる

スタイルモジュールの改行コードはLF(UNIX形式)かCRLF(windows形式)でないと
FreeStyleが正しく読んでくれない模様。

blenderのGUIでのスタイルモジュール指定時や、Freestyleがスタイルモジュールの
解釈を始める時などにincompatible file format的なエラーが表示がされたりすれば
気が付いたかもしれないが、ログを見ても何もエラーがでてないのでしばらく原因が
分からずしばらく嵌る。


FreeStyle統合版のblenderであれこれやるときはエディタでスタイルモジュールを
書きつつテストレンダという流れで作業をすることが多いかと思います。
自分の場合blender内蔵のテキストエディタは以前ちょっと痛い目を見たのでmiを
使ってスタイルモジュールを書いています。

が、たまにスタイルモジュールがまったく反映されないことがあるんで調べてみたら
miで新規作成すると文字コードがUTF-8、改行コードがCR(Mac形式)なテキストと
してファイルが作成されるからだった。とほほ。

これまで動いてた内容に全部戻してもまったく線が描画されないし、もしかして
最近のビルドで仕様が変わったんじゃ?と思いあれこれドキュメントを探してみたりw
いやーあせった。


ところでCRLFなwindows形式の改行コードだとどうだろう?と思って試してみると
当たり前のようにスタイルモジュールの内容はレンダ結果に反映される・・・。

絶望したーっ。iPadで注目を集めてみたり、iPhoneが好調で天狗になってみても
所詮世の中の多くはwindowsユーザー、バリバリの開発者は*nixってことなんですよ。
osxだけにスポットライトが当たるところでは存在感を発揮しても、そこから少しでも
外れればまったく存在感なし、いるのかどうかさえ分からないようなmacに絶望したーっ。


ちなみに改行コード以外に文字コードの影響は無いのかと思い調べてみたところ
そちらは特に問題ない模様。なので、

・一昔前のwindowsでありがちな、文字コード:Shift jis、改行コード:CRLF
・一昔前のUNIXでありがちな、文字コード:euc-jp、改行コード:LF

で作成したスタイルモジュールもちゃんと反映されました。


---------------------------------------------------------------
コメントなどありましたらこちらへ->web拍手