2017年10月29日

0254

■更新内容

・仮想軸モード
・仮想軸表示
・オブジェクト操作機能の改定
・TransformViewの一部機能更新

以上


基本的な編集機能の拡充/改変は正直あまりやる気ないんですが、Switchが(店頭で)全然買えなくてアレなのでその腹いせに... (Switch版の繋ぎ目的で買った3DS版FE無双もそろそろコンプしてしまいそう)

というわけで謎な編集機能がまた一つ増えました。

●仮想軸

いわゆるローカル軸?的な編集仕様です。なおボーンのローカル軸設定などとまぎらわしいので用語は変更。

とりあえず PmxViewのハンドルアイコンの右に [v軸] というのが増えているので、ONにしてボーンや剛体などを選択してみるとよいでしょう。

仮想軸モード中はハンドルや子窓内の操作が指定した軸でおこなわれます。各オブジェクトの選択時に自動的に軸設定をする機能もあります。

----
・主な自動設定形式
[対象が単数]
頂点 : 法線
面 : 面法線(複数面の場合平均方向)
ボーン : 表示先(無効な場合親方向) ※設定で制限軸やローカル軸にも変更可
剛体/Joint : 対象の向き

[同一形式の対象が2つ]
対象位置を結ぶベクトル方向

[それ以外(3対象以上や混在状態など)]
実軸方向
----

その他、軸の任意設定や詳細などは [動:オブジェクト操作] 子窓の下に [軸指定] というタブが増えているのでそちらから。

一応、軸向きはハンドルの回転部分や子窓の回転操作(ドラッグ/値設定)を Altキー併用で操作することでも変更可能です(仮想軸モード時のみ)

仮想軸を表示(ドラッグ移動可)すると Z軸が逆方向になっているのが気になる方もいるかもしれませんが、MMDや PMXエディタに多少の造詣があれば理由はおのずと解るでしょう。

●オブジェクト操作機能の改定

ドラッグ操作欄(SRTタブ)の回転の順序が上から [X][Y][Z] に変更されています。合わせてドラッグ操作が横方向に統一(基本は右が+/左が- ただし標準状態はハンドルの操作方向に合わせて適宜変更されています)

従来は軸(XY)が画面の横/縦に対してほぼ同じ向きあることから操作感を合わせていましたが(それゆえ横方向操作に相当する Y軸回転が上側配置)、仮想軸の導入で対応関係も意味をなさなくなったので、リセットして全項目を同一の操作方法に変更しました。

※以前の配置及び操作方向に戻すことも一応できますが(操作子窓上でCtrl+Rなど) 推奨はしません。

Shift/Ctrl/Alt キー併用による操作もいくつか変更になっています。詳細はドキュメントを参照してください。

※値指定のボタン上で Shiftや Ctrlを併用した右クリックを行うと対象項目の初期化などが以前からできましたが、
・初期化が Shiftから Ctrlへ変更
・旧Ctrl併用の負数変換が破棄(負数(逆方向)設定は操作時のShift併用へ移管)
となっているのでご注意ください。合わせて他の同系入力でも Shift/Ctrl併用操作などが変更になっているものがあります。

といってもまあ 「そんな機能があったことをそもそも知らん」 という方がほとんどでしょうが...

●TransformViewの一部機能更新

各変形操作をオブジェクト操作子窓と同系統に設定。ドラッグ方向は上下のままですが、初期化やオフセットのShift+/Ctrl+などは変更されています。

他にメニューに、

[ローカル軸無視] : ハンドル向きにローカル軸設定を反映しない
[ベクトルコピー(クリップボード)からボーン位置設定] : ベクトルコピーによる選択対象ボーンへの位置設定

などが増えています。ボーン位置設定はうまく使えばパーツ合成時の位置合わせなどが多少楽になるかも?(強制的に位置設定されるので割と簡単に不正な変形状態になりますが)


以上、今回の更新でした。


----
11/1 追記:
一部ドキュメントに不備があったのでこちらで先に訂正

■旧操作系(※非推奨機能)
誤) ドラッグ操作の回転が[Y][X][Z]になり、2段目のドラッグ方向が横方向になります。
正) ドラッグ操作の回転が[Y][X][Z]になり、2段目のドラッグ方向が方向になります。

他にも冒頭部をずっと直し忘れていたようですね。
●動作対象
誤) Windows XP以降(32bit/64bit) ※推奨環境(=開発環境)は Win7-64bit及び32bit
正) Windows XP以降(32bit/64bit) ※推奨環境(=開発環境)は Win10-64bit

あとドキュメント書き忘れで、ハンドルのメニュー(ハンドル上で右クリック)の最下部に [状態] というのが増えています(主に仮想軸関連用)

メニュー内にハンドル向きを XYZ角(度) で保存/復元できる項目があるので、一時的に仮想軸の向きを外部のテキスト欄(メモ帳など)で記憶しておくことができます。

※[動] の仮想軸機能だけだと軸向きを一時的に保存/復元するのはちょっと大変

■テキストコピペによるベクトルコピー利用

ベクトルコピー関連を使ったことのない方は馴染みがないかもしれませんが、ベクトルコピーにより複数値が外部のクリップボードにも同時に登録されています("1,2,3" みたいなカンマ区切り数値)

逆にテキスト欄から数値をコピーしてベクトルコピー対応欄の [クリップボードから〜] などからエディタ側に設定することもできます。

例えば仮想軸を Y軸 = 45度回転した軸 にしたい場合は、"0,45,0" とメモ帳などに書いてテキストコピー(必要なのは" "内) → ハンドルメニューから設定、とすれば手早く軸の設定が可能です。

※仮想軸を選択対象から指定値にしておかないと、次に別の対象に切り替えると軸が変わってしまいますけどね(要注意点)

他にもオブジェクトの位置設定(PmxView上でCtrl+V)などにも応用できたりするので 「こういう機能がある」 程度には知っておくとよいでしょう。


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

2017年07月20日

0252

■更新内容

・開発環境をVS2017へ移行
・モーフ編集の改修
・不具合修正

以上


0251も不具合修正版が随分と積まれているので、とりあえず ver上げておきます。

●開発環境移行

開発環境を VS2013から VS2017へ移行。ただし参照する VC++ランタイムは 2013のままなので、更新の必要は特にないかと思われます。

また .NETも4.0で変更なし。4.5なら async/awaitで非同期処理が楽に書けるとか、4.6以降だと 64bit版の動作が(かなり?)改善されたりするとか利点も色々ありますが、その他のランタイムとの整合性や 「動かなくなったー><」 とかの面倒ごともまた色々出てきますのでね...

※.NET4世代は 「実行時に OS側にインストールされている最新版を利用する」 という仕組みらしいので、64bit版を利用される方は .NET4.6以降を入れておくとよいでしょう(Win10なら標準で構築済み)

●モーフ編集の改修

主な改修点としては、
----
■選択頂点をモデル形状位置へ移動 (モーフ編集窓:[編集]メニュー内)

頂点の位置初期化は 0251の仕様で正常です(以前の専用編集窓の動作の方がむしろ不良)

モデル形状の方に合わせる(戻す)方法は 同0251で実装された [個別記憶] 機能で自由に行えるので特に不要かと思っていましたが、操作手順も少々多いので専用処理をメニューに追加しておきました。

それにしても両目閉じから片目閉じモーフを作成するのに、わざわざモーフ編集から片側を初期化して新規モーフを追加するとか、随分と面倒な手順をとっておられる方がいるようで...

PMDエディタ時代からある機能ですが、[絞](:絞込み表示) に選択した頂点を別モーフへ分割する機能が搭載されています。

1. [絞]
2. [頂点/材質]タブ内で [頂点モーフ]を選択
3. 対象のモーフを 子窓リストから選択
4. 分割したい頂点を選択
5. 子窓のリスト上で右クリック→メニューから[〜分離]を実行
6. モーフリストから名称などを修正

両目から片目であれば、モーフリストから両目を一旦複製し、↑で分割すれば 1分もかかりませんよ。

※実際は両側の片目(頂点)モーフを用意して、両目モーフはグループモーフで統合した方がデータ容量的には多少節約になります。

■新規⇔既存や既存モーフ対象を変更した場合の最終形状を Undoへ登録

ちょっとした操作ミスから編集状態が初期化されてしまうケースがあるようなので、変更時に形状状態を Undoへ登録するようになっています。
例)
0251: 新規モーフ作成中、誤って既存モーフを押してしまう→形状が初期化→新規に戻しても作成中の状態に戻れない=消えてしまう
0252: 新規に戻した後に Undo(Ctrl+Z) で変更前の形状に戻る

既存モーフ編集中に別のモーフを選択して初期化されてしまった場合も同様の操作で戻せます。ただし途中でモーフ編集を終了したり Undoを挟んだ後に変更したりなどすると Undo内の形状データは消えてしまいます。

■モーフ編集終了時に編集内容がある場合、終了確認及びキャンセル選択

なんらかの形状編集状態が残っていると判断される場合(Undoバッファの初期化を挟むと正常に機能しません)、モーフ編集終了時に確認を行います。

状態によっては追加や更新直後にも出る場合があるかもしれませんが、問題なければ気にせず終了を選択してください。

■モーフの追加/更新を分離(既存モーフからの新規追加可能)

0251は追加/更新が一つのボタンでしたが、分離されています。既存のモーフ編集から新規に別のモーフを作成することができます。

「更新したつもりが別のモーフ追加してた」 みたいなケースもあるかもしれませんので、その辺はユーザーが責任を持って選択してください。

合わせて既存モーフの名称とパネル位置をモーフ編集上でも変更(要更新)ができるようになっています(あまり意味はありませんが)

■モーフ編集時のTransformViewの表示を正常化

0251ではモーフ編集中は TransformViewの状態が "モーフonモーフ" みたいな不正な状態で表示されていましたが、一応改善されています。
----
といったところです。他に一部の編集手順でモーフの更新に失敗するケースへの対応などもしてあります。

余談: どこぞやで 「最新版は SubViewに [動] がなくなった」 とか見かけたときは目が点になりましたが (PMDエディタ時代から[動]:オブジェクト操作 が付いたことは一度もありません/一体どういうクラック版使ってたんだか...とか思わざる)、エスパーするにも話のベクトルがあっち方向すぎでは流石に理解が追いつきません (件の話は以前の頂点モーフ編集窓のことのようです...)


以上、今回の更新でした。

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

2017年06月06日

某板(スレ)を見て思うこと...

あいもかわらず しょーもないことほど熱心ですな(苦笑)

※見ないふりしとけば放置できること ([データ内容をきちんと精査していないような横着な出力結果は読めなくてもいいかな]) も問題として報告となれば対応を(ry

「なんのこっちゃ?」と思われた方は今回は気にせずお帰り頂けるとよいかと思います。


ちなみに昔から思うこととしては 「テンプレ意味ないなぁ(暴言)」 みたいなのはあったりなかったり。

ソフト開発においての問題報告で重要なものは、

・問題発生までの再現手順

に尽きます。5W1Hではありませんが、誰がどうやっても同じ結果(問題発生)になる内容であれば、対応も即座に行うことができます。

残念ながらそんなありがたい報告ばかりではないので、限られた単語や状況などから問題?を推察する、通称 "エスパー能力" がやたらと磨かれていくわけですが...

※昨今はtwitterだけで騒いであとは放置...みたいなのがほとんどなので、益々その傾向は強くなりつつ(マジメンドウ

スレへの不具合報告など基本的に善意で行われていることなので、あまり煩くしたくはないんですが、テンプレなど用意する際は↑のようなことを考慮に入れておくと、多少は良いものになるかもしれませんね。


あと報告場所などをこちらへ作らないのか?という話は昔からありますが、MMDに限らず公益な情報はあまり分散させない方がいい、というのが基本的な考え方なので ブログ移住前(PMDエディタ時代)からの形式を継続している次第です。

もっとも集約場所としての VPVPwikiや したらば板なども現在では形骸化しているものも多く、実際のところユーザーが有効に活用できているかどうかは不明ですが (2chはとうの昔に死にました)

twitterが中心になって以降は集約が非常に難しくなり、新規のユーザーさんは本当に大変だろうなぁ...と個人的にはよく思います。

※情報がない/あっても古い/誰にどうやって訊けばいいか解らないetc

まあ初音ミクから始まった多くの流れも、じき 10年にもなりますのでね。仕方ないといえば仕方ない気もしますが。

以上、苦言?のようなよくわからない内容の記事でした。


おまけ:テンキー9押してみると(一緒にCtrl+CやCrtl+5なども憶えておくとよいでしょう)

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