/* * 1.2行目は基本的に②-Dと同じであるが、モーフの場合は、getMorphTransformerで、MorphTransformerを取得する。 * この値のメンバのMorphValueにセットすることで値を変えることが可能。 * PMXの仕様ではモーフの値が0以上1以下以外はサポートされないが、MMFでは代入することは可能である。ただしその動作については保証しない。 * ManualTransformUpdaterによる更新では、フレームごとに変化量はリセットされない。 * よって、変形の必要な時に追加で掛け合わせて行けばよく、毎フレームごと現在のモーフ値を代入する必要はない。 */ //②-F コンボボックスの値が変わったときにトラックバーの値を対応したモーフの値にする。 private void morph_combo_box_SelectedValueChanged(object sender, EventArgs e) { if (string.IsNullOrEmpty((string)morph_combo_box.SelectedItem)) { return; } モーフ変形 transformer = updater.モーフ変形を検索して返す((string)morph_combo_box.SelectedItem); morph_track_bar.Value = (int)(transformer.モーフ値 * morph_track_bar.Maximum); }
public モーフ変形 モーフ変形を検索して返す(string morphName) { if (_名前toモーフ変形マップ.ContainsKey(morphName)) { return(_名前toモーフ変形マップ[morphName]); } var transformer = new モーフ変形(morphName); _名前toモーフ変形マップ.Add(transformer.モーフ名, transformer); return(transformer); }