Files
UnrealEngineUWP/Engine/Source/Runtime/GeometryCache/Classes/GeometryCacheTrackFlipbookAnimation.h
Matthew Griffin bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00

47 lines
1.5 KiB
C++

// Copyright 1998-2016 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "GeometryCacheMeshData.h"
#include "GeometryCacheTrackFlipbookAnimation.generated.h"
/** Derived GeometryCacheTrack class, used for Transform animation. */
UCLASS(collapsecategories, hidecategories = Object, BlueprintType, config = Engine)
class GEOMETRYCACHE_API UGeometryCacheTrack_FlipbookAnimation : public UGeometryCacheTrack
{
GENERATED_UCLASS_BODY()
virtual ~UGeometryCacheTrack_FlipbookAnimation();
//~ Begin UObject Interface.
virtual SIZE_T GetResourceSize(EResourceSizeMode::Type Mode) override;
virtual void Serialize(FArchive& Ar) override;
virtual void BeginDestroy() override;
//~ End UObject Interface.
//~ Begin UGeometryCacheTrack Interface.
virtual const bool UpdateMeshData(const float Time, const bool bLooping, int32& InOutMeshSampleIndex, FGeometryCacheMeshData*& OutMeshData) override;
virtual const float GetMaxSampleTime() const override;
//~ End UGeometryCacheTrack Interface.
/**
* Add a GeometryCacheMeshData sample to the Track
*
* @param MeshData - Holds the mesh data for the specific sample
* @param SampleTime - SampleTime for the specific sample being added
* @return void
*/
UFUNCTION()
void AddMeshSample(const FGeometryCacheMeshData& MeshData, const float SampleTime);
private:
/** Number of Mesh Sample within this track */
UPROPERTY(VisibleAnywhere, Category = GeometryCache)
uint32 NumMeshSamples;
/** Stored data for each Mesh sample */
TArray<FGeometryCacheMeshData> MeshSamples;
TArray<float> MeshSampleTimes;
};