【3Dゲームエンジン】Unity質問スレッド28at GAMEDEV【3Dゲームエンジン】Unity質問スレッド28 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト831:名前は開発中のものです。 17/05/11 23:32:38.09wBkp9jf2.net Unity嫉妬民見苦しいぞ 832:Unity大使 17/05/12 00:22:09.93bl3/ZJYE.net スレ荒れすぎィ!?(^^ 833:名前は開発中のものです。 17/05/12 00:32:41.50+qHrRH2t.net 自分が所属するコミュニティを荒らす行為っ自傷行為だよね 834:名前は開発中のものです。 17/05/12 00:33:10.41+qHrRH2t.net 自分が所属するコミュニティを荒らす行為って自傷行為みたいなもんなのにばっかじゃなかろか 835:名前は開発中のものです。 17/05/12 01:07:16.95yFpV/Gm7.net 質問も回答もしないから荒れてようが問題ないという人ばかりなので 836:名前は開発中のものです。 17/05/12 01:29:17.84evYmAeh3.net 質問です。 既にアニメーションで使用しているブレンドシェイプの値をスクリプトで変えられませんか? 具体的には、"Person"のコンポーネントとしてSkinnedMeshRendererがアタッチされていて、 その中のBlendShapesを値を変更したいです。 たとえばブレンドシェイプ0番であるまぶたを閉じさせたいとき、 eye_num = 0; GameObject.Find("Person").GetComponent<SkinnedMeshRenderer>().SetBlendShapeWeight(eye_num, Random.Range(0,100f)); といったように。 ところが、いろいろ試行錯誤をしていて分かったのですが、 animatorのanimationによって、このブレンドシェイプ0番を制御している場合、あるいはその時制御していなくても、 animatorのレイヤーのどこかに制御するためのモーションが張り付けられていて制御する準備が出てきている場合、 スクリプトの制御が効かなくなることがわかりました。 通常時はanimationでまばたきさせ、アクションを起こしたときスクリプトで閉じさせたいのに、これでは不便です。 恐らくスクリプトのupdateの後にinternal animation updateが起こっているから、 スクリプトで行なった制御が上書きされているのだと推測します。 そうであれば、internal animation updateの後で更新を行うLateUpdateで制御すればよいと考え、 試してみたら無事成功しました。 ありがとうございました。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch