本文整理汇总了C++中UMovieSceneSection::GetRange方法的典型用法代码示例。如果您正苦于以下问题:C++ UMovieSceneSection::GetRange方法的具体用法?C++ UMovieSceneSection::GetRange怎么用?C++ UMovieSceneSection::GetRange使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UMovieSceneSection
的用法示例。
在下文中一共展示了UMovieSceneSection::GetRange方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Tick
virtual void Tick( const FGeometry& AllottedGeometry, const double InCurrentTime, const float InDeltaTime )
{
if (Sequencer.Pin()->IsShotFilteringOn())
{
TArray< TWeakObjectPtr<UMovieSceneSection> > FilterShots = Sequencer.Pin()->GetFilteringShotSections();
// if there are filtering shots, continuously update the cached filter zones
// we do this in tick, and cache it in order to make animation work properly
CachedFilteredRanges.Empty();
for (int32 i = 0; i < FilterShots.Num(); ++i)
{
UMovieSceneSection* Filter = FilterShots[i].Get();
CachedFilteredRanges.Add(Filter->GetRange());
}
}
}
示例2: SliderRange
TArray<UMovieSceneSection*> MovieSceneHelpers::GetTraversedSections( const TArray<UMovieSceneSection*>& Sections, float CurrentTime, float PreviousTime )
{
TArray<UMovieSceneSection*> TraversedSections;
bool bPlayingBackwards = CurrentTime - PreviousTime < 0.0f;
float MaxTime = bPlayingBackwards ? PreviousTime : CurrentTime;
float MinTime = bPlayingBackwards ? CurrentTime : PreviousTime;
TRange<float> SliderRange(MinTime, MaxTime);
for( int32 SectionIndex = 0; SectionIndex < Sections.Num(); ++SectionIndex )
{
UMovieSceneSection* Section = Sections[SectionIndex];
if( Section->GetStartTime() == CurrentTime || SliderRange.Overlaps( TRange<float>( Section->GetRange() ) ) )
{
TraversedSections.Add( Section );
}
}
return TraversedSections;
}