UE4 Sound Cueに自作のノードを追加する その1
最近流行っている...かどうかは知りませんが、
Sound Cueに自作のノードを作っていきたいと思います。
ソースを読みながらチマチマ調べたことなので、
「ここはこうした方がいい」というのがあれば教えてください。
準備
新しいプロジェクトを作成しましょう。
Visual Studio 2017を使用しています。
New ProjectからC++タブを選択します。
TemplateやStarter Contentsは特に必要ないので、
Basic Code、No Starter Contentsを選択しています。
プロジェクト名を適当に決め、プロジェクトを作成してください。
UE4エディタとVisual Studioがそれぞれ立ち上がると思います。
新規のC++ファイルを作成する
プロジェクトの作成が完了したら、
エディタ左上のFile→New C++ Class...をクリックします。
※コンテンツブラウザからでもC++ファイルを作成できます。
New C++ Class...を選択すると、このような画面が出ます。
BPでもあるようにここで親クラスを選択します。
ただ最初に表示されているクラスに目的の親クラスはないので、
Show All Classesにチェックを入れ、全てのクラスを表示させます。
今回使用する親クラスは「SoundNode」クラスです。
SoundNodeクラスを選択し、Nextのボタンをクリックします。
次に作成するC++ファイルの名前と格納場所を決定します。
今回はこんな感じにしました。
決定したらCreate Classをクリックしてください。
これでC++ファイルが作成されました。
作成したC++ファイルを見る
次はVisual Studio上での作業になります。
先程作成したC++ファイルが指定した場所にあるのを確認しましょう。
まずはSoundNodeTest.hを見ていきます。
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "Sound/SoundNode.h"
#include "SoundNodeTest.generated.h"
/**
*
*/
UCLASS()
class ADDSOUNDNODE_API USoundNodeTest : public USoundNode
{
GENERATED_BODY()
};
※他のファイルにはGENERATED_UCLASS_BODY()と記述されてますが、
調べたところによるとレガシーらしいです。
次にSoundNodeTest.cppを見てみます。
// Fill out your copyright notice in the Description page of Project Settings.
#include "SoundNodeTest.h"
何もない!
実はもうノードは出来ている
まだ何もしていませんが、
実はもうSound Cueのノードとして生成されています。
ビルドをしてUE4エディタを立ち上げましょう。
コンテンツブラウザから右クリック
Sounds→Sound Cueを選択します。
適当な名前をつけましょう。
作成したSound CueのPaletteを見てみると、
作成したC++のファイル名がそのままノードになっています。
ノードして出してみるとこんな感じです。
中身は空なので繋いでも何も起きませんが、
次回からこのノードに機能をつけていきましょう。
次回