블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2794)
Unity3D (852)
Programming (478)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (185)
협업 (11)
3DS Max (3)
Game (12)
Utility (68)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (55)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

NGUI에서 초당 터치 횟수 제한을 하려는데 설정 옵션이 없어서

유니티에 있는 StandaloneInputModule.cs 스크립트의 m_InputActionsPerSecond 소스를 보고 그대로 추가함.

 

private float m_fNextAction = 0f;
private float m_fInputActionsPerSecond = 6f; // 초당 최대 액션 횟수

void ComputeNextAction()
{
    m_fNextAction = Time.unscaledTime + (1f / m_fInputActionsPerSecond);
}

void OnEventClick()
{
    DoSomeAction();
}

public void OnUIEventClick()
{
    if (m_fNextAction != 0f && Time.unscaledTime < m_fNextAction)
    {
        Debug.Log("[Skip Click Event] Max Action Per Second");
        return;
    }

    OnEventClick();
    ComputeNextAction();
}

 

[참조]

https://github.com/tenpn/unity3d-ui/blob/master/UnityEngine.UI/EventSystem/InputModules/StandaloneInputModule.cs

 

tenpn/unity3d-ui

Mirror of https://bitbucket.org/Unity-Technologies/ui/ for ease of code search - tenpn/unity3d-ui

github.com

 

반응형
Posted by blueasa
, |