흐름은 Stingray에 내장된 시각적 프로그래밍 시스템입니다. 노드 기반 흐름 도구를 사용하면 게임 플레이 로직을 작성해 게임 표준 내에서 가능한 모든 상호 작용을 결정할 수 있습니다. 흐름을 사용하면 미션 스크립트를 설정하거나, 효과를 트리거하거나, 유닛이 주위에서 이벤트에 반응하는 방식을 정의할 수 있습니다.
Lua 스크립팅 또는 C++ 프로그래밍에 대해 잘 모르는 경우를 대비해 흐름은 이러한 언어의 가장 중요한 부분 중 일부를 액세스 가능한 시각적 양식으로 패키지합니다. Level Flow Editor를 사용해 오브젝트와 이벤트를 함께 시각적으로 연결해 원하는 경험을 작성할 수 있습니다. 가능한 동작 및 상황에 대해 설명하는 스토리를 생성한 것처럼 수준 흐름을 생각합니다. 예를 들어, '캐릭터가 이 트리거를 건드리면 문 오브젝트가 열리고 닫히는 경우'를 설명하는 흐름을 생성할 수 있습니다.
또한 흐름은 Stingray 엔진의 기본 이벤트 허브 역할을 수행합니다. 유닛에 대해 일어날 수 있는 모든 이벤트(물리적 충돌, 애니메이션 트리거 등)가 유닛 흐름으로 전송됩니다. 유닛의 흐름 그래프는 이벤트에 반응하거나 이벤트를 Lua 또는 C++로 전달합니다.
Stingray에는 수준 흐름과 유닛 흐름, 이렇게 두 가지 유형의 흐름이 있습니다. 수준 흐름을 사용하면 수준의 로직을 정의하고 유닛 흐름을 사용하면 특정 오브젝트에 대한 매개변수 및 로직을 정의할 수 있습니다.
Level Flow Editor(Window > Level Flow Editor)는 수준 로드 시 또는 게임 실행 시 유닛 생성, 수준 효과 적용 및 이벤트 트리거를 비롯하여 발생하길 원하는 모든 로직을 처리합니다.
캐릭터, 소품 또는 기타 오브젝트와 같이 지정된 유닛에 관련된 로직을 생성하려면 Unit Editor에서 Unit Flow 탭을 사용합니다. 캐릭터 컨트롤, 소품에 대한 효과 등과 같은 작업 수행 시 유용합니다.
수준 흐름 그래프는 Asset Browser의 동일한 폴더에 수준 파일과 함께 저장되고 유닛 흐름 그래프는 유닛 파일과 함께 저장됩니다.