요약: 이 페이지는 Feel에 포함된 다양한 데모를 다룹니다.

테이블 내용
  • 소개
  • MMFeedbacks
        -  MMF_PlayerDemo

  • Feel
        -   Snake

        -   Barbarians

        -   Blob

        -   Bounce

        -   Brass

        -   Cards UI

        -   Duck

        -   GettingStartedTutorial

        -   Letters

        -   MMProgressBar

        -   MMSequencer

        -   MMSquashAndStretch

        -   ParallaxUI

        -   Tactical

        -   Templates

        -   Toaster

        -   Wheel

        -   MMSoundManager Track Control

        -   MMSoundManager Playlist Manager

  • Feel HDRP
        -   Falcon

  • Feel URP
        -   Strike

  • Nice Vibrations
        -   Nice Vibrations Demos

  • MMTools
        -   MMSceneLoadingDemoScene

        -   MMBezierLineRenderer

        -   MMControlsDemo

        -   MMDebugMenu

        -   MMGhostCameraDemo

        -   MMFollowTargetDemo

        -   MMGizmoDemo

        -   MMObservableDemo

        -   MMRadioDemo

        -   MMPrototypeTexturesDemo

        -   MMTweenPlotter

        -   Other MMTools

 

소개

Feel에는 피드백 및 기타 시스템을 사용하여 게임의 느낌을 향상시키고, 게임 전반에 걸쳐 더 나은 신호와 피드백을 구현하는 다양한 방법을 보여주는 여러 데모가 포함되어 있습니다. 대부분의 데모는 에셋의 루트에 있는 FeelDemos 폴더에서 찾을 수 있으며, MMFeedbacks 데모는 MMFeedbacks 폴더에, NiceVibrations 데모는 동일한 이름의 폴더에 있습니다. MMFeedbacks 데모의 경우, 씬에 피드백이 있는 루트 오브젝트와 없는 루트 오브젝트가 자주 있습니다. 이를 통해 동일한 상호작용을 플레이하고 Feel이 어떻게 향상시키는지 확인할 수 있습니다.

대부분의 MMTools는 데모가 없지만(아직은), 더 많은 데모가 곧 추가될 예정입니다. 현재 MMTools 데모 목록은 아래에서 확인할 수 있습니다. 특정 MMTools 기능에 대한 데모를 요청하려면 언제든지 연락 양식을 사용하세요!

특정 데모를 찾고 있다면, 프로젝트 패널 검색 창에 이름을 입력하여 항상 찾을 수 있다는 점을 참고하세요.

 

MMFeedbacks

MMF_PlayerDemo

이 데모는 가능한 한 많은 피드백을 보여줍니다. 왼쪽 목록에서 150개 이상의 피드백을 거의 모두 재생할 수 있습니다. "이 피드백은 어떻게 작동하나요?"라는 궁금증이 생길 때 좋은 참고 자료가 됩니다. 에디터에서 UI > Canvas > FeedbackScrollRect > ScrollRectContent 노드를 펼치면 긴 버튼 목록에 접근할 수 있습니다. 버튼을 펼치면 버튼을 눌렀을 때 재생되는 특정 MMF_Player가 포함된 MMF_Player 노드를 찾을 수 있습니다. 참고 자료로서 이러한 내용을 주저하지 말고 확인해보세요!

 

Feel

Snake

 

Snake의 완벽한 게임은 다양한 레벨에 피드백을 추가하는 방법을 참고할 수 있도록 제공됩니다. "실제" 클래스의 예시와 함께 제공됩니다. 이 매우 미니멀한 버전의 Snake에서는 한 방향으로만 회전할 수 있고, 패배할 수 없으며, 자신을 먹으면 몸의 일부를 잃습니다. Scripts 폴더에서 음식 생성과 뱀의 움직임을 처리하는 모든 스크립트와 가능한 모든 레벨에서 사용되는 피드백을 찾을 수 있습니다.

 

 

Barbarians

 

이 작은 씬은 전투 피드백과 데미지 텍스트에 중점을 둡니다. 단 2개의 스크립트로 구동됩니다:

  • Barbarian: 이 스크립트는 플레이어의 행동을 처리합니다. 입력을 감지하고, 입력이 감지되면 타겟을 스캔하여 캐릭터를 각 타겟으로 이동시킵니다. 공격 시퀀스가 시작될 때 글로벌 MMF_Player를 트리거하고, 각 "히트"마다 개별 피드백을 제공합니다.
  • BarbarianEnemy: 적을 처리하는 간단한 스크립트로, 데미지를 받고 데미지 MMF_Player를 트리거합니다.

 

Blob

 

이 데모는 "올인원" 피드백의 예를 보여줍니다. 시스템이 원래 설계된 목적은 아니지만, 여러 개의 원자 피드백으로 나누는 것이 유지 관리가 더 쉽습니다. FeelBlob/Feedbacks/MoveFeedback 아래에서 블롭이 "움직일 때" 모든 효과를 구동하는 피드백을 찾을 수 있습니다.

 

Bounce 

 

이 간단한 씬에서는 스페이스바를 눌러 캐릭터를 점프시킬 수 있습니다. 데모 씬에는 피드백이 있는 버전없는 버전 두 가지가 포함되어 있습니다. 계층 패널에서 SceneWithFeedbacks 및 SceneWithoutFeedbacks 노드를 활성화/비활성화하여 피드백을 추가하는 것이 얼마나 큰 차이를 만드는지 확인할 수 있습니다. 피드백이 있는 버전에서는 점프가 여러 피드백으로 나뉘어 있습니다: 충전, 점프, 착지. 이는 피드백을 구현할 때 권장되는 접근 방식이며, 가장 많은 제어를 제공합니다. 논리와의 의존성을 줄여주며, 게임의 중력을 변경하거나 점프를 아날로그 방식으로 만들기로 결정하더라도, 피드백의 타이밍을 조정할 필요가 없습니다.

 

Brass

 

이 데모는 Feel과 그 시스템, 특히 MMAudioAnalyzer를 사용하여 소리와 동기화하는 다양한 방법에 중점을 둡니다. 이 데모에서는 배경 음악이 재생되며, 음악의 리듬에 따라 땅이 움직이고, 큐브가 실시간으로 스펙트럼 비주얼라이저를 형성하며, 오디오 스펙트럼의 특정 부분이 미리 설정된 임계값을 초과할 때 이벤트와 피드백이 발생합니다. 전체 씬은 음악의 비트에 맞춰 동적으로 변경되며, 실시간으로 오디오를 변경하거나 배경 트랙을 원하는 트랙으로 교체할 수 있어 무한한 가능성을 제공합니다. MMAudioAnalyzer에 대한 자세한 내용은 문서의 전용 섹션에서 확인할 수 있습니다.

 

Cards UI

 

이 사용자 인터페이스 중심의 데모는 카드 스택을 사용하여 카드를 배포하고, 하나씩 공개하고, 다시 뒤집고, 다시 스택할 수 있습니다. 이 모든 것은 단 두 개의 MMF_Players를 사용하여 수행됩니다. 하나는 카드를 배포/스택하는 용도로, 다른 하나는 각 카드를 공개/숨기는 용도로 사용됩니다. 두 MMF_Players는 앞으로 재생되고 다시 뒤로 재생되도록 설정되어 있으며, 일부 피드백은 전체 시퀀스가 앞으로 재생되거나 뒤로 재생될 때만 실행되도록 조건이 설정되어 있습니다. 이러한 설정은 주로 기능을 시연하기 위한 것으로, 배포/스택을 두 개의 전용 MMF_Players로 분리하는 것이 더 쉽고 현명했을 것입니다. 하지만 이 설정이 여러분에게 아이디어를 제공하기를 바랍니다.

 

Duck

 

이번에는 2D로 된 또 다른 "점프" 데모입니다. FeelDuckJumpStartFeedback과 FeelDuckLandingFeedback의 두 가지 주요 피드백을 중심으로 구성됩니다. Duck 클래스에서 피드백을 자신의 캐릭터 컨트롤러 클래스에 통합하는 방법의 예를 확인할 수 있습니다.

 

GettingStartedTutorial

 

이 데모는 시작 튜토리얼의 예상 결과물입니다. 기본 피드백 설정과 게임의 느낌을 향상시키는 데 사용할 수 있는 몇 가지 도구를 다룹니다.

 

Letters

 

이 데모는 처음에는 의도하지 않았던 시스템과 상호 작용하기 위해 피드백을 사용하는 방법을 보여줍니다. 이 경우, 피드백은 Unity의 2D 뼈대 시스템과 상호 작용하는 데 사용됩니다(이 데모가 작동하려면 2D 뼈대 패키지를 설치해야 합니다). 애니메이션이 없고, 피드백은 단순히 뼈대의 회전과 크기에 영향을 주어 FEEL 글자에 생명을 불어넣습니다.

 

MMProgressBar

 

이 데모는 MMProgressBar 클래스를 중심으로 구성되며, 이를 사용하여 모든 종류의 진행 바를 만들고 이를 멋지게 만드는 방법을 보여줍니다.

 

MMSequencer

 

이 데모는 MMSequencer 시스템과 MMF_Player의 조합을 보여줍니다. 기본적으로 시퀀서는 타임라인에서 항목을 순서대로 배치하고 비트에 맞춰 재생하는 방법입니다. 이를 사용하여 소리를 재생할 수 있을 뿐만 아니라 원하는 이벤트도 재생할 수 있습니다. MMFeedbacksSequencer(MMSequencer의 특정 하위 유형)는 각 시퀀스 트랙에 피드백을 직접 바인딩할 수 있게 해줍니다. 이 씬을 즐기려면 Sequencers 노드를 펼치고 MMFeedbacksSequencer 오브젝트를 선택한 다음 재생 버튼을 누르고, 인스펙터에서 "StartPlaying" 버튼을 누르세요(이것은 해당 씬에서 자동으로 시작되도록 스페이스를 누르는 것과 같습니다). 그런 다음 트랙 슬롯을 클릭하여 패턴을 변경할 수 있습니다. 색이 있는 슬롯은 해당 트랙의 피드백이 비트에 도달할 때 재생된다는 것을 의미합니다.

 

MMSquashAndStretch

 

이 데모는 MMSquashAndStretch 컴포넌트의 다양한 사용 예를 보여줍니다. 이를 통해 객체에 주스있고 탄력 있는 동작을 추가하고, 이동할 때 질량감을 유지하면서 크기를 조절할 수 있습니다.

 

ParallaxUI

 

이 데모는 MMParallaxUI 컴포넌트를 사용하여 마우스, 자이로스코프 또는 스크립트로 제어되는 다양한 레이어의 패럴랙스가 있는 패럴랙스 UI 뷰를 빠르게 설정하는 방법을 보여줍니다.

 

Tactical

 

떠다니는 데미지 텍스트의 빠른 발사를 예로 들 수 있습니다. 데미지 텍스트 피드백에는 MMFloatingTextSpawner가 필요하며, 이 씬에서는 Managers 노드 아래에 각각 하나씩 있는 세 가지 다른 스포너를 찾을 수 있습니다. 각 Tactical 슈터는 ShootFeedbacks와 연결되어 있으며, 각각(다른 것들 중에서) 떠다니는 텍스트 피드백을 트리거합니다. 이들 각각은 특정 채널을 대상으로 하며, 일치하는 채널을 가진 세 가지 MMFloatingTextSpawners 중 하나에 의해 수신됩니다.

  1. 첫 번째 스포너는 매우 기본적인 떠다니는 텍스트를 생성합니다.
  2. 두 번째 스포너는 피드백을 통해 전원이 공급되는 텍스트를 생성하며, 생성된 후 MMF_Player를 재생하여 텍스트의 회전, 위치, 색상 및 간격을 애니메이션화합니다.
  3. 세 번째 스포너는 TextMeshPro 떠다니는 텍스트를 생성합니다.

 

Templates

 

Feel/FeelDemos 폴더에서 FeelTemplatesDemo.unitypackage를 찾을 수 있습니다. 이를 추출하고 가져오면 두 개의 새로운 데모에 접근할 수 있습니다: FeelTemplatesDamage와 FeelTemplatesGuns. 이들은 MMF_Player 프리셋의 템플릿으로 프리팹을 사용하는 방법을 보여줍니다. 일부 종속성이 설치되지 않은 경우 Unity가 오류 메시지를 표시하므로, .unitypackage로 제공됩니다.

 

Toaster

 

Toaster 데모 씬은 화면 흔들림을 트리거하는 다양한 방법을 보여주는 데 중점을 둡니다. 메뉴에서 20개 이상의 다른 피드백을 재생할 수 있으며, 각각 다양한 방식으로 화면을 흔들고, 다른 요소들(임펄스, 카메라 위치, 회전, 줌, 포스트 프로세싱, 렌더 텍스처 등)에 작용합니다. 화면 흔들림에만 집중하고 싶다면 토스터 자체를 비활성화할 수도 있습니다.

 

Wheel

 

피드백은 일반적으로 "한 번" 이벤트(소리가 재생되거나, 햅틱 피드백, 무언가를 활성화하는 등)를 위해 설계되고 사용됩니다. 이 데모는 피드백을 사용하여 액션이 시작될 때 특정 상태로 전환하고, 해당 상태에서 벗어날 때 다시 되돌리는 방법을 보여줍니다. 이는 보다 "지속적/중단할 때까지" 효과를 제공합니다. TurnFeedbacksTurnStopFeedbacks를 살펴보면 그 작동 방식을 확인할 수 있습니다.

 

MMSoundManager Track Control

FeelMMSoundManagerTrackControl 데모 씬

이 데모는 MMSoundManager를 통해 사용할 수 있는 일부 오디오 트랙 제어 기능을 보여줍니다. 개별 트랙에서 사운드를 재생하고, 볼륨을 제어하며, 트랙을 음소거/음소거 해제하고, 페이드 인 또는 페이드 아웃할 수 있습니다.

 

MMSoundManager Playlist Manager

FeelMMSoundManagerPlaylistManager 데모 씬

이 데모는 다양한 노래 플레이리스트를 순서대로 또는 다양한 랜덤 모드로 재생하고, 이를 완전히 제어할 수 있는 고급 플레이리스트 시스템의 일부 기능을 보여줍니다.

 

Feel HDRP

Falcon

 

대부분의 피드백은 모든 렌더 파이프라인에서 동일하게 작동하지만, HDRP는 고유한 볼륨 시스템을 사용합니다. 이 데모는 피드백을 사용하여 HDRP의 볼륨 오버라이드를 타겟팅하고 제어하는 방법을 보여줍니다. 또한 스페이스바를 누르면 사막을 드라이브할 수 있습니다.

Feel URP

Strike

 

버전 2.3에 도입된 이 데모는 미니 볼링 게임을 특징으로 합니다(스페이스바를 눌러 공을 던질 수 있습니다). 점수와 모든 것이 완비되어 있으며, 원하는 경우 App Store에서 무료로 다운로드할 수 있습니다. 또한 URP 볼륨 오버라이드를 조종하는 다양한 피드백을 시연하는 컨트롤도 제공합니다.

Nice Vibrations

Nice Vibrations Demos

이 데모는 세로 모드에서 가장 잘 보이며, 다양한 방법으로 햅틱(“더 나은” 진동)을 재생할 수 있습니다. 에디터에서 실험해 볼 수 있으며, 게임패드에서 럼블 진동을 얻거나 iOS 또는 Android에서 빌드하여 테스트할 수 있습니다. 또는 App StoreGoogle Play에서 사용할 수 있는 버전을 다운로드할 수도 있습니다. Nice Vibrations의 기능에 대해 더 알고 싶다면 전용 웹사이트문서를 참고하여 작동 방식과 사용 방법을 확인하세요.

MMTools

MMSceneLoadingDemoScene

 이 데모는 두 개의 씬(MMSceneLoadingDemoSceneAMMSceneLoadingDemoSceneB)으로 구성됩니다. 이를 작동시키려면 빌드 설정에 씬을 추가해야 합니다(파일 > 빌드 설정 > 두 씬을 "Scenes in Build" 섹션으로 드래그 앤 드롭). 이는 다른 로딩 모드를 사용하여 한 씬에서 다른 씬으로 이동하는 LoadScene 피드백을 사용하는 방법을 보여줍니다.

MMBezierLineRenderer

 

이 데모는 일반 LineRenderer에 추가된 MMBezierLineRenderer를 사용하여 이를 베지어 곡선으로 변환하는 방법을 보여줍니다. 그런 다음 핸들을 이동하여 곡선을 수정할 수 있습니다. 이 데모에서는 MMWiggle 컴포넌트가 핸들에 사용되어 자동으로 이동하지만, 이는 어떤 스크립트에 의해서도 구동될 수 있습니다. 또한 wiggle이 없는 라인 렌더러 버전도 찾을 수 있으며, 실행 중에 해당 버전의 핸들을 수동으로 이동할 수 있습니다.

MMControlsDemo

이 씬은 여러 모바일 컨트롤 헬퍼와 이를 설정하는 방법을 보여줍니다.

 

MMDebugMenu

 

이 씬에서는 콘솔 메뉴를 설정하는 방법과 게임 데이터의 실시간 수정에 사용하는 방법을 보여줍니다.

MMGhostCameraDemo

 

이 씬은 MMGhostCamera 컴포넌트를 시연합니다(해당 씬의 메인 카메라에 있음). 런타임에 화살표 키나 게임패드의 스틱으로 카메라를 제어하고, 키를 눌러 켜거나 끄며, 타임스케일을 수정할 수 있습니다. 모든 설정에 대해 민감도와 기타 설정을 완전히 제어할 수 있으며, 구 입력 시스템과 신 입력 시스템을 모두 지원합니다.

MMFollowTargetDemo

 

 

이 데모는 MMFollowTarget과 MMSpring이라는 두 가지 움직임 관련 헬퍼를 일반적인 보간과 비교하여 시연합니다. MMFollowTarget은 매우 부드러운 추적 동작을 제공하며, MMSpring은 간단한 추적 요소에 많은 생동감을 더할 수 있습니다.

MMGizmoDemo

MMGizmoDemo 씬

 

이 데모는 MMGizmo 컴포넌트를 사용하여 객체에 쉽게 기즈모를 표시하는 다양한 방법을 보여줍니다. 이 컴포넌트는 객체의 위치나 콜라이더를 표시하는 기즈모와 선택적인 텍스트를 표시할 수 있습니다. 또한, 관련된 속성 값을 표시하는 데 사용할 수 있어 매우 유용한 디버그 도구가 됩니다. 이 기즈모들은 씬 뷰와 게임 뷰에서 모두 표시할 수 있습니다. 어떤 것을 선택하든 기즈모가 활성화되어 있는지 확인하세요!

MMObservableDemo

이 씬은 MMTools에서 관찰 가능한 패턴 구현을 시연합니다. MMObservable 설정을 테스트하려면 씬을 재생하고 씬 뷰에서 Subject 객체를 선택한 다음 X 축을 따라 이동하세요. 두 개의 구체는 관찰자 컴포넌트를 가지고 있으며, 큐브의 X 위치가 변경될 때 통지받습니다. 변경이 발생하면 구체는 자신의 Y 위치를 비례적으로 수정합니다. 이는 Update 루프 없이 이루어지며, 큐브의 X 위치가 변경되지 않으면 비용이 들지 않습니다.

MMRadioDemo

MMRadio 시스템의 데모입니다. 자세한 내용을 알고 싶다면 문서의 전용 섹션을 읽는 것이 좋지만, 간단히 말해 하나의 객체가 값을 여러 수신기에 브로드캐스트하고, 수신기들은 그 값을 기반으로 동작할 수 있게 하는 시스템입니다. 이 데모에서는 TestBroadcaster 객체가 MMRadioSignalGenerator를 사용하여 신호를 생성하고, 모든 큐브는 그 신호를 받아 Y 위치를 업데이트합니다.

MMPrototypeTexturesDemo

MMPrototypeTexturesDemo 씬

 

MMTools에는 프로토타이핑 텍스처가 여러 개 포함되어 있어 씬을 빠르게 깔끔하게 보이도록 할 수 있습니다. 이 데모 씬에서는 그 텍스처들을 모두 보여줍니다.

MMTweenPlotter

 

MMTween 시스템은 다양한 트윈 곡선을 사용하여 시간을 두고 값을 애니메이트할 수 있게 해줍니다. 이 데모는 각 곡선이 어떻게 느껴지는지 보여줍니다. MMTween 시스템은 많은 MM 컴포넌트에서 사용되며(대부분의 피드백이 이를 사용함), 시각적 참고 자료로 유용합니다. 이 데모는 HTML 형식으로도 제공됩니다.

기타 MMTools

MMTools에는 다양한 용도의 스크립트가 많이 있습니다. 대부분은 주석이 잘 달려 있고 보통은 자체 설명적이지만, 더 많은 데모가 필요할 수 있습니다. 특정 도구에 대한 데모를 원한다면 연락 양식을 사용하여 언급하는 것을 주저하지 마세요. 더 많은 데모가 추가될 예정이며, 특정 주제에 대한 요청이 많을수록 더 빨리 릴리스에 포함될 것입니다!

'유니티 에셋 > Feel' 카테고리의 다른 글

Core concepts(핵심 개념)  (0) 2024.07.08
Getting started  (0) 2024.07.06
에셋의 내용물  (0) 2024.07.06
URP, HDRP 및 렌더 파이프라인  (0) 2024.07.06
Feel 설치 방법  (0) 2024.07.06

+ Recent posts