Skip to content

Releases: Ochakko/AdditiveIK

v1.0.0.22

26 May 05:30
Compare
Choose a tag to compare

2024/05/26
 AdditiveIK 1.0.0.22
  1.0.0.21からの変更点
   BlendShapeアニメ(モーフアニメ)対応
    BlendShapeプレートメニューで右ペインに設定ウインドウ
    モーフアニメの保存読み込みはfbxファイルにて行う
    BlendShapeメニュー時にモーフターゲットのスライダーを操作するとオイラーグラフにブレンド率表示
    ブラシによる複数フレーム編集対応
    モーフアニメのAdditiveModeチェックボックスはまだ機能しない.
    モーフアニメの新規は可能だが、形状の登録などには未対応、
    あらかじめBlendShapeのベースとターゲットが設定されているfbxにだけ対応
    (注意)
     昔のAdditiveIKで保存したfbxにはBlendShape情報が入っていません。
     VRoidをUnityでfbx出力したものにはBlendShape情報が入っています。
     VRoidをUnityでfbx出力したものを読み込むとモーフアニメ機能を使用できます。
     今回のバージョンから保存時にBlendShape情報も保存します。
     すでに編集済のモーションに関しましては
     編集済モーションをUnityで出力したfbxにRetargetプレートメニューによりリターゲットすれば引き続き使用できます。

   Testフォルダのモデル更新
    1009_5フォルダのモデルをBlendShape設定済のVRoidに

   不具合修正
    Model'sPosAndDirショートカットボタンで出るダイアログのApplyボタンが入力位置に対して効かなくなっていたのを修正
 
    セパレータのサイズ計算を修正
     スクロールウインドウと組み合わせて使用時にコントロールのクリックが出来ないことがあった
     セパレータ縦分割時の不具合だった
   
    Shaderプレートメニューのウインドウをスクロールした下の方のボタンを押せないことがあった不具合を修正

    草の表示の不具合修正
     草のRefPos、草のボーンマーク、草のマニピュレータを表示しようとして潜在的エラーが生じていたのを修正
     草のLODについては応急処置としてLOD0だけを表示

  ショートムービー
   モーキャプが目パチしてニヤけます
   https://youtu.be/cEIdXoRXC-E

 ver1.0.0.4以降共通
   新機能の使い方まとめ動画
    【DirectX12】AdditiveIK新機能【モーキャプ編集】
    https://youtu.be/oKGY62YosSg

v1.0.0.21

16 May 00:03
Compare
Choose a tag to compare

2024/05/16
 AdditiveIK 1.0.0.21
  1.0.0.20からの変更点
   不具合修正
    chaファイル以外から読み込んだfbxが全て草として扱われてしまう不具合を修正
    chaファイル以外から読み込んだスキンメッシュ(ボーン入りのメッシュ)が表示されなくなっていた

 ショートムービー
  クリック位置に草が生えるんです
  https://youtu.be/_-YDEyL16G8

 ver1.0.0.4以降共通
   新機能の使い方まとめ動画
    【DirectX12】AdditiveIK新機能【モーキャプ編集】
    https://youtu.be/oKGY62YosSg

v1.0.0.20

15 May 00:54
Compare
Choose a tag to compare

2024/05/15
 AdditiveIK 1.0.0.20
  1.0.0.19からの変更点
   Pick&Setの高速化
    詳細判定の前にバウンダリーで粗く判定
    こちらでテストした一番遅い条件で比べて3倍速くらいになった
    地面などのポリゴン数が多いメッシュとの判定が必要になると3倍速になってもまだ遅い
    しかし、今回の修正でポリゴン数の多いメッシュを適切な領域の適当なポリゴン数のメッシュに分けておけば、
    より高速化可能

   草(grass)に対応
    fbx読み込み時にload fbx as grassにチェックを入れるとインスタンシング表示の草として読み込み
    モデルパネルで草を選び、上段カエルボタンの行の Model'sPosAndDirショートカットボタン の
    Pick&Setオプションでクリック位置に草を配置
    草読み込みは複数回実行可能で1つの草fbxに対してインスタンスは256個まで
    Remove grass positionチェックボックスでdistanceエディットボックスの数値よりも近い距離にある選択中の草モデルの位置を削除
    草がなびく方向は常にカメラに対して横方向.(シェーダになびく方向を指定可能なので、
    将来的にはイベントでモデル周囲の草を倒したりも可能)

 ショートムービー
  クリック位置に草が生えるんです
  https://youtu.be/_-YDEyL16G8

 ver1.0.0.4以降共通
   新機能の使い方まとめ動画
    【DirectX12】AdditiveIK新機能【モーキャプ編集】
    https://youtu.be/oKGY62YosSg

v1.0.0.19

07 May 01:15
Compare
Choose a tag to compare

2024/05/07
 AdditiveIK 1.0.0.19
  1.0.0.18からの変更点
   不具合修正
    剛体の衝突判定設定が誤解を招くGUIだったのを修正
     RigidParamsプレートメニューのConflict, GConflictダイアログ修正
     以前のGUIはビットシフトの足し算結果とビットのインデックスとが混在していた
     GUIによる設定方法をビットのインデックス(何番目のビットか)に統一
     グループ番号のビットインデックス(複数可)が 衝突対象のビットインデックス(複数可)の中に
     1つでも含まれてる場合に 衝突当たり判定が有効になる
     自分自身と当たり判定するチェックボックスは廃止
    
    GUI初期化時にオブジェクトに対してデフォルト値が設定されてしまうことがあった不具合修正
     OWP GUIの初期設定時にcallListenerフラグがfalseになっていなかった箇所がまだあったので修正
     剛体パラメータGUI初期化時にフラグ指定が無かった
     OWP_RadioButtonのsetSelectIndex()にはcallListenerフラグ引数が無かった
     cameraDistの保存値が機能するようになった
    
    File-->Saveメニューでプロジェクト以外の個別ファイル保存を選択した場合に、
    存在しないファイル名を指定できなかった不具合を修正

    File-->Saveメニューでプロジェクト以外の個別ファイル保存を選択した場合に、
    パス名がセットされない不具合を修正

  パタパタカクカクしない物理角度制限
   制限角度を越えた場合にフラグを立てて制限自体は剛体速度をスケールすることにより行った
   
  DispAndLimitsプレートメニューの中のBulletPhysics関連のスライダーをBulletPhysicsプレートメニューに移動
   

  Test/1009_5フォルダの設定を更新
   通常の設定(default_ref.ref)とスカートを少し持ち上げておく設定(ForRapidMove.ref)の2種類用意
   メインメニューバーの剛体設定選択メニュー(Select Rigid Menu)で切り替える

  ドキュメント追加
   Documents/TroubleShooting/0_ver10019以降における物理設定について.docx

  ドキュメント修正
   Documents/TroubleShooting/なぜ同じ項目についてのスライダーがDispAndLimitsプレートメニューにも存在するのか.docx

 ショートムービー
  限界越えたら0.1倍速で動きます
  https://youtu.be/ufPtA-CxVKU

v1.0.0.18

01 May 10:00
Compare
Choose a tag to compare

2024/05/01
 AdditiveIK 1.0.0.18
  1.0.0.17からの変更点
   不具合修正
    OWP_SliderのsetValueにリスナーを呼ばないフラグを渡してもリスナーが呼ばれていた不具合を修正
     ダイアログの初期化時に項目のデフォルト値がオブジェクトに設定されたことがあった

  ジャンプ中の前転にも対応
   IK回転操作時にDispAndLimitsプレートメニューのRotateTranslationにチェックを入れると移動成分も回転
   RotateTranslationにチェックを入れない場合は移動はそのままで回転だけ行う
   以前のバージョンにおいては、Hipsだけ特別扱いをしていてHipsの場合は強制的にRotateTranslationチェック状態と同じ処理だった
   ジャンプ中に前転する場合などHipsにおいてもHips以外と同様にRotateTranslationによる場合分けが必要だった
   よってHipsに対してもRotateTranslationチェックの有無で場合分けをした
   使い方は下記ショートムービーリンク参照

  全バネ定数スケールスライダーを移動バネに対しても適用
   DispAndLimitsプレートメニューのSpringScaleスライダー操作時に回転バネだけでなく移動バネもスケールするように修正

  Shaderプレートメニューから呼び出すShaderParamsダイアログを右ペインにはめ込み
   Skyプレートメニューから呼び出すダイアログも右ペインにはめ込み

  SimpleWaterシェーダ対応
   PBR,NoSkin設定時のみ機能
   ShaderプレートメニューにSimpleWater(PBR,NoSkin)チェックボックスを追加
   水面(計算負荷の低い)を想定した機能
   法線マップをディストーションマップとしても使用
   海か川かを選択可能
   流れの向き(UV)、流れの速度、ディストーションスケール、ディストーションマップの2成分選択も可能
   プロジェクト保存時にシェーダタイプファイル(*.stf)に保存、プロジェクト読み込み時に読み込み

 1.0.0.18 ショートムービー
  ジャンプ中にくるりと回ります
  https://youtu.be/6wveLqMbsYA

 動画
  念じながら走るのです
   https://youtu.be/S-2ycgp_xM4

  20fpsで物理角度制限テスト
   https://youtu.be/sCNE9C_zWNA

 ver1.0.0.4以降共通
   新機能の使い方まとめ動画
    【DirectX12】AdditiveIK新機能【モーキャプ編集】
    https://youtu.be/oKGY62YosSg

v1.0.0.17

26 Apr 00:08
Compare
Choose a tag to compare

2024/04/25
 AdditiveIK 1.0.0.17
  1.0.0.16からの変更点
   不具合修正
    右クリックによるブラシ選択時にジョイント選択が初期化されてしまっていたのを修正
     右クリックによるブラシ選択時にジョイント選択を復元
     左ペインのジョイント階層ツリーからジョイントを選択した場合にも対応

   VRoid読込時マニピュレータとグラフの軸が一致
    プロジェクトファイル(.cha)ファイルにDispAndLimitsレートメニューのBoneAxisを保存
    chaファイルにBoneAxisタグが存在しない場合(古いchaファイルの場合)、1つでもVRoidモデルがあればボーン軸種類としてBONEAXIS_BINDPOSEを設定
    モデル読み込み後は、DispAndLimitsプレートメニューのAxisKindコンボボックスにてボーン軸の種類を設定可能
    軸の種類BONEAXIS_BINDPOSEについて
     VRoidやバインドポーズとしてボーンの向きが設定されているfbxファイル用
     オイラーグラフの軸とIK回転の軸(マニピュレータ軸)とボーンの軸が一致する
     Rigの軸指定の種類のNODE
とも一致するようになる
    軸の種類BONEAXIS_CURRENTについて
     RokDeBone2出力のfbxやバインドポーズとしてグローバル軸が設定されているfbxファイル用
     IK操作をボーン軸で行うことが可能
     しかしオイラーグラフの軸とマニピュレータ軸は一致しない
    オイラーグラフの軸の種類は常にBONEAXIS_BINDPOSE(今まで通り)
    (今まではVRoid読み込み時にもBONEAXIS_CURRENTを指定していたので、オイラーグラフの軸とマニピュレータの軸が表示上異なっていた)

    注
     軸の種類の違いにより、マニピュレータ軸とグラフの軸が一致しないことがありますが、それは表現方法の違いであり同一の姿勢を示しています。
     軸の種類の違いとは、どこから角度を測るかという違いであり、保持している元データとしては同一です。

   ブラシピーク位置設定方法変更
    今まではTopPosスライダーでブラシの山のピークの位置を決めていた
    これからは、オイラーグラフ上部のタイムラインを右クリックすることによりピーク位置を設定
    ピーク位置は選択フレーム範囲内にクランプ

   上部常駐スライダ変更
    TopPosスライダーの代わりに、ブラシミラーUチェックボックス、ブラシミラーVチェックボックス、ブラシリピートスライダを配置
    ブラシ選択は3Dウインドウ右クリック、その他のブラシ設定項目は上部常駐GUIに配置したので、BrushParamsプレートメニューは取り除いた

   4段階LODに対応

   視野内判定高速化
    シェーダ修正

   物理回転バネ定数全体をスケールするスライダーをDispAndLimitsプレートメニューに追加
    EditScaleスライダーはアプリ上部の常駐スライダーと冗長なので取り除いて、新たにAngleSpringScaleスライダーを追加 

   RigidParamsプレートメニューのForbidRot(回転禁止)設定も自前の制限で復活
    剛体は親ジョイントと子供ジョイントをつなぐ線分をベースに作成されますが、ForbidRot回転禁止は子供ジョイントに設定します.
    回転禁止にチェックが入っている剛体は、前のフレームの姿勢へと制限

   自前の角度制限が動いたのでBulletPhysics側の角度制限はfree状態に設定

   DispAndLimitsプレートメニューのAngleSpringScaleスライダーの値もプロジェクトファイル(*.cha)に保存

   各ブラシの引数チェック部分変更
    ブラシのリピート回数の上限を100に.

   ドキュメント追加
    0_TroubleShooting/なぜ同じ項目についてのスライダーがDispAndLimitsプレートメニューにも存在するのか.docx
(WhyTheDispAndLimitsPlateMenuAlsoHasASliderForTheSameItem)

 動画
  念じながら走るのです
   https://youtu.be/S-2ycgp_xM4

  20fpsで物理角度制限テスト
   https://youtu.be/sCNE9C_zWNA

 ver1.0.0.4以降共通
   新機能の使い方まとめ動画
    【DirectX12】AdditiveIK新機能【モーキャプ編集】
    https://youtu.be/oKGY62YosSg

v1.0.0.16

18 Apr 12:48
Compare
Choose a tag to compare

2024/04/18
 AdditiveIK 1.0.0.16
  1.0.0.15からの変更点
   不具合修正
    CameraDist常駐スライダーをホイールで動かした際に描画が更新されていなかったのを修正

    Rigの修正
     1009_5モデルにおいてapplyframeが167となるように複数フレームを選択して
     足の青いリグを回転すると回転軸が設定と異なる不具合があった
     通常のマニピュレータ回転時には子供ジョイントの軸で親ジョイントを回転させる
     それに対してRig回転時には子供ジョイント軸で子供ジョイントを回転させる
     Rig回転のときの回転軸計算に通常マニピュレータ回転軸計算結果を使っていたというミス
     修正により複数フレーム選択時のリグ回転も正常になった
     ちなみに、
     Testフォルダのモデルに設定してあるリグは動作確認オンリーの目的で設定したものであり、
     実用的設定ではないので各自使いやすいように設定してください
     私はリグをあまり使わずにマニピュレータ(ジョイントを選択して回転)でやる派なので、今のところ

   物理角度制限復活
    剛体接続を柔らかくしたので制限角度が効かなくなっていた
    自前で制限処理をすることにより物理角度制限復活
    LimitEulerプレートメニューのダイアログにLimitRateスライダーを追加
    設定した制限角度を100%守って制限すると、動きが激しい部分の動きがカクカクパタパタしてしまう
    LimitRateスライダーを適当に設定して制限を緩めることにより制限しつつ滑らかな動きへと近づく
    そのような設定をするためには、制限角度をオーバーして回転することを考慮して制限角度を小さめに設定しておく必要がある
    LimitRateはボーンごとに設定可能で、ApplyDeeperボタンで下層ツリーへ一括設定、ApplyAllボタンで全ボーンへ一括設定可能

    DispAndLimitsプレートメニューにPhysicalLimitScaleスライダーを追加
     LimitEulerプレートメニューで各ボーンに対してlimitrateを設定しておいて
     動作環境の速い遅いへの対応策としてDispAndLimitsプレートメニューのPhysicalLimitScaleで
     全ボーンのlimitrateに倍率を掛けて調整する

   重力スケールの最大値を100から200へと変更
   回転バネ定数の設定範囲を0から500の範囲へと変更(以前は2から3000)
    バネを柔らかくして重さを軽くして重力で調整してみる試み

   EditRate, MotionSpeed, PhysicalLimitScale, cameraDistをプロジェクトファイル(*.cha)保存時に保存

   Testフォルダのモデル更新
    1009_5
     剛体の重さを一番小さく設定 ヘアのバネ定数を大きく スカートのバネ定数を小さく
     LimitRate設定
      スカートの真横ボーンには制限角度を設定しないことにより、ジャンプでスカートは拡がるが中は見えないように.
      ヘアの制限角度を+-15degree、スカートの制限角度を+-5degree
      スカートだけではなくヘアに対する角度制限にも使えるようになった
      fpsが小さい場合にもLimitRateスライダーで対応できるようだ. 75fps-->LimitRate85, 20fps-->LimitRate98
    BoySporty_2
     以前と大きくは変わらないようにLimitRateを設定

動画
 20fpsで物理角度制限テスト
  https://youtu.be/sCNE9C_zWNA

ver1.0.0.4以降共通
  新機能の使い方まとめ動画
   【DirectX12】AdditiveIK新機能【モーキャプ編集】
   https://youtu.be/oKGY62YosSg

v1.0.0.15

12 Apr 00:28
Compare
Choose a tag to compare

2024/04/12
 AdditiveIK 1.0.0.15 release
  1.0.0.14からの変更点
   不具合修正
    モデルが全体移動している場合にシャドウが表示されていなかった不具合を修正
    ChkInViewにおけるシャドウカメラ変換行列がモデル全体移動に対応していなかった
   
   DOF表示の高速化
    被写界深度(DOF)をオンにした時の表示速度がDOFをオフにしたときの表示速度と同じくらいにまで高速化

   シャドウ品質の改善
    シャドウの品質改善とはシャドウのギザギザ表示を解消すること
    ShadowプレートメニューにVarianceShadowMapsチェックボックスとBlurShadowチェックボックスを追加
    VarianceShadowMaps(分散シャドウマップ)とは
     シャドウの深度情報の差分から影かどうかの分散(確率用語)を計算して影の色を決める方法
    BlurShadowは
     ガウシアンによるボカシを掛ける機能でオフにしている場合にも縮小拡大効果によりボカシを適用して品質向上

動画
ver1.0.0.4以降共通
  新機能の使い方まとめ動画
   【DirectX12】AdditiveIK新機能【モーキャプ編集】
   https://youtu.be/oKGY62YosSg

v1.0.0.14

07 Apr 05:21
Compare
Choose a tag to compare

2024/04/07
 AdditiveIK 1.0.0.14
  1.0.0.13からの変更点
   コンピュートシェーダー対応
    CPU処理とGPU処理を同期して使うことが出来るようにコンピュートシェーダを即時実行するためのクラスを新規

    ピック&セット機能がスキンメッシュ(ボーン入りのメッシュ)に対しても機能するように.
     ボーン変形計算とピック計算をコンピュータシェーダで実行
     ビデオメモリ不足がシビアにならない程度に
     (こちらで以前読めていたアセットを読み込むことが出来る程度に)コンピュートシェーダ化
     
    視野内判定(ChkInView)の改善
     視錐体による判定(改善前は境界球判定だった)
     コンピュートシェーダによる高速計算

   Pick最大距離設定スライダー
    ProjAndLODプレートメニューにPickDistスライダーを追加
    PickDistRate x ProjectionFarの距離より遠いメッシュに対してはPick処理をスキップ
    PickDist 0.0でPick全スキップ、PickDist 1.0で視野内全メッシュに対してPick
    
   マニピュレータの色の濃さを調整
    色が濃すぎてメッシュが隠れてしまっていたのを見易くなるように修正

   半透明ブレンドに関わるメッシュソートの改良
    管理クラスをはっきりさせて、まとめる部分はまとめてからソート

   シェーダー内の割り算を出来るだけ掛け算表現で計算するように修正
    多少高速化

動画
ver1.0.0.4以降共通
  新機能の使い方まとめ動画
   【DirectX12】AdditiveIK新機能【モーキャプ編集】
   https://youtu.be/oKGY62YosSg

v1.0.0.13

29 Mar 04:35
Compare
Choose a tag to compare

2024/03/29
 AdditiveIK 1.0.0.13
  1.0.0.12からの変更点
   不具合修正
    DepthOfField(DOF)の修正
     ボケるべき位置にボケない三角形が多数表示される不具合を修正
     SkyDOFの実装方法をSkyデプス方式からクリア方式へ変更
     大きいモデル(ポリゴン)表示時やカメラが遠くに離れた場合に不具合が生じていた
     RefPosをオンにした場合にも生じていた
    RefPosの修正
     半透明がブレンドされていなかった不具合修正
     DOFと一緒に使うとボケない三角形が多数表示されていた不具合修正
     スキンメッシュの内部配列のインデックスが一部RefPosに対応できていなかった不具合修正
    OWPスライダーの修正
     セパレータ内のスライダーの左ダブルクリックが効かなくなっていたのを修正
      左ダブルクリックでクリック位置へつまみを移動
     セパレータ内の右ダブルクリックが効かなくなっていたのを修正
      右ダブルクリックでスライダーのアンドゥを実行
     スライダードラッグ時につまみの位置が微妙にずれるのを修正
      クリック位置とつまみ位置のずれを保ったままドラッグによりスライドする
      修正により、つまみ中央をドラッグした場合にもつまみ位置とマウスと位置がぴったり合うことを確認
    剛体マーク、リグマーク表示の修正
     マルチスレッドのスロット番号合わせとフレーム番号合わせ
     メッシュの姿勢とマークの位置が表示1回分ずれていたのを修正
     プレビュー時、ホイールによるタイムラインフレーム移動時にも表示がずれなくなった
   
   アルファテストスライダー追加
    ShaderプレートメニューにAlphaTestスライダーを追加
    透明度がスライダー値より小さい場合にピクセル単位で描画をスキップする(アルファテスト)

   アルファテスト修正
    アルファテスト時にシェーディングアルファ設定にも簡略計算にて対応
    シェーディングアルファで透明度を設定しておいてからアルファテストスライダーを操作することにより
    メッシュを明るい部分から徐々に出現させたり、暗い部分から徐々に消したりすることが可能
    アルファテストで完全に消えた場合の跡地がDOFでボケるようになった   

   ブラシのスピーディー選択
    3Dウインドウの何も無いところ(背景)を右クリックするとブラシ選択コンテクストメニューが出る
    詳細な設定はBrusheParamsプレートメニューで行いますが、ブラシの種類をパッと変えたいときに便利

   選択中ブラシ名を表示
    オイラーグラフのオイラー数値表示の並びに、選択中のブラシ名も表示

   TestフォルダにBoySporty_2モデルを追加
    新しいVRoidでモデルを出力し直して復活
    顔のシェーディングが直った

動画
ver1.0.0.4以降共通
  新機能の使い方まとめ動画
   【DirectX12】AdditiveIK新機能【モーキャプ編集】
   https://youtu.be/oKGY62YosSg