class render::SpriteImage

Render proxy counterpart of a SpriteImage.

Public

Methods

~TSpriteImage<IsRenderProxy>

~TSpriteImage<IsRenderProxy>() override = default

EvaluateAnimation

Area2 EvaluateAnimation(const SpriteImageAllocationType &allocation, float t) const

Evaluates the UV coordinate offset and size to use at the specified animation time.

If the sprite texture doesn't have animation playback enabled then just the default offset and size will be provided, otherwise the animation will be evaluated and appropriate UV returned.

allocation
Image allocation to evaluate animation for. Must be owned by this sprite image.
t
Time to evaluate the animation at.

Returns: UV range of the animation frame at the specified time.

GetDefaultAllocatedImage

const SpriteImageAllocationType &GetDefaultAllocatedImage() const

Returns the default (unscaled) image allocation, using the image size as provided on the sprite image construction.

GetDefaultAllocatedImageAsShared

SPtr<SpriteImageAllocationType> GetDefaultAllocatedImageAsShared() const

Returns the default (unscaled) image allocation, using the image size as provided on the sprite image construction.

GetAnimationFrameSize

Size2UI GetAnimationFrameSize() const

Returns the size of a single animation frame in logical pixel units.

If the texture has no animation this is the same as GetLogicalSize().

Protected

Constructors

SpriteImage

SpriteImage(const SpriteImageCreateInformation &createInformation, const SPtr<SpriteImageAllocation> &defaultAllocatedImage)

Methods

SyncFromCoreObject

void SyncFromCoreObject(const CoreSyncData &data, FrameAllocator &allocator) override

Update internal data from provided memory buffer that was populated with data from the owning CoreObject.

Fields

mDefaultAllocatedImage

SPtr<SpriteImageAllocationType> mDefaultAllocatedImage

mScaledAllocatedImages

TInlineArray<SpriteImageAllocationType *, 2> mScaledAllocatedImages