■ トピック関連記事
無題 投稿者:mqou 投稿日:2011/04/09(Sat) 15:30 No.7466

vdrdlgMQのトラブルです。
vdrdlgMQをインストールした状態で保存したmqoファイルをimoceaでひらこうとしてところ、エラーメッセージが表示されてインポートすることができませんでした。
vdrdlgMQを削除して該当するファイルを上書き保存したところ問題は発生しませんでした。
プリミティブの立方体一つだけのファイルでも同様の現象が発生したのでメタセコ側の問題ではなさそうです。
調査をお願いします。

Re: 無題 - sio29   2011/04/09(Sat) 15:59 No.7467
vdrdlgMQはMQOを保存するときユニークIDを保存するようメタセコに設定しています。
imoceaがMQOのユニークIDに対応していなければ正しく読めない可能性があります。
その場合はMQOを保存するときにver2.2互換のMQOで保存するようにしてください。
ver2.2互換で保存すればユニークIDは保存されません。
ちなみにユニークIDの保存機能はメタセコ自身の機能で、
vdrdlgMQ以外にもユニークIDを保存するプラグインがあれば同様現象が起きるはずです。
あと私はimoceaを所持してませんのでチェックは出来ませんのでご自身でチェックしてください。
Re: 無題 - mqou   2011/04/09(Sat) 23:54 No.7468
>imoceaがMQOのユニークIDに対応していなければ正しく読めない可能性があります。
mqoに追加されていた
vertexattr {uid {...}}
という記述を削除したところ正常にインポートできました。
プラグインの動作に関してなのですが、vdrdlgMQを導入した環境では保存したときに無条件でmqoにvdrdlgMQによる記述が追加されてしまいます。
vdrdlgMQの操作がなぜtmpフォルダ内に作成されるmqoに限定されないのでしょうか。
元のデータが書き換えられてしまうのは不都合に感じました。
Re: 無題 - sio29   2011/04/10(Sun) 00:54 No.7469
vertexattrはメタセコが書き込むデータです。
プラグインからメタセコへユニークIDを書き込む指示をするとMQO保存時にvertexattr(ユニークID)が書き込まれます。
これはvdrdlgMQの機能ではなくメタセコの機能で正しいMQO形式のデータです。
なので元のデータを書き換えているのはvdrdlgMQではなくメタセコ自身です。
なおvdrdlgMQはvertexattr(頂点のユニークID)は使用してなくマテリアルのユニークIDのみ使用してますが、
SDKの仕様上マテリアルのユニークIDのみを出力することとはできません。

あと先にも書いたようにver2.2互換で保存すればわざわざ手作業でmqoデータを書き換えなくてもユニークIDがないデータとして書き込まれます。
ver2.2互換で保存するには「名前を付けて保存→メタセコイア オブジェクト Ver2.2互換(*.mqo)」という項目を選択して保存してください。
ただしver2.2互換で保存した場合vdrdlqMQの設定や他のプラグインのデータも消えてしまいます。

問題はimoceaが新しいMQO形式に対応していないことにあります。
imocea自身サイトなども消えてしまいアップデートが望めないことから、
imoceaで利用するデータのみVer2.2互換で保存するしかありません。
Re: 無題 - mqou   2011/04/10(Sun) 23:24 No.7471
>なので元のデータを書き換えているのはvdrdlgMQではなくメタセコ自身です。
なるほど。納得しました。
早く、詳しい対応に感謝します。
処理 記事No 暗証キー

- Joyful Note -