【無料/Free】B-S-T-A:Viewport Motion Forge 视口动作动画熔炉(VRCHAT/Unity用)
- ダウンロード商品¥ 0無料ダウンロードN_B-S-T-A-视口动作动画熔炉-v1.zip(35.7 KB)N_B-S-T-A-视口动作动画熔炉-v1.zip
NoNlab - B-S-T-A:Viewport Motion Forge 视口动作动画熔炉(No.5) CN: 【致谢与声明】 演示图片、封面使用了 夏菲 -Sapphy- (3939858) 的模型数据,在此对作者表示诚挚的感谢,感兴趣的话可以去支持一下 Sapphy 。 注:本商品仅售卖插件本体,压缩包内不包含任何角色模型文件(包括但不限于 Sapphy),敬请知悉。 【项目概述】 · 【B-S-T-A (Blend Shape to Animation)】:这是一个专为 VRChat-Avatar 打造的 BlendShape 动画生成与底层视口预览工作台。解决了原生 Unity 动画系统在调校面部表情时极易发生的预览错误、无法突破权重限制、以及视口焦点混乱的问题。 · 所有 UI 状态机、离屏渲染管线与底层限制解锁逻辑,全部由纯 C# 自研,整体插件解压后体积约 120KB。 【技术与实现】 · 【打破 BlendShape 极限】:直接修改 PlayerSettings.legacyClampBlendShapeWeights。支持自定义权重上限(上不封顶),支持自定义负数权重(反向形变,下不封顶),且滑块精度为 ±0.01。 · 【独立离屏渲染视口(Viewport)】:使用 RenderTexture 与独立 Camera、Light 构建的专属 3D 预览管线。支持 4x 抗锯齿。自带自定义平移(WASD+QE)、左键旋转、滚轮缩放,支持 Shift 加速与 Ctrl 减速,相机焦点移动采用 Vector3.Lerp 插值,60fps 运镜。 · 【原生参数直读】:无需第三方插件,直接在底层抓取并生成 VRChat 原生面捕参数(如 vrc.v_sil, vrc.v_aa, vrc.v_oh 等),直接进行底层滑块校准。 · 【三种底层曲线模式】:支持 Constant(单帧常量,锁定切线防插值)、Ramp(首尾渐变过渡)、Hold(快速起跳并保持)。 【功能与交互】 · 悬停名称预览:鼠标悬停名称,直接将对应 BlendShape 权重设为 Max(或 100)进行预览,移开即恢复。 · 悬停滑块精准擦洗(Scrub):直接接管鼠标 X 坐标进行数值计算,无视原生滑块手柄物理限制,悬停在滑块上时进行精细预览。 · 独立状态机隔离:Hover、Scrub、Focus 三种状态完全互斥,滑动时自动断开悬停预览防冲突;全面支持 Undo.RecordObject 记录拖拽历史。 · 一键镜像同步:右键点击 BlendShape 名称,自动识别 .L/.R 或 _L/_R 后缀,一键将权重同步至镜像通道。 · 一键恢复初始状态:录入渲染器时自动记录初始权重字典,随时可一键回滚。 · FX 控制器一键生成:自动创建包含 Idle 与动画状态的 AnimatorController,并配置 Float 参数与 Greater/Less 过渡条件。 · 多语言与主题引擎:支持中、英、日、俄、韩五国语言实时切换。UI 自带实时预览主题控制台(含 Default、Dark、Light、Nord、Sakura 预设)。支持自定义颜色。 【安装与操作】 · 导入 .unitypackage 后,通过顶部菜单 NoNlab -> Blend Shape to Animation 调出主程序、主题设置与 3D 视口。无需额外配置。 【注意事项】 · 解除限制警告:突破 BlendShape 限制并开启负数或超大权重时,若模型 Mesh 顶点未刷好权重,可能会导致模型发生极其严重的物理形变(如模型炸裂)。请务必在操作前保存场景。 · 写入动画后请务必保存。若目标 Animation Clip 为只读资产,系统将自动跳过保存并发出警告。 JP: NoNlab - B-S-T-A:Viewport Motion Forge ビューポート・モーション・フォージ (No.5) 【謝辞・免責事項】 デモ画像、カバー画像の制作にあたり、夏菲 -Sapphy- (3939858) のモデルデータを使用させていただきました。作者様に深く感謝申し上げます。ぜひ原作者様への応援もよろしくお願いいたします。 ※重要:本商品はプラグイン本体のみの販売です。デモに使用されているSapphyなどのアバターモデルデータは一切含まれておりません。 【プロジェクト概要】 · 【B-S-T-A (Blend Shape to Animation)】:VRChatアバター向けに特化した、BlendShapeアニメーション生成および独自ビューポートプレビュー環境です。Unity標準のアニメーションシステムで顔の表情を調整する際に発生しやすい「プレビューのバグ」「ウェイト制限の突破不可」「ビューポートのフォーカスが合わない」といった問題を解決します。 · すべてのUIステートマシン、オフスクリーンレンダリングパイプライン、および制限解除ロジックは、純粋なC#によってゼロから開発されています。プラグインの解凍後のサイズはわずか約120KBです。 【技術と実装】 · 【BlendShapeの限界突破】:PlayerSettings.legacyClampBlendShapeWeights を直接書き換えます。カスタムウェイトの上限(上限なし)、カスタムマイナスウェイト(逆方向の変形、下限なし)をサポートし、スライダーの精度は±0.01です。 · 【独立したオフスクリーンレンダリング・ビューポート】:RenderTexture、独立したCamera、Lightを用いて構築された専用の3Dプレビューパイプラインです。4xアンチエイリアスをサポート。カスタムパン(WASD+QE)、左クリック回転、スクロールズームを備え、Shiftで加速、Ctrlで減速が可能です。カメラフォーカスの移動にはVector3.Lerp補間を採用し、60fpsのスムーズなカメラワークを実現します。 · 【ネイティブパラメータの直接読み取り】:サードパーティ製プラグインは不要です。VRChatネイティブのフェイストラッキングパラメータ(vrc.v_sil, vrc.v_aa, vrc.v_oh など)を低レイヤーから直接取得・生成し、直接スライダーでキャリブレーションできます。 · 【3つの低レイヤーカーブモード】:Constant(単一フレーム定数、補間を防ぐためにタンジェントをロック)、Ramp(始点と終点のグラデーション遷移)、Hold(素早く立ち上げて維持)をサポート。 【機能とインタラクション】 · ホバーで名前をプレビュー:名前にマウスをホバーすると、対応するBlendShapeのウェイトがMax(または100)に設定されてプレビューされ、マウスを離すと元に戻ります。 · ホバーでスライダーを精密スクラブ:マウスのX座標を直接数値計算に割り当て、標準スライダーハンドルの物理的な制限を無視して、スライダー上でホバーしながら精密なプレビューが可能です。 · 独立したステートマシンの分離:Hover、Scrub、Focusの3つの状態は完全に排他的です。スライダー操作時は自動的にホバープレビューが切断され競合を防ぎます。Undo.RecordObject によるドラッグ履歴の記録を完全サポート。 · ワンクリックミラー同期:BlendShape名を右クリックすると、.L/.R または _L/_R のサフィックスを自動認識し、ウェイトをミラーチャンネルに一鍵同期します。 · ワンクリックで初期状態に復元:レンダラー登録時に初期ウェイトの辞書を自動記録し、いつでもワンクリックでロールバックできます。 · FXコントローラーのワンクリック生成:Idle状態とアニメーション状態を含むAnimatorControllerを自動生成し、FloatパラメータとGreater/Less遷移条件を設定します。 · 多言語&テーマエンジン:中・英・日・露・韓の5言語リアルタイム切り替えをサポート。UIにはリアルタイムプレビューテーマコンソール(Default、Dark、Light、Nord、Sakuraのプリセットを含む)が内蔵されています。もちろん、対応しているすべてのUI要素は、自由にカスタムカラーに変更可能です。 【インストールと操作】 · .unitypackage をインポートした後、上部メニューの NoNlab -> Blend Shape to Animation からメインプログラム、テーマ設定、3Dビューポートを呼び出せます。追加の設定は不要です。 【注意事項】 · 制限解除の警告:BlendShapeの制限を解除してマイナスまたは巨大なウェイトを有効にする場合、モデルのMesh頂点ウェイトが適切に設定されていないと、モデルが極端に破損(メッシュが崩壊)する可能性があります。操作前に必ずシーンを保存してください。 · アニメーション書き込み後は必ず保存してください。対象のAnimation Clipが読み取り専用アセットの場合、システムは自動的に保存をスキップし警告を発します。 · その他の言語および詳細なインストール方法については、同梱の Readme をご参照ください。 GIthub:https://github.com/Ninsterrrr/NoNlab5
















