VFX Preset 성능 최적화

개요

VFX Preset을 보다 효율적으로 활용하기 위해 Importance(중요도)와 Infinite Loop 설정을 조합하여 다양한 퍼포먼스 타입을 자동으로 결정합니다. 이를 통해 크리에이터는 각 이펙트의 특성에 맞추어 최적화를 진행할 수 있습니다.

또한 정해진 버짓을 기준으로 VFX Preset을 관리할 수 있으므로, 리소스를 절감하는 것뿐만 아니라 이펙트 타입별로 균형 잡힌 품질과 성능을 유지할 수 있습니다. 이러한 방식을 통해 크리에이터가 작업 과정에서 더욱 간편하고 효율적으로 VFX Preset을 다룰 수 있도록 합니다.

VFX Preset 버짓팅

VFX Preset은 기기의 성능을 많이 소모하는 요소입니다. 많이 사용할수록 퀄리티는 향상되지만 성능 저하로 인해 플레이 경험은 오히려 나빠질 수 있습니다. 성능을 보장하려면 VFX 사용을 최소화해야 하지만, 그 경우 게임의 시각적 재미가 감소합니다.

이를 조정하기 위해 오버데어 스튜디오에서는 Importance(중요도)와 Infinite Loop 설정을 기반으로 Performance Type을 자동 분류하고 각 타입별 리소스를 할당하여, 크리에이터가 쉽게 VFX를 사용하면서도 성능을 보장할 수 있는 기능을 제공합니다.\

제약 사항

구분
제약사항

버짓 업데이트 주기

  • Spawn: 월드에 배치되거나 Enabled 되는 시점에 버짓 업데이트

  • Tick: 일정 주기마다 우선순위를 계산하여 버짓 업데이트

버짓 내 우선순위 결정 방식

  • Distance: 카메라와의 거리에 따라 가까운 것을 우선적으로 표시

  • Age: 인스턴스가 최근 Spawn된 순서대로 우선적으로 표시

버짓 초과 시 처리 방식

  • Kill: 렌더링 비활성화 (재할당 불가)

  • Asleep: 일시적 비활성화, 여유가 생기면 재할당 가능

표현 최대 거리

카메라 기준 최대 거리 초과 시 버짓에서 제외

최대 인스턴스 수

Performance Type별 최대 허용 인스턴스 수

동일 이펙트 최대 갯수

같은 Performance Type 내에서 동일한 모양의 이펙트의 최대 갯수

Importance와 Performance Type 매핑

VFXPreset의 Importance(중요도)와 Infinite Loop 설정의 조합에 따라 내부적으로 아래와 같이 Performance Type이 자동 결정됩니다.

Importance
Infinite Loop
Performance Type
설명
사용 예시

Default

False

Default Burst

성능 고려 없이 반드시 재생되어야 하는 단발성 VFX

필수적인 연출 효과

Default

True

Default Looping

성능 고려 없이 반드시 재생되어야 하는 반복 VFX

필수적인 반복 연출 효과

Background

False

Background Burst

배경에서 특정 시점에 재생되는 VFX

스파크, 연기 효과

Background

True

Background Looping

배경에서 지속적으로 재생되는 VFX

횃불, 비 효과

Gameplay

False

Gameplay Burst

특정 시점에 잠깐 재생되는 게임 플레이 VFX

피격 효과, 레벨업·아이템 획득 효과

Gameplay

True

Gameplay Looping

지속적으로 재생되는 게임 플레이 VFX

보호막, 버프 오라 효과

Critical

-

Critical

게임 플레이적으로 반드시 표현되어야 하는 VFX

득점 효과, 시작·종료 조건 이펙트

Performance Type 별 리소스 제한

일반사양 옵션에서 리소스 제한

Limitation
Background Looping
Background Burst
Gameplay Looping
Gameplay Burst
Critical
Default

업데이트 주기

Tick (Medium)

Spawn

Tick (High)

Spawn

Spawn

Spawn / Tick (Low)

우선순위 결정 기준

Distance

Distance

Distance

Age

Age

Distance

버짓 초과 시 처리 방식

Asleep

Kill

Asleep

Kill

Kill

Kill / Asleep

표현 가능한 최대 거리

10000

5000

10000

12500

제한 없음

제한 없음

해당 버짓의 최대 인스턴스 수

8

8

40

60

20

88 / 48

동일한 이펙트의 갯수 제한

4

4

10

30

20

88 / 48

저사양 옵션에서 리소스 제한

Limitation
Background Looping
Background Burst
Gameplay Looping
Gameplay Burst
Critical
Default

업데이트 주기

Tick (Medium)

Spawn

Tick (High)

Spawn

Spawn

Spawn / Tick (Low)

우선순위 결정 기준

Distance

Distance

Distance

Age

Age

Distance

버짓 초과 시 처리 방식

Asleep

Kill

Asleep

Kill

Kill

Kill / Asleep

표현 가능한 최대 거리

1250

450

2500

1000

제한 없음

제한 없음

해당 버짓의 최대 인스턴스 수

6

6

6

25

4

32 / 12

동일한 이펙트의 갯수 제한

3

4

4

4

2

32 / 12

사용 방법

VFX Preset 생성

레벨 브라우저에서 VFX Preset을 생성하고 원하는 효과와 색상 크기 등을 조정합니다.

자세히 알아보기

VFXchevron-right

Importance 지정

해당 이펙트의 중요도(Importance)를 설정합니다. 자신이 사용하려는 이펙트의 용도와 중요도를 판단하여 결정하도록 합니다. Importance와 Infinite Loop 설정의 조합에 따라 내부 Performance Type이 자동으로 결정됩니다.

월드 배치

만든 이펙트가 나올 위치나 지역에 VFX Preset를 배치합니다. 만일 미리 월드에 배치해야 하는 경우가 아니라 게임 중간에 동적으로 배치되어야 하는 경우, ReplicatedStorage 또는 Serverstoorage에 저장해 두었다가 Clone이나 Parent 지정을 통해 월드에 배치 할 수 있습니다.

주의사항

VFX Preset의 Importance는 런타임에는 변경이 불가능 합니다. VFX Preset을 런타임 중에 새로 생성하여 배치 할 때에는 ReplicatedStorage 또는 ServerStorage에 미리 생성 해 두고 Clone 등을 통하여 동적으로 배치하여야 합니다.

Last updated