요약: 이 페이지는 MMTools가 무엇인지 그리고 그것을 어떻게 사용하는지 설명합니다.

테이블 내용
  • MMTools란 무엇인가요?
  • MMTools 레시피
        -  씬에서 객체를 흔들리게 하는 방법은?

        -   MMHealthBar 컴포넌트를 사용하여 자동으로 체력 바를 그리는 방법은?

        -   MMBlink 컴포넌트를 설정하는 방법

 

MMTools란 무엇인가요?

MMTools는 대부분, 또는 모든 MoreMountains 에셋에서 사용되는 헬퍼와 시스템 모음입니다.

이들은 Feel에 포함되어 있으며, 원하는 프로젝트에서 자유롭게 사용할 수 있습니다. 주저하지 말고 탐색하고 실험해보세요. 모든 도구는 API 문서에 자세히 주석과 설명이 포함되어 있습니다.

MMTools에 대한 추가 문서가 곧 제공될 예정이지만, 이 비디오는 그 내용 중 일부에 대한 첫 번째 소개를 제공할 것입니다:

 

 

 

MMTools 레시피

씬에서 객체를 흔들리게 하는 방법은?

  1. Unity 2022.3.23f1 (또는 그 이상)에서 새 프로젝트를 생성하고 패키지 관리자에서 Feel v4.1.2 (또는 그 이상)을 가져옵니다.
  2. 새 씬에서 큐브를 생성합니다.
  3. 큐브에 MMWiggle 컴포넌트를 추가합니다.
  4. Position 체크박스를 체크하고, Wiggle Type을 Noise로 설정한 후, 플레이를 누르면 이제 흔들리는 큐브를 볼 수 있습니다.
  5. 이제 주파수, 진폭을 증가시키거나 쉬프트를 추가하여 (여러 개의 이러한 요소가 있는 경우 유용) 다른 옵션들을 가지고 놀 수 있습니다

 

 

 

 

MMHealthBar 컴포넌트를 사용하여 자동으로 체력 바를 그리는 방법은?

  1. Unity 2022.3.23f1 (또는 그 이상)에서 새 프로젝트를 생성하고 패키지 관리자에서 Feel v4.1.2 (또는 그 이상)을 가져옵니다.
  2. 새 빈 씬을 만듭니다.
  3. 큐브를 생성하고 위치를 0,0,0으로 설정합니다.
  4. 큐브에 MMHealthBar 컴포넌트를 추가합니다.
  5. 플레이를 누르면, 큐브 위에 체력 바가 그려지는 것을 볼 수 있습니다. 이제 MMHealthBar와 상호작용하고 업데이트하려면, 데이터를 전달하여 업데이트해야 합니다. 이를 위해 스크립트를 사용합니다.
  6. 새 C# 클래스를 생성하고, 이름을 TestMMHealthBar로 설정한 후 다음 코드를 붙여넣습니다:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using MoreMountains.Tools;

/// <summary>
/// MMHealthBar 컴포넌트와 상호작용하고 테스트하기 위한 간단한 클래스
/// 사용하려면, MMHealthBar가 있는 객체에 추가하고, 런타임에 CurrentHealth 슬라이더를 이동시키고, Test 버튼을 눌러 바를 업데이트합니다.
/// </summary>
public class TestMMHealthBar : MonoBehaviour
{
    [Range(0f, 100f)]
    public float CurrentHealth = 50f;

    protected float _minimumHealth = 0f;
    protected float _maximumHealth = 100f;
    protected MMHealthBar _targetHealthBar;

    [MMInspectorButton("Test")] public bool TestButton;

    protected virtual void Awake()
    {
        _targetHealthBar = this.gameObject.GetComponent<MMHealthBar>();
    }

    public virtual void Test()
    {
        if (_targetHealthBar != null)
        {
            _targetHealthBar.UpdateBar(CurrentHealth, _minimumHealth, _maximumHealth, true);    
        }
    }
}
  1. 이 컴포넌트를 큐브에 추가하고, 플레이를 누른 후, 런타임에 인스펙터에서 CurrentHealth 슬라이더를 이동시킵니다. 매번 Test 버튼을 누를 때마다 체력 바가 업데이트됩니다.

 

 

MMBlink 컴포넌트를 설정하는 방법

 

MMBlink 컴포넌트를 사용하면 객체에 깜박이는 시퀀스를 정의할 수 있으며, MMBlink 피드백을 사용하여 이를 트리거할 수 있습니다. 설정하는 방법은 다음과 같습니다:

  1. Unity 2022.3.23f1 (또는 그 이상)에서 새 프로젝트를 생성하고 패키지 관리자에서 Feel v4.1.2 (또는 그 이상)을 가져옵니다.
  2. 새 씬에서 새 스프라이트 렌더러를 생성하고, 스프라이트를 "button-A"(또는 원하는 스프라이트)로 설정합니다.
  3. 스프라이트에 MMBlink 컴포넌트를 추가하고, Method를 Material Alpha로 설정한 다음, 스프라이트 렌더러를 MMBlink의 TargetRenderer 슬롯에 드래그합니다.
  4. 깜박임 시퀀스를 정의하기 위해 Phases 배열의 크기를 2로 설정합니다.
  5. 배열의 Element 0에서 PhaseDuration을 1로, OffDuration을 0.3으로, OnDuration을 0.7로 설정합니다.
  6. 배열의 Element 1에서 PhaseDuration을 0.5로, OffDuration을 0.2로, OnDuration을 0.3으로 설정합니다.
  7. Repeat Count를 -1로 설정하여 영원히 반복되도록 합니다.
  8. 플레이를 누르면 스프라이트가 반복적인 패턴으로 깜박입니다.

MMF Player로 이를 트리거하려면:

  1. MMBlink의 Blinking을 체크 해제하고, RepeatCount를 5로 설정합니다.
  2. 새 빈 게임 오브젝트를 생성하고, 이름을 MyTestFeedbacks로 설정한 다음, MMF Player를 추가합니다.
  3. MMBlink 피드백(renderer > MMBlink)을 추가하고, MMBlink 객체를 TargetBlink 슬롯에 드래그합니다.
  4. 에디터에서 플레이를 누른 다음, MyTestFeedbacks의 인스펙터에서 테스트 버튼을 누르면 스프라이트가 5번의 시퀀스 동안 깜박입니다.

MMBlink 컴포넌트는 객체를 활성화/비활성화하거나, 알파, 방출, 또는 재질 셰이더의 모든 float 값을 재생하여 객체를 깜박이게 하는 다양한 옵션을 제공합니다. 또한 이러한 값을 lerp할 수도 있습니다(이를 테스트하려면 Element0과 Element1의 On/Off Lerp Durations을 0.5로 설정).

 

 

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

MMAudioAnalyzer  (1) 2024.07.14
MMSoundManager  (0) 2024.07.14
Tweens and events  (0) 2024.07.13
Nice Vibrations  (0) 2024.07.13
Recipes  (0) 2024.07.11

+ Recent posts