Help us understand the problem. What is going on with this article?

setParamFloatとaddToParamFloatの違い

More than 3 years have passed since last update.

Live2Dアプリ作ってると軽くハマるポイントなので書いておこうかと。
自分だけかと思ったら、同じようにハマってる人がいました。

Live2Dフォーラム - Unityでのモーション再生がうまくいきません

Unityに限らず、どのプラットフォームでも共通かと思います。

開発環境

・Live2D Unity SDK 2.1.00_1
・Unity5.3.1

2つのAPIの違い

Live2Dドキュメント-パラメータの操作やサンプルソースを見ると、パラメーター操作にはsetParamFloat、addToParamFloat、multParamFloatがあります。
このsetParamFloatとaddToParamFloatの違いですが、値を上書きするか加算するかの違いがあります。

// 上書き
live2DModel.setParamFloat("パラメーターID", );
// 加算
live2DModel.addToParamFloat("パラメーターID", );

SDKサンプルのDemoプロジェクトを見ると、setParamFloatが使われています。
(Demoプロジェクトはマウスドラッグした方に顔を向けるサンプル)

<Demo - setParamFloat()>
001.gif
では、これをaddToParamFloatに変えてみます。

<Demo - addToParamFloat()>
002.gif
加算されるので、マウスドラッグし続けるとぐいっと顔を向けて不自然ですね。
「うん、これじゃない。addToParamFloatは使う必要ないな」と思った時期がありました。

はまりポイント

実はaddToParamFloatは、モーション再生とマウスドラッグ処理を併用する際に有効です。
僕もsetParamFloatで値を上書きしてモーションが正しく再生されないって時がありました。

・setParamFloatの場合、モーションで動かすパラメーターも上書きされて正しく再生されない
003.gif

・addToParamFloatの場合、加算なのでモーションで動かすパラメーターを上書きしない
004.gif

setParamFloatで上手くいかない場合はaddToParamFloatを使ってみて下さい。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away