본문 바로가기
■ 로블록스 개발 노트/개발일지

[로블록스]#6 - 입력 처리 & 카메라 제어

by Popbox 2025. 12. 30.

[로블록스]#6 - 입력 처리 & 카메라 제어

Unity 개발자에게 입력 처리와 카메라는 익숙한 영역이다.
하지만 로블록스에서는 어디서 처리하느냐가 전부다.
이번 글에서는 입력과 카메라를 LocalScript 기준으로 정리한다.


 

 

 

1. 입력은 왜 LocalScript에서만 처리할까?

Unity에서는 입력을 어디서 처리해도 큰 제약이 없다.

하지만 로블록스에서는 다르다.

입력은 플레이어 개인 정보다.
그래서 클라이언트(LocalScript)에서만 처리한다.

서버는 “결과”만 받아 판단하고, 입력 그 자체는 관여하지 않는다.

 

 

 


2. 입력을 처리할 수 있는 위치

LocalScript는 아무 곳에서나 동작하지 않는다.

  • StarterPlayerScripts
  • StarterCharacterScripts
  • StarterGui

이 위치에 있는 LocalScript만 키보드, 마우스, 터치 입력을 받을 수 있다.

Workspace에 있는 LocalScript
입력을 받지 못한다.

 

 

 


3. UserInputService 기본 사용법

로블록스에서 입력을 받을 때 가장 기본이 되는 서비스는 UserInputService다.

local UIS = game:GetService("UserInputService")

UIS.InputBegan:Connect(function(input, gameProcessed)
    if gameProcessed then return end

    if input.KeyCode == Enum.KeyCode.Space then
        print("점프 입력")
    end
end)
    

Unity의 Input.GetKeyDown과 비슷하지만, UI가 입력을 소비했는지를 항상 확인해야 한다.

 

 

 


4. 모바일 입력은 자동으로 통합된다

로블록스의 큰 장점 중 하나는 모바일 입력을 따로 나누지 않아도 된다는 점이다.

  • 키보드
  • 마우스
  • 터치

이 모든 입력이 UserInputService로 통합된다.

플랫폼 분기 코드가 거의 필요 없다.

 

 

 


5. 카메라는 “직접 만들지 않는다”

Unity 개발자는 카메라를 직접 제어하는 데 익숙하다.

하지만 로블록스에서는 기본 카메라 시스템을 최대한 존중하는 게 정답이다.

  • CameraType : CameraType으로 동작 방식이 결정된다.
  • CameraSubject : Unity Cinemachine의 FollowTarget 느낌
  • CameraMode : Unity의 projection 설정

대부분의 경우, CameraSubject를 Humanoid로 두는 것이 가장 안정적이다.

구분 Unity Roblox
소유자 Scene 플레이어
개수 여러 개 가능 플레이어당 1개
조작 위치 서버/클라 구분 없음 LocalScript만 가능

 

 

 


6. 1인칭 / 3인칭 전환은 이렇게 생각하자

로블록스에서는 1인칭과 3인칭 전환도 이미 준비돼 있다.

  • CameraMode = LockFirstPerson
  • CameraMode = Classic

Unity처럼 카메라를 새로 만드는 대신, 모드를 전환하는 방식을 사용한다.

“덜 만드는 게 더 안정적이다”

 

 

 


7. ⚠️ Unity 개발자가 가장 많이 하는 실수

  • 입력을 서버 Script에서 처리하려 한다
  • 카메라를 Workspace에 새로 만든다
  • 모든 움직임을 직접 계산하려 한다
  • LocalScript 위치를 신경 쓰지 않는다
  • 여러 Camera를 만들어 전환하려 함(Cinemachine....)
  • Update/LateUpdate 개념을 사용하려 함

로블록스에서는 이미 만들어진 흐름을 거스르지 않는 것이 중요하다.

 

 

 


8. 입력 & 카메라 핵심 요약

  • 입력은 LocalScript에서만 처리
  • Starter 위치를 반드시 지킬 것
  • UserInputService가 기본
  • 카메라는 최대한 기본 구조 활용

 

 

 


9. 다음 글 예고

다음 글에서는 UI 시스템(ScreenGui)을 다룰 예정이다.

버튼, 텍스트, 프레임을 어떻게 구성하고, Unity UI와 어떤 차이가 있는지 정리해본다.

로블록스 게임의 절반은 UI다


반응형

댓글