UEFN Verse言語 メタバース

【UEFN】小道具以外のオブジェクトを動かす方法【Verse言語】

【UEFN】小道具以外のオブジェクトを動かす方法【Verse言語】
みなみ

小道具以外のオブジェクトを動かす方法について教えてください!

りゅう

初心者向けにわかりやすく解説してほしいですね!

こんなお悩みを解決します。

 本記事の内容
 本記事の信頼性

この記事を書いている僕は、クリエイター兼ブロガーです。実際にUEFNを使っており、現在進行形で学んでいます。

今回は、小道具以外のオブジェクトを動かす方法についてスクショ画像を使って解説します。

なお、当記事はせぶんなっぷ様のYouTubeを参考にさせていただきました。

私の解釈に誤りがありましたらその際はご了承ください。(o_ _)o))

さっそく、やっていきましょう。

あすか

小道具以外のオブジェクトを動かす方法

※音量にご注意ください。

▼ まずコンテンツドロワーを開き、ブラウザ内の余白で右クリックします。

欄が表示されるので、「ブループリント」を選択しましょう。

UEFN 小道具以外のオブジェクトを動かす方法 1
※クリックすると拡大表示されます。

▼ 「建築小道具」をクリックします。

UEFN 小道具以外のオブジェクトを動かす方法 2

▼ 名前を『crash_BP』にします。

UEFN 小道具以外のオブジェクトを動かす方法 3

▼ 名前を変更したら、シーン上に設置しましょう。

(透明で問題ないです。)

UEFN 小道具以外のオブジェクトを動かす方法 4

小道具の設置

▼ そしたら、小道具を設置します。

(今回は例としてクラッシュパッドを使用しています。)

UEFN 小道具以外のオブジェクトを動かす方法 5

▼ 「小道具(クラッシュパッド)」を先ほど設置したブループリント「crash_BP」の子供にします。

ドラッグアンドドロップしましょう。

UEFN 小道具以外のオブジェクトを動かす方法 6

▼ 以下の画像のようにcrash_BPの右下に小道具があればOKです。

UEFN 小道具以外のオブジェクトを動かす方法 7

Verseコードの入力

▼ 次に、Verseコードを入力します。

画面上部の「Verse」→「Verse Explorer」を選択します。

UEFN 小道具以外のオブジェクトを動かす方法 8

▼ そしたら「Verse Explorer」が追加されるので、プロジェクト名(わたくしのはMoveTo)を右クリックし、「Add new Verse file to project」を選択します。

UEFN 小道具以外のオブジェクトを動かす方法 9

▼ Device Nameを『zip_move』に変更したら「作成」ボタンを押します。

UEFN 小道具以外のオブジェクトを動かす方法 10

▼ 「zip_move.verse」をダブルクリックして開きましょう。

UEFN 小道具以外のオブジェクトを動かす方法 11

▼ 開いたら、以下のようにコードを入力します。

UEFN 小道具以外のオブジェクトを動かす方法 12
 完全なスクリプト

using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /UnrealEngine.com/Temporary/SpatialMath }

# See https://dev.epicgames.com/documentation/en-us/uefn/create-your-own-device-in-verse for how to create a verse device.

# A Verse-authored creative device that can be placed in a level
zip_move := class(creative_device):

    @editable
    crash_BP : creative_prop = creative_prop{}


    # Runs when the device is started in a running game
    OnBegin<override>()<suspends>:void=
        spawn:
            Rotation_zip()

    Rotation_zip()<suspends>:void=
            var YawAngle : float = 0.0
            var PitchAngle : float = 0.0
            loop:

                targetRotation := MakeRotationFromYawPitchRollDegrees(YawAngle, PitchAngle, 0.0)
                crash_BP.MoveTo(vector3{X:=2208.0, Y:=237.0, Z:=561.0}, targetRotation, 1.0)
                set YawAngle = YawAngle + 30.0
                set PitchAngle = PitchAngle + 10.0

引用:せぶんなっぷ【フォートナイトUEFN制作】

Creative Devicesの設置

▼ コードを入力したら、コンテンツドロワーを開き、「Creative Devices」をクリック。

UEFN 小道具以外のオブジェクトを動かす方法 13

▼ 「zip_move」をシーン上に設置します。

UEFN 小道具以外のオブジェクトを動かす方法 14

▼ 設置したら、「Verse」→「Verseコードをビルド」をクリックします。

UEFN 小道具以外のオブジェクトを動かす方法 15

▼ デバイスを選択し、画面右下のcrash_BP「なし」を「crash」に選択します。

UEFN 小道具以外のオブジェクトを動かす方法 16

▼ あとはセッションを開始し、正しく実行されているか確認しましょう。

UEFN 小道具以外のオブジェクトを動かす方法 17

▼ 以下のようにオブジェクトが動けば成功です。

UEFN 小道具以外のオブジェクトを動かす方法 18

以上です。

お疲れさまでした🍵

あすか
みなみ

お疲れさまでした!

りゅう

お疲れです😎

 7napさんのYouTube&Twitter account ⚡
 My Twitter account 🍀

小道具以外のオブジェクトを動かすVerseコードを徹底解説

小道具以外のオブジェクトを動かすVerseコードを徹底解説
 コード

using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /UnrealEngine.com/Temporary/SpatialMath }

# See https://dev.epicgames.com/documentation/en-us/uefn/create-your-own-device-in-verse for how to create a verse device.

# A Verse-authored creative device that can be placed in a level
zip_move := class(creative_device):

    @editable
    crash_BP : creative_prop = creative_prop{}


    # Runs when the device is started in a running game
    OnBegin<override>()<suspends>:void=
        spawn:
            Rotation_zip()

    Rotation_zip()<suspends>:void=
            var YawAngle : float = 0.0
            var PitchAngle : float = 0.0
            loop:

                targetRotation := MakeRotationFromYawPitchRollDegrees(YawAngle, PitchAngle, 0.0)
                crash_BP.MoveTo(vector3{X:=2208.0, Y:=237.0, Z:=561.0}, targetRotation, 1.0)
                set YawAngle = YawAngle + 30.0
                set PitchAngle = PitchAngle + 10.0

注意:以下のコードの解説文はプログラミング初心者の主が解説したものです。

誤りがありましたら大変恐縮です。

あすか

参考程度にどうぞ。

▼ 以下のコードは変数を定義しており、creative_prop型のオブジェクトを持つように初期化されています。

    @editable
    crash_BP : creative_prop = creative_prop{}

▼ このコードは、spawnというキーワードを使用して、Rotation_zip()というメソッドを非同期に実行するものです。

ここでは、プログラムの流れが一時停止して他の処理が行われる可能性があるため、<suspends>というアノテーションが付いています。

        spawn:
            Rotation_zip()

    Rotation_zip()<suspends>:void=
            var YawAngle : float = 0.0
            var PitchAngle : float = 0.0
 非同期処理を用いる理由

▼ このコードは、オブジェクトを指定の位置に移動させながら回転させるための処理をループ内で行います。

            loop:

                targetRotation := MakeRotationFromYawPitchRollDegrees(YawAngle, PitchAngle, 0.0)
                crash_BP.MoveTo(vector3{X:=2208.0, Y:=237.0, Z:=561.0}, targetRotation, 1.0)
                set YawAngle = YawAngle + 30.0
                set PitchAngle = PitchAngle + 10.0
 YawAngle&PitchAngleについて
 MakeRotationFromYawPitchRollDegrees関数の詳細

以上、このコードは、Verseのクリエイティブデバイスの一部であり、非同期処理を使用して定期的にオブジェクトを回転させます。

まとめ

UEFN 小道具以外のオブジェクトを動かす方法 まとめ

今回は、小道具以外のオブジェクトを動かす方法について解説しました。

 完全なスクリプト

using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /UnrealEngine.com/Temporary/SpatialMath }

# See https://dev.epicgames.com/documentation/en-us/uefn/create-your-own-device-in-verse for how to create a verse device.

# A Verse-authored creative device that can be placed in a level
zip_move := class(creative_device):

    @editable
    crash_BP : creative_prop = creative_prop{}


    # Runs when the device is started in a running game
    OnBegin<override>()<suspends>:void=
        spawn:
            Rotation_zip()

    Rotation_zip()<suspends>:void=
            var YawAngle : float = 0.0
            var PitchAngle : float = 0.0
            loop:

                targetRotation := MakeRotationFromYawPitchRollDegrees(YawAngle, PitchAngle, 0.0)
                crash_BP.MoveTo(vector3{X:=2208.0, Y:=237.0, Z:=561.0}, targetRotation, 1.0)
                set YawAngle = YawAngle + 30.0
                set PitchAngle = PitchAngle + 10.0

今回もお疲れさまです🍵

コツコツ積み上げていきましょう!

  • この記事を書いた人
  • 最新記事

あすか(Asuka)

自己紹介:UEFNクリエイター
Verse言語独学中 | UE・プログラミング・3Dモデリング 6月開始 | 備忘録として学習記録をブログに残しています。
■好きな言葉
徳は弧ならず必ず隣あり.
■ひとこと
まだまだ未熟者ですが、
よろしくお願いします。

-UEFN, Verse言語, メタバース
-, ,