본문 바로가기

728x90

그 땐 IT활동했지

(41)
[멋쟁이사자처럼 X 넥슨] MOD Suppoters Hackathon 4주차 7/29일 회고 | 실습: 따라하기만 하면 만들 수 있는 장애물 피하기 게임 UI 구현하기 UI 구현의 필요성 현재 플레이하고 있는 캐릭터의 상태를 파악하기 위해 UI 구현이 필요하다! 👉🏻ex) 포션을 먹으면 HP가 늘어나는데 HP바라는 UI가 있어야 HP의 변화를 알 수 있다. HP바 나타나게 하기 & HP바 조정하기 👉🏻Model List → UIPreset → HP바 순서로 넣어준다. 👉🏻Component의 Value값에 변화를 주어 HP바를 움직인다. HP바 구현 TIP! 👉🏻HP의 증감은 실시간으로 이루어져야해서 OnUpdate를 이용한다.
[멋쟁이사자처럼 X 넥슨] MOD Suppoters Hackathon 4주차 7/28일 회고 | 실습: 따라하기만 하면 만들 수 있는 장애물 피하기 게임 포션 기능 구현하기 포션 만들기 포션을 먹고 hp를 회복시켜보자! 👉🏻Component를 만들고 플레이어와 TriggerEvent를 발생시켜 포션은 사라지고 hp를 증가시킨다. PositionTriggerComponent 추가하기 👉🏻Component를 만들고 플레이어와 TriggerEvent를 발생시켜 포션은 사라지고 hp를 증가시킨다. 포션도 여러번의 TriggerEvent를 방지하기 위해 period를 적용시킨다. 먹은 포션은 사라지기 때문에 TriggerEvent 발생 후 visible과 enable을 false로 바꾼다. Take_Postion_Component 추가하기 👉🏻DefaultPlayer의 Propertydp Take_Potion_Component를 추가한다. period가 true일..
[멋쟁이사자처럼 X 넥슨] MOD Suppoters Hackathon 4주차 7/27일 회고 | 실습: 따라하기만 하면 만들 수 있는 장애물 피하기 게임 충돌 기능 구현하기 충돌 기능 구현하기 장애물에 맞으면 hp를 감소시키고 hp가 0이 되면 플레이어의 상태를 조정해보자! 새로운 Component인 Trap_Trigger_Component를 제작한다. Component의 Trap 데미지를 조정할 수 있도록 Property에 damage를 넣어준다. 👉🏻Entity Event Handler에서 TriggerEvent를 추가한다. TriggerEvent 발생 시 충돌 기능 구현하기 TriggerEvent 발생 시 대상이 Player인지 확인한다. if문으로 TriggerBodyEntity의 ID가 Player의 ID와 맞는지 확인한다. MyDesk → Create Scripts → Create Component에서 Take_Damage_Component를..
[멋쟁이사자처럼 X 넥슨] MOD Suppoters Hackathon 4주차 7/26일 회고 | 실습: 따라하기만 하면 만들 수 있는 장애물 피하기 게임② 떨어지는 장애물 만들기 장애물에 중력을 부여하는 원리 👉🏻중력값을 가지게 하기 위해 Component인 RigidbodyComponent를 해당 장애물에 추가한다. 그리고 이 장애물이 Tile을 만나면 다지 위로 respawn되게 하려면 Trap_Falling_Component를 만들어 장애물에 추가해줘야 한다. 실습 - 장애물 위치에 따라 해당 Entity y좌표 설정하기 장애물이 특정 y좌표보다 아래로 떨어지만 자신이 설정한 바닥의 y좌표보다 조금 높게 설정해보자! 👉🏻Posigion.y가 지정한 y좌표보다 더 낮게 진행되면 MovementComponent:SetPosition을 통해 올려준다. 실습 - 구현 TIP 👉🏻math.random함수로 x좌표를 좌우로 바꾼다. 또한 wait(math.ran..
[멋쟁이사자처럼 X 넥슨] MOD Suppoters Hackathon 4주차 7/25일 회고 | 실습: 따라하기만 하면 만들 수 있는 장애물 피하기 게임 1. 공중에서 도약하기 공중 도약 원리 👉🏻rigidbodyComponent 안의 SetForce라는 함수를 사용한다. 개체를 원하는 방향으로 힘을 가할 수 있다. Workspace → Component → HandleTriggerEnterEvent 스크립트 👉🏻공중에서 LeftAlt라는 KeydownEvent가 발생하면 중력을 조절해 밑으로 떨어지지 않고 위로 둥둥 뜨게 할 수 있다. 실습의 Avoid_Obstacle_Mode Component 📌Property: Mode를 설정해 장애물 피하기 맵에서만 해당 기능이 가능하도록 했다. 📌Entity Event Handler: LeftAlt키를 누를 때 플레이어가 바라보는 방향과 위로 점프하도록 연출했다. HandleKeyDownEvent 👉🏻해당 Ent..
[멋쟁이사자처럼 X 넥슨] MOD Suppoters Hackathon 3주차 7/22일 회고 | 12 알아두면 유용할 것들 Model 모델: 엔티티에 컴포넌트를 추가해 모델화할 수 있다. Original Model: 빈 엔티티에서 컴포넌트들을 추가해 새로울 무언가를 만듦 Child Model: 기존 엔티티에서 상세 컴포넌트만 바뀐 것으로, 기존 엔티티에서 파생된 모델 📌동적 spawn: 특정 마릿수 내에서 몬스터가 지속적으로 등장하고, 일정 구역을 계속 돌아다니는 것 엔티티 동적 생성 📌동적 생성: 엔티티를 동적으로 생성하는 것이다. TweenLineComponent BallComponent MoveComponent 충돌 👉🏻TriggerComponent 추가시 자동으로 offset 영역을 처리한다. 👉🏻동적 생성된 엔티티는 함수에 AddComponent를 사용해 RigidBodyCOmponent를 추가한다.
[멋쟁이사자처럼 X 넥슨] MOD Suppoters Hackathon 3주차 7/21일 회고 | 11 UI 에디터의 이해 UI 에디터 기본 활용&제어법 UI 에디터 살펴보기 👉🏻MOD에서는 UI 에디터를 사용해 UI를 조작한다. 모델 리스트 UI 경로 정보 캔버스 기본 도구 UI Group 편집창 기본 UI 엔티티 👉🏻구성요소로는 이미지, 버튼, 스크롤뷰, 텍스트, 입력텍스트가 있다. UI Preset 👉🏻자주 사용하는 UI들과 스크립트가 있다. 스크립트를 이용한 UI 엔티티 제어 무엇을 할것인가? 👉🏻월드에서의 엔티티로의 접근법과 동일한다. 👉🏻클라이언트 공간에서만 존재하는 UI 엔티티는 서버에서 접근이 불가능하다. 상황과 조건에 따른 UI 노출 처리 👉🏻setEnable을 통해 상황과 조건에 따라 알림 팝업 및 토스트 메시지를 띄운다. UI Group 활용 방법 👉🏻연관 기능이 있는 UI 엔티티끼리 묶어 관리한다. ..
[멋쟁이사자처럼 X 넥슨] MOD Suppoters Hackathon 3주차 7/20일 회고 | 08 Event와 컴포넌트 확장 Event 시스템 📌Event: 객체와 객체 간에 주고 받는 형식 📌Entity Event System: MOD에서 이벤트 시스템을 쉽게 활용할 수 있도록 제공하는 API Event Handler Sender LogEvent 📌우리가 이름을 붙이는 Event 👉🏻Event 생성 과정 LogEvent 객체 생성 LogEvent에 message property 생성 myComponent 생성 및 Handler와 function 추가 👉🏻Log로 Event 주고받는 과정 자신이 엔티티 쪽으로 이벤트를 쏨 로그 이벤트 받겠다는 핸들러 → 자신의 엔티티 쪽으로 등록 핸들러 등록 구조 이벤트를 주고 받을 때 👉🏻같은 엔티티에서 이벤트를 주고 받을 때 component1이 특정 타이밍에 의해 엔티티로 발송 로그 이벤..

728x90