2022年07月25日

0273

■ 更新内容

・チェック系UIに対する選択状態の任意色設定 (0257b/c)
・データフォルダ内の配置更新
・テキスト系設定ファイルをUTF8で統一
・OBJファイルロード微修正
・リスト共通操作 [含]ボタン機能
・リスト選択対象の反転
・表示枠-枠内要素リストの名称ジャンプ移動枠
・表示枠-枠内要素移動パターン(Ctrl+X→Ctrl+V)
・表示枠モーフマスクへ材質モーフ他対応
・表示枠-枠内要素の一括登録
・同名ボーンからのJoint位置設定
・仮想軸設定と視点方向の相互変換
・TransformViewのツリー枠表示拡張/枠調整他
・名称一括編集での複数候補による置換方式他
・サイズ変更プラグイン更新
・CSVコピー機能の汎用化/仕様改変/補助編集機能

以上
※設定ファイルの配置などが変更されているため、上書きによる更新禁止


いつの間にやら (こちらも) キリのよい日和になってしまったようですね。機能的な更新内容としては長い期間を空けたほどのものでもありませんが、せっかくなので現在の内部verで更新しておきます。

●チェック系UIに対する選択状態の任意色設定 (0257b/c)

「チェック項目がまともに認識できない?」 というような "Win11問題" への暫定対応として前ver修正版 (2/20~登録) に入れておいた機能です。

といってもフィードバックなどは特に見掛けませんでしたので、十分な対応になっているかどうかは不明です。

自前対応で改善できないとなると こちらとしてはお手上げになります。文句は (無益なUI改悪を続ける) MSの方へどうぞ。
※他にもWin11環境で問題が出るような話はたまに目にしますが、具体性も不足し、個々の環境問題?を普遍的な問題として喧伝するようなものも多いため、対応の仕様がありません (開発環境の Win11への移行予定は当面なし)

なお変更色や有効状態については _dataフォルダ以下の "ExCtrlColor.txt" で設定可能です。前ver修正版とは配置場所及び設定内容が異なるため、そのまま上書きしないようご注意ください。

Win10環境でも初期有効状態になっていますが、(有効行)先頭の Enable,1 を Enable,0 へ変更すると無効化され、無駄な処理が少しだけ減ります。といっても負荷的にはほぼ変わらないので気にするほどのことでもありませんが。

●データフォルダ内の配置更新

テンプレート関係など配置が変更されています。過去verへの上書き更新にご注意ください (3回目)

●テキスト系設定ファイルをUTF8で統一

旧環境(PMDエディタ) の開発が始まった頃はまだまだ Shift-JIS(ANSI) が優勢な頃でしたが、現在はほぼ UTF8での置き換えが完了しているため、古い設定ファイルなどを UTF8に変更して統一しました。

※"和英変換.txt" や "IK制限角.txt" を自作している場合 (そのままファイルコピーしないよう) ご注意ください

ちなみにプログラムの内部的には UTF16が主流のため、UTF8での記述により不都合が生じるケースも稀に?あるかもしれません (変な絵文字とか使わないように)

●OBJファイルロード微修正

やたらと面数が増える OBJファイルへの一部対応です。すべてのケースに対応できているわけでないと思われます (開発環境では確認できませんので)

材質の非透過度(何故か 0で出力する環境があるらしい) や面/軸向き、UV方向などはそれぞれで修正してください。関連編集機能はエディタ本体内にだいたい揃っています。

●リスト共通操作 [含]ボタン機能

Pmx編集の (名称持ちオブジェクトの) 各リスト上部に [含] というボタンが新規配置されています。左隣の名称ジャンプ移動枠に設定された文字列を "名称内に含む" 対象を選択状態にします。

また Shift+で含ボタンを押した場合は、正規表現で判定されます。例えば "(左|右)髪" にすると左右の髪 (左髪??と右髪??) がすべて選択されます。

※正規表現の詳細については "C# 正規表現" などで検索すれば色々出てきます...が、専門系の解説は非常に解り難いため正直オススメはしません

●リスト選択対象の反転

リストメニュー内に "選択状態の反転" が増えています。View側の同名機能と同じ効果を持ちます。なお Ctrl+R は名称の一括編集に (先に) 押さえられているため、こちらは未設定になっています (メニュー呼び出しのみ)

●表示枠-枠内要素リストの名称ジャンプ移動枠

表示枠の枠内要素に名称ジャンプ移動枠及び含ボタンが配置されました。

ただし内部処理的に多少無理をしているため、ボーンやモーフの要素数が莫大な数になると動作効率が著しく悪くなるかもしれません。まあそもそもそんな PMXモデルは作成自体が非推奨ですが...

●表示枠-枠内要素移動パターン (Ctrl+X→Ctrl+V)

表示枠の枠内要素を別の枠へ移動する場合、Indexコピー(Ctrl+X) → 削除 → 移動先で追加(Ctrl+V) という動作手順になっていました (または一旦削除して右側の操作枠から新規で追加)

今verでは、削除操作は不要になり Indexコピー(Ctrl+X) → 移動先で追加/移動(Ctrl+V) だけで移動ができるようになっています。

※Ctrl+の場合は確認が出ない (メニュー処理も同様)

ちなみに表示枠の枠内要素は重複登録をさせないように、他の項目とは異なる操作系に (わざと) なっています。後述の CSV関連も共通操作は適用されていません。

●表示枠モーフマスクへ材質モーフ他対応

右側のモーフ種類マスクに入れ忘れていたようなので追加。まあ (MMDの表情枠の仕様上) 使うことはなさそうですが。

●表示枠-枠内要素の一括登録

枠内要素のリストメニューに "未登録分の一括登録" が増えています。一応過去verでも右側操作枠から一括登録は可能でしたが、追加キータイプの操作はまず忘れられる機能なので、リストメニューの方に明示配置しました。

●同名ボーンからのJoint位置設定

Jointのリストメニューに "同名ボーンから位置設定" が追加されています。右側操作内の ボーン選択→ボーン位置設定 を名称からショートカットできる機能です。

注意点として 標準モデルなどでは 左髪"1" と 左髪"1" など全角半角が混在になっているケースがあり、この場合は正常に動作しません。

モーション流用のためなど (後発のモデルでも) そのままの名称設定を継承している場合等、ご注意ください。

●仮想軸設定と視点方向の相互変換

片側変換から双方向への変換ができるようになりました。対応のメニュー名も変更されています。

※逆側はプラグイン(スクリプト) 経由でいいかな?という判断でしたが、やはり機能配置的にバランスが悪いので

●TransformViewのツリー枠表示拡張/枠調整

ボーンのツリー(階層) 表示は PMXとしてはさほど重要な位置付けではないため、TransformView内で (ひっそりと) 確認だけできるような機能配置になっています。

ただ全体像の確認にはウィンドウの枠幅変更が一々必要になり、操作的にも諸々面倒なので、1ボタンで解決できるようにした次第です。

※TransformView右側操作枠メニュー [表示枠/ツリー]-[枠幅拡大] で全体(横) が見えるよう窓枠を調整

また枠幅変更後に元へ戻すのも同様に 無駄に面倒な操作 になるため、こちらも TransformViewメニュー [表示]-[窓サイズを初期状態へ戻す] で初期化できるようになっています。

両者の配置場所が異なる点にはご注意ください。他にモーション再生の開始位置設定や VMDリストへの現在ポーズモーション登録などの機能も追加されていたりします。

●名称一括編集での複数候補による置換方式他

名称一括編集窓のメニュー内に [複数候補による置換編集] が増えています。古いバージョンの経験者は 「どこかで見たような気が?」 という感想を持たれるかもしれませんが、まあそういう機能です。

とりあえず変換したい対象の名称を CSV形式(対象名,変更名) で左右に並べておけば置換対象として変更名へ設定します。

また先んじて CSV形式のテキストファイル(UTF8/*.txt|*.csv) に内容をまとめておけば、そのファイルをドロップすることでも機能します。ファイルドロップは名称一括編集窓の方でもよいので、わざわざ置換編集を開く必要もありません。

変更名設定後は 確定 で変更完了です。ぽいっと放り込んで (OKして) 確定押すだけ。簡単ですね。

●サイズ変更プラグイン更新

大きさや範囲からのサイズ設定により、倍率が自動で調整される機能が追加されています (頭頂高が一般的な身長設定)

単位系としては座標(実値) と標準モデル基準でのcm(センチメートル)、他に物理演算の重力設定によるcm単位(暫定値) を選択できるようになっています。

●CSVコピー機能の汎用化/仕様改変/補助編集機能

詳細については readme.txt の "●CSVコピー" を参照してください。要約すると 「従来の CSVコピペ機能を通常編集機能として使いやすくした」 というものです。

関連で CSVの仕様を変えており過去verとの互換性が失われています。

※元々 CSVテキストについては、その場限りで使うことを前提としており、再利用については考慮していません。PMX-CSVについての予告なき改変は今後もあるかもしれませんし、当然ながら CSVをverで管理することもありません

また CSVテキストを流用した一部のデータ形式の互換性も失われています。といっても対象はスケルトンファイル(*.psk) と SoftBodyプリセットなので、実害についてはさほどないものと思われます (とりあえず各キーの値に接頭文字"Pmx"を付ければ使えるようになります)

正直無駄に作り込み過ぎた感もあり、テストが行き届いていない可能性もあるかも?しれません。

※「Jointの制限パラメータのコピペ面倒だなぁ」→「なんか専用機能付けとくか」→「既存機能流用した方が楽じゃね?」→「CSVコピペとかいけそう?」→「どうせだから他のCSVも一新しとくか」→「これなら汎用的な編集機能として利用できるっぽい?」→「補助(サポート) 機能も用意しようぜ」→→「アカン対応機能全部作り直しじゃねーか」...とまあ、当初の目的とは大幅に異なる着地点となりました (よくあること)

なおこの機能更新により (旧環境から受け継がれた) 材質コピー用の専用パラメータテキストは完全に不要なものになりました。現在は互換性のため残されていますが、今後は "いつ消えてもおかしくない機能" という扱いになります。


■ まとめ
・「もっと細かく更新してくれ」
長いこと間が空くと 「少しの変更点で一々更新するのもなぁ...」 という心理が強く働くようになります。他にも機能作成中に別の機能を思いつくことが多いため 「中断状態での放置期間が長くなりやすい」 というのも一因です。

なにより 説明書(readme.txt) の修正と、こういった更新用の記事を作成する作業の負担がね...

どれだけ長く続けていても、こればかりは変わることのない面倒さ、厄介さです。

※加えて 「あって当たり前」 という状況が長く続くと、世間的には企業ベースのお仕事(=商用品) と区別の付かない扱いをされるようになっていきます(特に開発経緯を知らない方たちには)。そんな中で配布まで含めての開発モチベをまともに維持していくのは、非常に困難と言わざるえません (SNS等も確認しない方が健康的なのは理解していますが、情報が全く集まらない昨今ではそういうわけにもいきませんから)


ということで 「長く続けるのも楽ではない」 みたいな話を、キリ番ならぬキリ日のまとめにでもしておこうかと思います。

では、今回はこんなところで。

以上



posted by - at 00:22| PMX | 更新情報をチェックする