티스토리 뷰
따로 에셋을 쓰지 않고, 자체제작을 했을 때 가장 문제시 되는 것은 사용자가 입력장치를 통해 입력한 값을 찾아내는 것이다.
이 부분에 있어 인터넷에선 두 가지 종류의 방식을 찾아볼 수 있었다.
1. KeyCode 열거형의 value를 모두 탐색해 Input.GetKeyDown과 같은 처리기를 통해 확인한다.
foreach(KeyCode value in System.Enum.GetValues(typeof(KeyCode)))
{
if (Input.GetKeyDown(value))
// 키맵핑 처리
}
2. OnGUI에서 사용가능한, Event.current를 참조해 현재 입력한 keycode를 얻는다.
private OnGUI()
{
if(enable)
{
var keyCode = Event.current.keyCode;
// 키맵핑 처리
}
}
첫 번째 방법은 이벤트가 발생하면 324개의 값으로 이뤄진 KeyCode를 탐색하기에, 성능상 문제도 없고 구현도 간단해 많이 사용된다.
두 번째 방법은 Event.current.keyCode 값을 읽으려면 OnGUI 루프에서 사용해야 하기에, 매 프레임 마다 연산이 아주 조금 늘어나는 문제가 있다. 다만, 이도 아주 극소량이기에 문제 될 이유는 없다.
따라서 그냥 취향과 가독성에 따라 마음 편히 개발하고 넘기는 것이 정신건강에 이롭다.
'개발 > 유니티3D' 카테고리의 다른 글
| [Unity] URP 7.x -> 10.x 로 올릴때 커스텀 라이팅 주의사항 (0) | 2021.10.30 |
|---|---|
| [UI] Key Mapping 방법 (신 버전 입력체계) (0) | 2021.02.08 |
| [Unity] 귀차니즘이 이끄는 유니티 Sprite Packing Editor (0) | 2020.12.24 |
| [Unity] 유니티 타임라인(Timeline) Pause 예외 상황 (0) | 2020.12.24 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 모션블러
- 컴네
- unity
- 이종식
- Substance Designer
- 정리
- HLSL
- shader
- Substance
- MotionBlur
- 인하대
- Unreal
- 법선
- 유니티 셰이더
- 이미지 효과
- Noise
- normal
- 네트워크
- ImageEffect
- 유니티
- 컴퓨터네트워크
- 블러효과
- 소공
- designer
- 소프트웨어공학
- ue4
- #Shader #셰이더 #Tessellator #눈발자국 #발자국
- 컴퓨터구조론
- 이미지이펙트
- 노영태
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
글 보관함