inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[켠김에 출시까지] 유니티 방치형 키우기 게임 (M1 + C1)

6강 ObjectManager에서 UI_Joystick

해결된 질문

247

고만재

작성한 질문수 4

0

UI_Joystick 컴포넌트를 학습하는 도중에 궁금사항이 생겨 질문 드립니다.

강의 중에 처음에 RawImage가 달리지 않은 오브젝트를 이용할때는 클릭했을때 조이스틱의 위치가

변경되는 범위가 조이스틱 오브젝트가 있는 부분에서만 되었다가

RawImage가 추후 부착된 프리펩을 이용했을때는 RawImage의 범위에 속하는곳에 어느곳에

터치를 해도 조이스틱 위치가 이동이 되었는데.

유니티를 아직 잘 다루지 못해서 추측해서 이해를 했는데 맞는지 한번 확인 부탁 드리겠습니다.

 

public class UI_Joystick : UI_Base
{
    enum GameObjects
    {
        JoystickBG,
        JoystickCursor,
    }

    private GameObject _background;
    private GameObject _cursor;
    private float _radius;
    private Vector2 _touchPos;

    public override bool Init()
    {
...

        gameObject.BindEvent(OnPointerDown, type: Define.EUIEvent.PointerDown);
        gameObject.BindEvent(OnPointerUp, type: Define.EUIEvent.PointerUp);
        gameObject.BindEvent(OnDrag, type: Define.EUIEvent.Drag);

        return true;
    }

해당 스크립트에서 BindEvent로 연결해준 부분이 GetObject로 달아준 하위 오브젝트가 아니라

컴포넌트가 달린 UI_Joystick 캔버스 자체에 이벤트를 달아주어서

캔버스 자체에는 Raycast Target이 없기 클릭을 해도 이벤트 인식이 안되서
Raycast Target이 활성화된 하위 오브젝트를 눌렀을때 이벤트가 발생이 되어서 처음에는 조이스틱 부에서만
작동이 됬던것이 맞는가요?

그게 맞다면 오브젝트 자체에 이벤트를 달아주게 되면, 그리고 그 오브젝트에 이벤트를 인식하는 Raycast Target가 비활성화 되어있거나 관련된 컴포넌트가 없다면, 그 이벤트가 달린 오브젝트의 모든 하위 오브젝트에 Raycast Target 상태를 확인해서 활성화 되어 있다면 하위 오브젝트에 모두 이벤트가 동작되게 되는것 인가요?

C# unity MMORPG

답변 1

1

Rookiss

오브젝트에 이벤트를 단다고 당장 발동하는 것이 아니고,
우리가 클릭한 위치에 UI가 있어야 발동을 합니다.
EventSystem이 레이저는 쏘는 역할을 한다면
그것을 받아주는 UI가 있어야, 이벤트 함수를 호출하기 때문이죠.
이 부분은 어차피 유니티 내부 코드라서 실험을 통해 확인하시면 됩니다.

0

고만재

감사합니다.

수업질문은 아닌데요^^

0

59

1

UI 자동화 관련 문의입니다.

0

107

1

9주차 npc 생성 안되는 이슈. Custom Tile 깨짐

0

107

1

44강 Stage 분할 Cannot Find 에러 관련

0

80

1

8주차 ExtralCell 추가됐을 때 서로 공격 못하는 상황 공유드립니다.

0

119

1

rider에서 new editor config 설정

0

172

1

Reward csv 파일이 없고 EquipmentChart는 열이름 문제로 업로드가 안됩니다.

1

154

2

강의 영상코드랑 강의 자료 코드가 다릅니다.

0

159

2

M1의 어드레서블 리소스 관리 방식에 대하여 질문있습니다.

0

134

1

M1의 리소스매니져 클리어 타이밍에 대해 여쭤보고싶습니다.

0

94

1

C1 일정은 어떻게 되는건가요?

0

218

3

게임 클라이언트 개발에서 테스트 코드 작성이 도움이 될까요?

0

185

1

Stateless서버에서의 유저인스턴스

0

176

2

섹션 4(SaveData, HeroList, ItemData, ItemHolder)에 일부 항목들에 대한 재생오류 해결 부탁드립니다.

0

166

1

첫 강의 manager 가 재생이 안됩니다.

0

302

5

T2는 어떻게된걸까요?

0

434

1

9주차 강의 'Stage 분할' 이 로딩만 뜨고 재생되지 않습니다

0

149

1

강의 완료 시기

0

304

1

다운 받은 맵 프리팹을 오픈해보니 핑크색으로 보이네요

0

567

3

typeof 와 GetType

0

227

1

섹션2 - Tilemap 강의에서 BaseMap 프리팹에 Front_01 용도가 궁금합니다.

0

152

1

패킷 형식 질문입니다.

0

148

1

어드레서블 Sprite 관련해서 질문이있습니다.

0

596

1

Data #2 까지 들었는데 빌드를 해보고싶은데, 어느 강의에서 확인할 수 있나요?

0

300

2