この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 両方とも前のリビジョン 前のリビジョン | |||
| wiki:ue4:tips:500 [2015/03/28 05:37] step | — (現在) | ||
|---|---|---|---|
| ライン 1: | ライン 1: | ||
| - | ====== C++/Actorクラスの作成(4.7.3) ====== | ||
| - | |||
| - | - 「コンテンツブラウザ」の「新規追加」から「新規C++ Class...」を選択する。 | ||
| - | - 親クラスに「Actor」を選択して次へ。 | ||
| - | - 名前を「MyActor」として「クラスを作成」する。 | ||
| - | |||
| - | ===== コードの記述とコンパイル ===== | ||
| - | - クラスが生成されると自動でVisual Studioが開くので、MyActor.h/cppを編集します。 | ||
| - | <code csharp> | ||
| - | // MyActor.h | ||
| - | class STDPROJECT_API AMyActor : public AActor | ||
| - | { | ||
| - | GENERATED_BODY() | ||
| - | private: | ||
| - | // 追加 | ||
| - | float m_fRunningTime; | ||
| - | } | ||
| - | </code> | ||
| - | |||
| - | |||
| - | <code csharp> | ||
| - | // MyActor.cpp | ||
| - | |||
| - | // 生成された時に一度だけ呼ばれる。 | ||
| - | void AMyActor::BeginPlay() | ||
| - | { | ||
| - | Super::BeginPlay(); | ||
| - |  | ||
| - | } | ||
| - | |||
| - | // 毎フレーム呼ばれる。 | ||
| - | void AMyActor::Tick( float DeltaTime ) | ||
| - | { | ||
| - | Super::Tick( DeltaTime ); | ||
| - | |||
| - | // 追加 | ||
| - | FVector NewLocation = GetActorLocation(); | ||
| - | float DeltaHeight = (FMath::Sin(m_fRunningTime + DeltaTime) - FMath::Sin(m_fRunningTime)); | ||
| - | NewLocation.Z += DeltaHeight * 20.0f; | ||
| - | m_fRunningTime += DeltaTime; | ||
| - | SetActorLocation(NewLocation); | ||
| - | } | ||
| - | </code> | ||
| - | |||
| - | 動作は公式のクイックスタートのコードそのままです。プロジェクトをビルドしてエラーが出ないことを確認します。 | ||
| - | |||
| - | ===== Actorを配置する ===== | ||
| - | - UE4エディターに戻って「コンテンツブラウザ」から「MyActor」をビューポートにドラッグ&ドロップします。 | ||
| - | - 「ワールドアウトライナー」に「MyActor1」が追加されアクターの詳細が設定できる様になります。 | ||
| - | - 「MyActor1」の「詳細パネル」の「コンポーネントを追加」から適当な図形を選択します。ここでは球(Sphere)を選択しました。 | ||
| - | |||
| - | {{:wiki:ue4:tips:ue4_create_actor_shpere.png|}} | ||
| - | |||
| - | これでビューポートにアクターが表示されました。 | ||
| - | 実行すると上下にSin移動します。 | ||
