Created
August 17, 2023 23:27
-
-
Save IosysPio/b9dd34194207af13a89da5b9b23d2d49 to your computer and use it in GitHub Desktop.
VC公式配布のMovingLightをスタジオ対応させるメモ
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- MovingLightをスタジオで出したときに出るエラーを回避する | |
-- エラーが出るのは122行目ですが、そのエラー自体は116行目でget_currnet_value()で取得する共有変数の値が初期化されていないために起こる | |
-- pan_angle_nowの値がおかしいために122行のtransform.SetLocalRotation(Quarternion.Euler())の引数の数が合わなくなる | |
-- なので、ここの値がおかしいときに例外として0などのデフォルトになる数値を与えてやればとりあえず回避可能 | |
-- 修正箇所 基本はvci.state.Get()の部分でおかしな値を全部数値にしてやる必要 | |
-- 初期化されてないだけならnilが返ってくるのでとりあえずnilのとき0にする | |
-- 23行目から33行目のvci.state.Get()のあとに or 0をつければ0にはなる | |
-- 初期化時と同じ値を仮に与えておく | |
-- (pan_angle, tilt_angle, dimer_masterは角度と光度で初期値0, dimer_red, dimer_green, dimer_blueはRGB要素なので1) | |
-- 22から33行目 | |
---@type number | nil | |
local pan_angle_now = vci.state.Get(pan_angle_state_key) or 0 | |
---@type number | nil | |
local tilt_angle_now = vci.state.Get(tilt_angle_state_key) or 0 | |
---@type number | nil | |
local dimmer_master_now = vci.state.Get(dimmer_master_state_key) or 0 | |
---@type number | nil | |
local dimmer_red_now = vci.state.Get(dimmer_red_state_key) or 1 | |
---@type number | nil | |
local dimmer_green_now = vci.state.Get(dimmer_green_state_key) or 1 | |
---@type number | nil | |
local dimmer_blue_now = vci.state.Get(dimmer_blue_state_key) or 1 | |
-- 115から120行目 | |
pan_angle_now = get_current_value(pan_angle_now, vci.state.Get(pan_angle_state_key) or 0, pan_max_speed, delta_time) | |
tilt_angle_now = get_current_value(tilt_angle_now, vci.state.Get(tilt_angle_state_key) or 0, tilt_max_speed, delta_time) | |
dimmer_master_now = get_current_value(dimmer_master_now, vci.state.Get(dimmer_master_state_key) or 0, color_max_speed, delta_time) | |
dimmer_red_now = get_current_value(dimmer_red_now, vci.state.Get(dimmer_red_state_key) or 1, color_max_speed, delta_time) | |
dimmer_green_now = get_current_value(dimmer_green_now, vci.state.Get(dimmer_green_state_key) or 1, color_max_speed, delta_time) | |
dimmer_blue_now = get_current_value(dimmer_blue_now, vci.state.Get(dimmer_blue_state_key) or 1, color_max_speed, delta_time) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment