我设计了一个飞镖武器(子弹),想让它自动旋转,类似风车一样的效果。
之前的AGM思路是,想要用脚本控制这个对象的角度变化,然后实现自动旋转,但是AGM自身并没有提供角度变化的事件,ChangeAngleSetting里,也无法实现自动旋转。
因此我这个功能一直搁置,直到小伙伴 Justus 给我提供了制作思路,用AnimationPlayer来做。
我之前对AnimationPlayer并不了解,但是随着学习的深入,现在已经可以实现物体自动旋转。
私はダーツ型武器(弾丸)を設計し、風車のような効果で自動回転させたいと思っています。
以前のAGMの考え方は、スクリプトでこのオブジェクトの角度変化を制御し、自動回転を実現しようとしたが、AGM自体には角度変化のイベントが提供されておらず、ChangeAngleSettingでも自動回転を実現することができなかった。
そのため、私はこの機能をずっと棚上げにしていましたが、Justusという仲間がAnimationPlayerを使って作るアイデアを提供してくれたので、やっと進めることができました。
以前はAnimationPlayerについて知らなかったが、学習を深めるにつれて、今では物体の自動回転を実現できるようになった。
I designed a dart weapon (bullet) that automatically rotates, producing a windmill-like effect.
The previous AGM approach was to use a script to control the angle change of this object and achieve automatic rotation. However, AGM itself does not provide an event for angle change, and automatic rotation cannot be achieved in ChangeAngleSetting.
So I had been putting off this feature until my buddy Justus provided me with an idea on how to make it using AnimationPlayer.
I didn’t know much about AnimationPlayer before, but with further learning, I can now achieve automatic rotation of objects.
具体步骤:
1 在物体场景的根节点上,建立一个Sprite2D节点,然后把相关图片素材放进去。
2 在此节点下,建立一个AnimationPlayer节点。
3 点开AnimationPlayer,新建一个动画,命名为“旋转”,设置好“自动播放”和“循环”。
4 为了保证播放速度,相关帧数,间隔数值如图。(可根据需求变化调整,手动调节关键帧间隔)
5 K帧动画,以每5度(角度)为一个最小单位K帧,K到变化90度(角度)。
6 完成,F5测试,欣赏成果!!!
最后再次感谢 JUSTUS的帮助!!!
具体的な手順:
1 物体シーンのルートノードにSprite2Dノードを作成し、関連する画像素材を入れる。
2 このノードの下に、AnimationPlayerノードを作成します。
3 AnimationPlayerを開き、新しいアニメーションを作成し、「回転」と名前を付け、「自動再生」および「ループ」を設定します。
4 再生速度を確保するために、関連するフレーム数、間隔値は図の通りです。(必要に応じて変更調整可能、キーフレーム間隔は手動で調整)
5Kフレームアニメーション、5度(角度)ごとを最小単位のKフレームとし、Kから90度(角度)まで変化する。
6 完成、F5テスト、成果を鑑賞!!!
最後に、JUSTUSの助けに再度感謝します!!!
具体的な手順:
1 物体シーンのルートノードにSprite2Dノードを作成し、関連する画像素材を入れる。
2 このノードの下に、AnimationPlayerノードを作成します。
3 AnimationPlayerを開き、新しいアニメーションを作成し、「回転」と名前を付け、「自動再生」および「ループ」を設定します。
4 再生速度を確保するために、関連するフレーム数、間隔値は図の通りです。(必要に応じて変更調整可能、キーフレーム間隔は手動で調整)
5Kフレームアニメーション、5度(角度)ごとを最小単位のKフレームとし、Kから90度(角度)まで変化する。
6 完成、F5テスト、成果を鑑賞!!!
最後に、JUSTUSの助けに再度感謝します!!!

