리본 이펙트

이 문서에서는 나이아가라를 사용하여 리본 비주얼 이펙트를 생성하는 방법에 대해 설명합니다.

Choose your operating system:

Windows

macOS

Linux

필요한 사전지식

이 페이지의 콘텐츠를 이해하고 활용하기 위해 다음 주제를 숙지해 주세요.

사전 요구사항: 이 튜토리얼에서는 나이아가라 플러그인 콘텐츠에 포함된 DefaultRibbonMaterial을 사용합니다. 하지만 나이아가라에서 메시 파티클 이펙트를 생성하는 방법 튜토리얼을 완료하셨다면, 튜토리얼 중에 제작한 M_Balloon 머티리얼을 사용해도 됩니다.

자연 현상을 시뮬레이션하는 것은 상당히 어렵습니다. 특히 스프라이트나 메시 기반 파티클을 사용한 연기 또는 비행운 시뮬레이션은 더욱 까다롭습니다. 리본 이미터(Ribbon Emitters) 는 이러한 오브젝트를 시뮬레이션하기 적합한 솔루션입니다. 앞으로 진행할 튜토리얼에서는 지속적인 리본 스타일 파티클 이펙트를 월드에 생성할 수 있도록 나이아가라 이미터를 생성하는 방법을 배웁니다. 최종 결과물은 다음과 같습니다.

리본 이펙트 최종 결과물

시스템 및 이미터 생성

나이아가라 이미터 및 시스템은 캐스케이드와 달리 독립되어 있습니다. 현재 권장되는 워크플로는 기존 이미터나 이미터 템플릿에서 시스템을 생성하는 방식 입니다.

  1. 우선 콘텐츠 드로어(Content Drawer)에서 우클릭하고 FX > 나이아가라 시스템(Niagara System) 을 선택하여 나이아가라 시스템을 생성합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  2. 선택한 이미터에서 새 시스템 생성(New system from selected emitters) 을 선택한 뒤, 다음(Next) 을 클릭합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  3. 템플릿(Templates) 에서 심플 스프라이트 버스트(Simple Sprite Burst) 를 선택합니다.

    템플릿을 사용하면 새 시스템에 이미터 인스턴스가 배치됩니다. 해당 이미터 인스턴스에는 상속이 없습니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  4. 더하기 표시(Plus sign) 아이콘( + )을 눌러 선택한 이미터를 시스템에 추가할 이미터 목록에 추가합니다. 완료(Finish) 를 누릅니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  5. 새 시스템 이름을 RibbonSystem 으로 지정합니다.

    ! 새 시스템 이름 지정

  6. RibbonSystem 을 레벨에 드래그한 뒤, 나이아가라 에디터에서 더블 클릭하여 엽니다.

    파티클 이펙트를 만들 때는 항상 시스템을 레벨로 드래그하는 것이 좋습니다. 이렇게 하면 모든 변경과 편집을 컨텍스트에서 볼 수 있습니다. 시스템에서 변경한 내용은 자동으로 레벨의 시스템 인스턴스에 전파됩니다.

  7. 새 시스템의 이미터 인스턴스 이름은 기본적으로 SimpleSpriteBurst 지만 나중에 변경할 수 있습니다. 시스템 개요(System Overview) 에서 이미터 인스턴스 이름을 클릭하면 해당 필드를 편집할 수 있습니다. 이미터의 이름을 FX_Ribbon 으로 지정합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

렌더러 변경

렌더(Render) 그룹은 스택의 마지막 부분이지만, 이펙트를 원하는 대로 표시하려면 세팅을 변경해야 합니다. 원본 템플릿에서는 스프라이트 렌더러(Sprite Renderer)를 사용했지만 이 이펙트에는 리본 렌더러(Ribbon Renderer)가 필요합니다.

  1. 시스템 개요 에서 렌더 를 클릭하여 선택(Selection) 패널에서 엽니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  2. 리본 이펙트를 만들려면 리본 렌더러 모듈이 필요합니다. 그런데 템플릿에 이미 스프라이트 렌더러 모듈이 있습니다. 휴지통(Trashcan) 아이콘을 클릭하여 스프라이트 렌더러를 삭제합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  3. 렌더 에서 더하기 표시 아이콘( + )을 클릭하고 리본 렌더러 를 선택합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  4. 기본적으로는 원하는 머티리얼이 표시되지 않습니다. 머티리얼(Material) 드롭다운을 클릭하고 뷰 옵션(View Options) 을 클릭하면 옵션 목록이 열립니다. 엔진 콘텐츠 표시(Show Engine Content) , 플러그인 콘텐츠 표시(Show Plugin Content) 박스를 체크하세요. 이제 머티리얼을 볼 수 있습니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  5. 머티리얼 드롭다운을 클릭하고 DefaultRibbonMaterial 을 선택합니다.

    [메시 파티클 이펙트 생성](creating-visual-effects/HowTo/MeshEffect)
    튜토리얼을 완료했다면 M_Balloon 머티리얼을 선택해도 됩니다. 그러면 DefaultRibbonMaterial에서 생성한 반투명 리본이 아닌 불투명 리본이 됩니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

이미터 업데이트 그룹 세팅 편집

우선 이미터 업데이트(Emitter Update) 그룹에서 모듈을 편집합니다. 이 행동은 이미터에 적용되며 프레임마다 업데이트됩니다.

리본 렌더러를 추가하고 이미터 업데이트 그룹에서 세팅을 편집해도 리본이 나타나지 않습니다. 문제 없습니다! 이 문서에서 파티클 스폰 섹션까지 진행하면 리본이 나타날 것입니다.

  1. 시스템 개요 에서 이미터 업데이트(Particle Update) 그룹을 클릭하여 선택 패널에서 엽니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  2. 이미터 상태(Emitter State) 모듈을 펼칩니다. 이 모듈은 이미터의 시간과 확장성을 제어합니다. 심플 스프라이트 버스트 템플릿을 사용했기 때문에 라이프 사이클 모드(Life Cycle Mode)셀프(Self) 로 세팅됩니다. 이 세팅은 보통 특정 이미터에 설정된 라이프 사이클 로직을 완벽하게 커스터마이징하기 위해 사용되는데, 해당 이펙트에는 사용할 필요가 없습니다. 드롭다운을 클릭하고 라이프 사이클 모드시스템(System) 으로 세팅합니다. 그러면 시스템에서 라이프 사이클 세팅을 계산할 수 있습니다. 일반적으로 이 세팅은 퍼포먼스를 최적화합니다. 기본적으로 시스템은 5초마다 무한히 루프됩니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  3. 스폰 속도(Spawn Rate) 모듈은 이미터가 활성화되는 동안 지속적으로 파티클을 생성합니다. 이미터 업데이트 에서 더하기 표시 아이콘( + )을 클릭하고 스폰(Spawning) > 스폰 속도(Spawn Rate) 를 선택하여 스폰 속도 모듈을 추가합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  4. 스폰 속도100 으로 설정합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

파티클 스폰 그룹 세팅 편집

다음으로 파티클 스폰(Particle Spawn) 그룹에서 모듈을 편집합니다. 이 행동은 처음 스폰되었을 때 파티클에 적용됩니다.

  1. 시스템 개요 에서 파티클 스폰 그룹을 클릭하여 선택 패널에서 엽니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  2. 파티클 초기화(Initialize Particle) 모듈을 펼칩니다. 휴지통 아이콘을 클릭하여 삭제합니다. 지금은 리본을 초기화할 다른 모듈이 있으므로, 이 모듈은 지금 필요하지 않습니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  3. 리본 초기화(Initialize Ribbon) 모듈은 리본의 초기 파라미터 역할을 한다는 점에서 파티클 초기화와 유사한 기능을 수행합니다. 파티클 스폰 에서 더하기 표시 아이콘( + )을 클릭하고 초기화(Initialize) > 리본 초기화 를 선택합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  4. 포인트 어트리뷰트(Point Attributes) 에서 수명(Lifetime) 파라미터를 찾습니다. 이 파라미터는 파티클이 사라지기 전까지 표시되는 시간을 결정합니다. 수명5 로 설정합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  5. 컬러(Color) 파라미터를 원하는 색상으로 설정할 수 있습니다. RGB 값을 입력하거나 버튼을 눌러 색 선택 툴을 열면 됩니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  6. 질량(Mass) 파라미터를 10 으로 설정합니다. 질량은 리본이 바깥쪽으로 퍼지는 방식과 떨어지는 속도에 영향을 줍니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  7. 리본 어트리뷰트(Ribbon Attributes) 에서 리본 폭(Ribbon Width)10 으로 설정합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  8. 리본을 나선형으로 회전하게 하려면 토러스 위치(Torus Location) 모듈을 추가합니다. 위치 모듈은 파티클이 스폰하는 장소의 모양에 영향을 줍니다. 파티클 스폰 에서 더하기 표시 아이콘( + )을 클릭하고 위치(Location) > 토러스 위치(Torus Location) 를 선택합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  9. 모양(Shape) 에서 토러스 모드(Torus Mode) 드롭다운을 클릭하고 링(Ring) 을 선택합니다. 큰 반경(Large Radius)50 으로 설정합니다. 큰 반경은 기본 링 모양의 크기를 결정합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  10. 분포(Distribution) 에서 토러스 분포 모드(Torus Distribution Mode) 드롭다운을 클릭하고 다이렉트(Direct) 를 선택합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  11. U 위치(U Position) 파라미터는 링 모양에서 위치를 설정합니다. 이미터가 진행되는 동안 링을 따라 파티클을 스폰하려면 이미터 수명(Emitter.Age) 파라미터를 파티클에 연결해야 합니다. 파라미터(Parameters) 패널에서 이미터 어트리뷰트(Emitter Attributes) 섹션을 펼칩니다. 이미터 수명 파라미터를 선택 패널 위로 드래그하면, 파라미터를 사용할 수 있는 필드 주변에 점으로 연결된 녹색 선이 나타납니다. 이미터 수명 파라미터를 U 위치 값에 놓습니다. 리본은 고정 링에서 회전하는 것처럼 보이지만, 다음 단계에서 계속 조정할 수 있습니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  12. 연결에 성공하면 선택 패널의 U 위치 파라미터에 링크 아이콘이 추가된 이미터 수명 이 보일 것입니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  13. 이제 리본에 속도를 추가할 것입니다. 파티클 스폰 에서 더하기 표시 아이콘( + )을 클릭하고 속도(Velocity) > 포인트 속도 추가(Add Velocity from Point) 를 선택합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  14. 속도 세기(Velocity Strength)50 으로 설정합니다. 이제 리본이 나선형으로 움직일 것입니다! 이는 세팅된 위치에서 큰 반경을 중심으로 움직이는 동안, 속도가 리본을 원본 링의 바깥쪽으로 밀어내기 때문입니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

파티클 업데이트 그룹 세팅 편집

이제 파티클 업데이트(Particle Update) 그룹에서 모듈을 편집합니다. 이 행동은 이미터의 파티클에 적용되며 프레임마다 업데이트됩니다.

  1. 시스템 개요 에서 파티클 업데이트 그룹을 클릭하여 선택 패널에서 엽니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  2. 이 이펙트에 단일 컬러가 지정되었으므로 컬러 스케일 조절(Scale Color) 모듈은 필요하지 않습니다. 휴지통 아이콘을 클릭하여 삭제합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  3. 가속 힘(Acceleration Force) 모듈을 추가합니다. 해당 모듈은 나선형으로 움직이는 리본을 아래로 떨어지게 하여 중력을 시뮬레이션합니다. 파티클 업데이트 에서 더하기 표시 아이콘( + )을 클릭하고 힘(Forces) > 가속 힘 을 선택합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  4. 나이아가라는 그룹의 스택 하단에 새 모듈을 추가하므로, '모듈이 종속성을 충족하지 못했습니다'라는 오류 메시지가 표시됩니다. 이는 가속 힘 모듈이 힘과 속도 해결(Solve Forces and Velocity) 모듈 다음에 배치되기 때문입니다. 문제 해결(Fix Issue) 버튼을 눌러 모듈을 이동시켜서 오류를 해결합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

  5. 가속(Acceleration)Z 값을 -200 으로 설정합니다. Z 값이 양수면 리본 나선형이 상승하고, 음수면 포물선 모양을 그리면서 하강합니다.

    이미지를 클릭하면 최대 크기로 볼 수 있습니다.

최종 결과

축하합니다! 나이아가라에서 리본 이펙트를 만들었습니다.

리본 이펙트 최종 결과물