← 목록

mLua · Nemotron SDG 질문-응답 (SFT)

총 21,567개 · 페이지 513/719
🔀 랜덤
불러오는 중…

[task] | two_turn [pass] | ⏳ 미판정 [title] | UI 디자인 가이드 [question] | 터치 입력을 고려한 UI 버튼 디자인 시 권장 크기와 간격 설정 기준은 어떻게 되나요? [answer] | 터치 입력을 고려한 UI 버튼 디자인 시 권장 크기와 간격 설정 기준은 다음과 같습니다. **1. 버튼 크기** * **권장 최소 크기:** **80 X 80px** 이상으로 설정하는 것이 좋습니다. * **이유:** 모바일 사용자가 터치할 때 불편함이 없도록 하기 위함입니다. 영역이 너무 작으면 사용자가 버튼을 정확히 터치하기 어렵기 때문입니다. * **참고:** 월드 화면 우측 상단에 위치한 메이플스토리 월드 기본 UI 버튼의 크기도 80 X 80px이므로, 이를 디자인 시 참고 기준으로 활용할 수 있습니다. ** [followup] | 기본 UI 버튼 크기가 80x80px인 이유와, 이를 기준으로 한 버튼 간 간섭 방지 설계 팁은 무엇인가요? [followup_answer] | 기본 UI 버튼 크기가 80x80px인 이유와 이를 활용한 간섭 방지 설계 팁은 다음과 같습니다. **1. 기본 UI 버튼 크기가 80x80px인 이유** * **모바일 터치 편의성:** 모바일 사용자가 터치할 때 불편함이 없도록 하기 위한 권장 최소 크기입니다. 영역이 너무 작으면 사용자가 버튼을 정확히 터치하기 어렵기 때문입니다. * **디자인 표준:** 메이플스토리 월드 화면 우측 상단에 항상 표시되는 기본 UI 버튼의 크기가 80x80px이므로, 크리에이터가 제작하는 월드 UI의 버튼 크기 설정 시 참고할 수 있는 [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 월드를 제작할 때 User Interface(UI)는 필수 요소입니다. UI는 유저에게 플레이 관련 정보를 명확하고 간결하게 제공해야 합니다. 점수, 체력, 남은 시간, 각종 버튼 같은 UI 요소가 잘 디자인되어 있다면 유저는 직관적으로 월드를 이해하고 재미있게 플레이할 수 있을 것입니다. 유저는 메이플스토리 월드를 PC 및 모바일 환경에서 두루 플레이할 수 있습니다. 그러므로 크리에이터는 다양한 환경에서 불편함이 없도록 UI를 디자인해야 합니다. 물론 월드 콘셉트에도 맞고, 시각적으로 눈길을 사로잡는 디자인을

[task] | single_turn [pass] | ⏳ 미판정 [title] | UI 디자인 가이드 [question] | PC와 모바일의 조작 방식 차이를 고려할 때, 모든 기기에서 동일한 UI를 적용하기보다 기기별로 다르게 처리해야 하는 예시는 무엇인가요? [answer] | 메이플스토리 월드의 UI 디자인 시 PC와 모바일의 조작 방식 차이를 고려하여, 모든 요소를 동일하게 유지하기보다 기기별로 다르게 처리해야 하는 대표적인 예시는 다음과 같습니다. **1. 조작 버튼 (대시, 점프, E 키 등)** * **모바일:** 대시, 점프, E 키 조작이 필수적이므로 사용자가 항상 조작할 수 있도록 화면에 조작 버튼을 고정해 보여줘야 합니다. 또한 이동 조작을 위한 조이스틱도 표시됩니다. * **PC:** 점프는 메이플스토리 월드 전체에서 공통된 조작이므로 굳이 버튼을 보여주지 않습니다. 대신 대시와 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 월드를 제작할 때 User Interface(UI)는 필수 요소입니다. UI는 유저에게 플레이 관련 정보를 명확하고 간결하게 제공해야 합니다. 점수, 체력, 남은 시간, 각종 버튼 같은 UI 요소가 잘 디자인되어 있다면 유저는 직관적으로 월드를 이해하고 재미있게 플레이할 수 있을 것입니다. 유저는 메이플스토리 월드를 PC 및 모바일 환경에서 두루 플레이할 수 있습니다. 그러므로 크리에이터는 다양한 환경에서 불편함이 없도록 UI를 디자인해야 합니다. 물론 월드 콘셉트에도 맞고, 시각적으로 눈길을 사로잡는 디자인을

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | BodyActionStateChangeEvent가 Fly 상태를 호출하는 mLua 코드 예제를 출력하되, 코드만 출력하고 설명은 주석으로 작성하세요. [answer] | ```lua -- BodyActionStateChangeEvent로 아바타의 Fly 상태 애니메이션을 호출하는 예제 local event = BodyActionStateChangeEvent() event.ActionState = MapleAvatarBodyActionState.Fly event.needResetAction = true event.startFrameIndex = 1 event.endFrameIndex = 2 self.Entity:SendEvent(event) ``` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | [BodyActionStateChangeEvent](/apiReference/Events/BodyActionStateChangeEvent)는 이름 그대로 아바타의 bodyActionState를 변경하는 이벤트입니다. 이 이벤트는 무기 타입에 따른 애니메이션을 별도로 지정할 필요가 없어 편리합니다. **BodyActionStateChangeEvent**는 **MapleAvatarBodyActionState**로 애니메이션을 제어합니다. **MapleAvatarBodyActionState**에는 각 상태별로 어떤 몸통 액션과 파츠 액

[task] | two_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | 아바타 애니메이션의 시작·종료 프레임(StartFrameIndex, EndFrameIndex)을 설정할 때 주의해야 할 조건과, 값이 잘못 입력되었을 때의 보정 동작은 무엇인가요? [answer] | 아바타 애니메이션의 시작·종료 프레임(`StartFrameIndex`, `EndFrameIndex`)을 설정할 때 주의해야 할 조건과 보정 동작은 다음과 같습니다. **설정 시 주의할 조건** 1. **양수 값 사용**: 프레임 값은 반드시 양수로 설정해야 합니다. 2. **시작과 종료 프레임의 관계**: 시작 프레임(`StartFrameIndex`)은 종료 프레임(`EndFrameIndex`)보다 작거나 같아야 합니다. 3. **총 프레임 범위 준수**: 종료 프레임(`EndFrameIndex`)은 해당 애니메이션의 총 프 [followup] | `ActionStateChangedEvent`에서 `CoreActionName`과 `PartsActionName`은 반드시 입력해야 하나요? 생략 시 어떻게 동작하며, 음수나 총 프레임 범위를 벗어난 값을 넣으면 구체적으로 어떤 값으로 보정되는지 코드 예시를 보여주세요. [followup_answer] | `ActionStateChangedEvent`에서 `CoreActionName`(몸통 액션)과 `PartsActionName`(파츠 액션)은 **반드시 입력**해야 합니다. 이 두 값이 없으면 애니메이션이 정상적으로 출력되지 않습니다. **생략 시 동작** `CoreActionName`과 `PartsActionName`을 제외한 다른 파라미터(재생 속도, 재생 타입, 시작 프레임, 종료 프레임)는 생략할 수 있습니다. 이 경우 다음과 같은 기본값으로 설정되어 동작합니다. * 재생 속도: `1` * 재생 타입: `Sprite [scores] | [judge_reason] | [source_doc] | 각 애니메이션의 총 프레임은 **AvatarItem Editor**에서 확인할 수 있습니다. 위와 같이 총 프레임을 확인한 뒤, 크리에이터가 재생하기를 원하는 애니메이션 시작 프레임(StartFrameIndex)과 종료 프레임(EndFrameIndex)을 설정하면 됩니다. 프레임을 설정할 때는 다음 사항을 주의해야 합니다. * 프레임은 양수로 설정해야 합니다. * 시작 프레임은 종료 프레임보다 작거나 같아야 합니다. * 종료 프레임은 총 애니메이션 프레임보다 작거나 같아야 합니다. * 프레임값을 잘못 설정하면 보정됩니다. *

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | BodyActionStateChangeEvent에서 startFrameIndex와 endFrameIndex를 잘못 입력했을 때 발생하는 결과와, 이 이벤트가 편의성을 제공하는 이유를 3문장 이내로 설명하세요. [answer] | startFrameIndex와 endFrameIndex를 잘못 입력해도 실제 애니메이션의 범위로 자동 보정되므로 오류가 발생하지 않습니다. 이 이벤트는 MapleAvatarBodyActionState에 미리 정의된 프리셋을 사용해 무기 타입별 별도 애니메이션 지정이 필요 없습니다. 따라서 애니메이션 제어에 필요한 매개변수를 직접 입력할 필요 없이 상태만 지정하면 됩니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | [BodyActionStateChangeEvent](/apiReference/Events/BodyActionStateChangeEvent)는 이름 그대로 아바타의 bodyActionState를 변경하는 이벤트입니다. 이 이벤트는 무기 타입에 따른 애니메이션을 별도로 지정할 필요가 없어 편리합니다. **BodyActionStateChangeEvent**는 **MapleAvatarBodyActionState**로 애니메이션을 제어합니다. **MapleAvatarBodyActionState**에는 각 상태별로 어떤 몸통 액션과 파츠 액

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | AvatarItem Editor에서 특정 ActionName의 애니메이션 미리보기를 확인하기 위해 어떤 파일을 다운로드하여 선택해야 하나요? [answer] | AvatarItem Editor에서 특정 ActionName의 애니메이션을 미리보기하려면 **Avatar_Cap_A1.psd** 파일을 다운로드하여 선택해야 합니다. 다만, 이 파일은 예시 리소스이며 반드시 `Avatar_Cap_A1.psd`를 사용할 필요는 없습니다. 아바타 아이템 제작 가이드 하위 문서에서 제공하는 다른 예시 리소스 파일(psd)을下载使用해도 됩니다. 미리보기 확인 절차는 다음과 같습니다. 1. 메이커의 내비게이션 메뉴에서 **Window - AvatarItem Editor**를 클릭합니다. 2. **[PSD [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | **ActionStateChangedEvent**는 **ActionName**으로 어떤 애니메이션을 재생할지 결정합니다. 아래는 **ActionName**의 목록입니다. |@cols=4:@rows=1:ActionName| |:---:|:---:|:---:|:---:| | stand1 | swingO1 | stabO1 | shoot1 | | stand2 | swingO2 | stabO2 | shoot2 | | walk1 | swingO3 | stabOF | shootF | | walk2 | swingOF | stabT1 | | |

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | CoreActionName과 PartsActionName 포함 여부에 따른 ActionStateChangedEvent 코드 예제를 표로 정리해서 작성하세요. [answer] | `ActionStateChangedEvent`는 **CoreActionName**(몸통 액션)과 **PartsActionName**(파츠 액션)을 반드시 입력해야 애니메이션이 정상 출력됩니다. 이 두 가지 프로퍼티는 생략할 수 없으며, 나머지 파라미터(재생 속도, 재생 타입, 시작/종료 프레임)는 생략 시 기본값으로 동작합니다. 요청하신 내용대로 `CoreActionName`과 `PartsActionName` 포함 여부에 따른 코드 예제를 표로 정리하면 다음과 같습니다. | 구분 | CoreActionName & PartsAct [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 각 애니메이션의 총 프레임은 **AvatarItem Editor**에서 확인할 수 있습니다. 위와 같이 총 프레임을 확인한 뒤, 크리에이터가 재생하기를 원하는 애니메이션 시작 프레임(StartFrameIndex)과 종료 프레임(EndFrameIndex)을 설정하면 됩니다. 프레임을 설정할 때는 다음 사항을 주의해야 합니다. * 프레임은 양수로 설정해야 합니다. * 시작 프레임은 종료 프레임보다 작거나 같아야 합니다. * 종료 프레임은 총 애니메이션 프레임보다 작거나 같아야 합니다. * 프레임값을 잘못 설정하면 보정됩니다. *

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | MapleAvatarBodyActionState와 매칭되는 CoreActionName, PartsActionName, PlayRate, PlayType 값을 Stand, Walk, Attack, Dead 상태에 한해 표로 정리해서 제시하세요. [answer] | Stand, Walk, Attack, Dead 상태에 해당하는 MapleAvatarBodyActionState와 매칭되는 값은 다음과 같습니다. | MapleAvatarBodyActionState | CoreActionName | PartsActionName | PlayRate | PlayType | | :--- | :--- | :--- | :--- | :--- | | Stand | stand1 | stand1 | 1 | ZigzagLoop | | Walk | walk1 | walk1 | 1 | Loop | | Attack | a [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | [BodyActionStateChangeEvent](/apiReference/Events/BodyActionStateChangeEvent)는 이름 그대로 아바타의 bodyActionState를 변경하는 이벤트입니다. 이 이벤트는 무기 타입에 따른 애니메이션을 별도로 지정할 필요가 없어 편리합니다. **BodyActionStateChangeEvent**는 **MapleAvatarBodyActionState**로 애니메이션을 제어합니다. **MapleAvatarBodyActionState**에는 각 상태별로 어떤 몸통 액션과 파츠 액

[task] | two_turn [pass] | ⏳ 미판정 [title] | 사다리와 로프 활용하기 [question] | ClimbableComponent를 사용해서 캐릭터가 사다리나 로프를 타게 하는 기본적인 원리와 필수 프로퍼티 설정 방법은 무엇인가요? [answer] | ClimbableComponent를 사용하여 캐릭터가 사다리나 로프를 타게 하는 기본적인 원리와 필수 프로퍼티 설정 방법은 다음과 같습니다. ### 1. 기본 원리 캐릭터가 사다리나 로프를 타서 수직으로 올라갈 수 있는 것은 해당 오브젝트에 **ClimbableComponent**가 존재하기 때문입니다. 이 컴포넌트를 적용하면 사다리나 로프뿐 아니라 크리에이터가 원하는 다른 오브젝트에서도 등반 액션을 수행할 수 있습니다. 등반 영역과 속도를 직접 조절하여 캐릭터의 이동 방식을 커스터마이징할 수 있습니다. 또한, 사다리나 로프의 [followup] | IsUseDefaultObjectBoxSize가 true와 false일 때 Boxsize와 BoxOffset 설정 방식의 차이와, 메이커 편집 모드에서 이 프로퍼티가 어떻게 동작하는지 구체적으로 설명해 주세요. [followup_answer] | `IsUseDefaultObjectBoxSize` 프로퍼티는 등반 영역(Collider)의 크기(BoxSize)와 오프셋(BoxOffset)을 스프라이트 크기에 자동으로 맞추거나, 사용자가 직접 설정할지 결정하는 역할을 합니다. 이 프로퍼티는 **메이커 편집 모드에서만 동작**합니다. ### true와 false일 때의 차이 | 설정값 | 동작 방식 | | :--- | :--- | | **true** | `BoxSize`와 `BoxOffset`을 **스프라이트 크기에 자동으로 맞추어 설정**합니다. 사용자가 수동으로 값을 변경할 [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 캐릭터가 사다리나 로프를 타면 수직으로 올라갈 수 있습니다. 이는 사다리나 로프의 동작과 연관된 **ClimbableComponent**가 있기 때문입니다. 이 컴포넌트를 활용하면 사다리, 로프뿐만 아니라 다른 오브젝트에서도 등반할 수 있습니다. 또한 크리에이터가 원하는 대로 등반 영역이나 등반 속도를 조절할 수 있습니다. 관련된 컴포넌트로 **ClimbableSpriteRendererComponent**도 있습니다. 이 컴포넌트는 사다리나 로프와 같이 머리, 몸통, 꼬리 형태의 스프라이트를 그리기 위한 용도로

[task] | two_turn [pass] | ⏳ 미판정 [title] | 배경 설정하기 [question] | BackgroundComponent를 활용하여 그라데이션 배경이나 웹 이미지 배경을 설정할 때 필요한 프로퍼티와 절차는 어떻게 되나요? [answer] | BackgroundComponent를 사용하여 그라데이션 배경과 웹 이미지 배경을 설정할 때 필요한 프로퍼티와 절차는 다음과 같습니다. ### 1. 그라데이션 배경 설정 그라데이션 배경을 적용하려면 `BackgroundComponent`의 **Type** 프로퍼티를 `Gradient`로 변경해야 합니다. **필요 프로퍼티:** * **Type**: 배경 유형을 지정합니다. 그라데이션 배경을 위해 `Gradient`로 설정합니다. * **색상 프로퍼티**: 그라데이션의 최상단, 중상단, 중하단, 최하단 색상을 설정하는 프 [followup] | 웹 이미지 배경의 WebURL에 잘못된 주소를 입력하거나, 그라데이션의 비율 프로퍼티(MiddleTopRatio, MiddleBottomRatio)에 유효하지 않은 값을 넣었을 때 발생할 수 있는 예외 상황이나 주의할 점은 무엇인가요? [followup_answer] | 제공된 참고 문서에는 `WebURL`에 잘못된 주소를 입력하거나 `MiddleTopRatio`, `MiddleBottomRatio`에 유효하지 않은 값을 넣었을 때 발생하는 구체적인 예외 상황(에러 메시지, 게임 충돌, 기본값 처리 등)이나 주의할 사항에 대한 정보가 포함되어 있지 않습니다. 문서에는 각 프로퍼티의 기능과 설정 방법(예: `WebURL`에 주소를 붙여 넣고 테스트하는 절차, `MiddleTopRatio`와 `MiddleBottomRatio`로 색상 위치를 설정하는 방법)만 설명하고 있으며, 잘못된 입력 값에 대한 [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 **Preset List**와 **BackgroundComponent**를 활용하여 맵의 배경을 설정해봅시다. # 템플릿 배경 설정 **Preset List - Background**에서 메이플스토리의 다양한 배경을 선택할 수 있습니다. 이와 같이 배경 템플릿을 선택하면 배경이 움직이는 속도, 즉 **ScrollRate**를 조절할 수 있습니다. **ScrollRate** 값이 커지면 배경이 움직이는 속도가 빨라지며, 음수를 입력하면 반대 방향으로 이동합니다. | ScrollRate | Image

[task] | single_turn [pass] | ⏳ 미판정 [title] | UI 디자인 가이드 [question] | 모바일과 PC에서 공용으로 사용할 UI를 만들 때, 버튼 크기와 위치를 어떻게 설정해야 모바일 사용자가 불편하지 않게 조작할 수 있나요? [answer] | 모바일과 PC에서 공용으로 사용할 UI를 만들 때, 모바일 사용자의 불편함을 줄이기 위해 다음 원칙을 따라야 합니다. **1. 버튼 크기 설정** * 버튼은 모바일 사용자가 터치하기 용이하도록 **80 x 80px 이상**의 크기로 설정하는 것이 권장됩니다. * 영역이 너무 작으면 터치하기 어려워지므로, 디자인 과정에서 권장 크기보다 작은 버튼을 만들었다면 반드시 모바일 환경에서 조작이 불편하지 않은지 미리 확인해야 합니다. **2. 버튼 위치 및 간격 설정** * **간격 확보:** 버튼 간격이 적당히 떨어져 있어야 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 월드를 제작할 때 User Interface(UI)는 필수 요소입니다. UI는 유저에게 플레이 관련 정보를 명확하고 간결하게 제공해야 합니다. 점수, 체력, 남은 시간, 각종 버튼 같은 UI 요소가 잘 디자인되어 있다면 유저는 직관적으로 월드를 이해하고 재미있게 플레이할 수 있을 것입니다. 유저는 메이플스토리 월드를 PC 및 모바일 환경에서 두루 플레이할 수 있습니다. 그러므로 크리에이터는 다양한 환경에서 불편함이 없도록 UI를 디자인해야 합니다. 물론 월드 콘셉트에도 맞고, 시각적으로 눈길을 사로잡는 디자인을

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | ActionName 목록에서 swingO1과 swingT1의 차이는 무엇이며, 각각 어떤 동작에 대응하나요? [answer] | 제공된 참고 문서에는 `ActionName`의 목록만 나열되어 있을 뿐, 각 액션 이름이 구체적으로 어떤 동작(예: 특정 무기 종류, 공격 방향 등)에 대응하는지에 대한 설명은 포함되어 있지 않습니다. 따라서 문서의 정보만으로는 `swingO1`과 `swingT1`의 정확한 차이점이나 각각의 동작 의미를 설명할 수 없습니다. 다만, 문서에서 확인 가능한 정보는 다음과 같습니다: 1. **ActionName 목록**: `swingO1`과 `swingT1` 모두 유효한 `ActionName` 값으로 목록에 포함되어 있습니다. 2. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | **ActionStateChangedEvent**는 **ActionName**으로 어떤 애니메이션을 재생할지 결정합니다. 아래는 **ActionName**의 목록입니다. |@cols=4:@rows=1:ActionName| |:---:|:---:|:---:|:---:| | stand1 | swingO1 | stabO1 | shoot1 | | stand2 | swingO2 | stabO2 | shoot2 | | walk1 | swingO3 | stabOF | shootF | | walk2 | swingOF | stabT1 | | |

[task] | code [pass] | ⏳ 미판정 [title] | UI 디자인 가이드 [question] | _UserService의 HandleUserEnterEvent를 활용하여 유저가 월드에 입장할 때 "환영합니다"라는 텍스트를 상단에 표시하는 스크립트를 작성해줘 [answer] | 제시된 참고 문서에는 `UserService`와 `HandleUserEnterEvent`의 사용법은 나와 있으나, UI(텍스트)를 생성하거나 화면 상단에 표시하는 API(예: UI 컴포넌트 생성, 텍스트 설정 함수 등)에 대한 정보는 포함되어 있지 않습니다. 따라서 요청하신 "상단에 텍스트를 표시"하는 실제 UI 렌더링 코드는 문서에 근거하여 작성할 수 없습니다. 대신, 문서에 명시된 `HandleUserEnterEvent`를 통해 유저가 입장할 때 이벤트가 발생했음을 확인하는(로그로 출력하는) 스크립트만 작성해 드립니다. UI [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 월드를 제작할 때 User Interface(UI)는 필수 요소입니다. UI는 유저에게 플레이 관련 정보를 명확하고 간결하게 제공해야 합니다. 점수, 체력, 남은 시간, 각종 버튼 같은 UI 요소가 잘 디자인되어 있다면 유저는 직관적으로 월드를 이해하고 재미있게 플레이할 수 있을 것입니다. 유저는 메이플스토리 월드를 PC 및 모바일 환경에서 두루 플레이할 수 있습니다. 그러므로 크리에이터는 다양한 환경에서 불편함이 없도록 UI를 디자인해야 합니다. 물론 월드 콘셉트에도 맞고, 시각적으로 눈길을 사로잡는 디자인을

[task] | two_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | 아바타의 몸통 액션 상태를 변경하기 위해 BodyActionStateChangeEvent 를 사용할 때 어떤 애니메이션 프리셋을 정의하고 있는지 궁금합니다. [answer] | `BodyActionStateChangeEvent`는 `MapleAvatarBodyActionState`를 통해 애니메이션을 제어하며, 각 상태별로 사용할 몸통 액션(`CoreActionName`), 파츠 액션(`PartsActionName`), 재생 속도(`PlayRate`), 재생 타입(`PlayType`)이 미리 정의되어 있습니다. 아래 표에 정의된 애니메이션 프리셋을 사용할 수 있습니다. | MapleAvatarBodyActionState | CoreActionName | PartsActionName | PlayRate [followup] | MapleAvatarBodyActionState 의 특정 상태(예: Fly)가 CoreActionName 과 PartsActionName 에 어떻게 매칭되는지, 그리고 startFrameIndex 와 endFrameIndex 입력 오류 시 ActionStateChangedEvent 에서 어떻게 보정되는지 구체적인 동작 방식을 알려주세요. [followup_answer] | `MapleAvatarBodyActionState`의 특정 상태가 `CoreActionName`과 `PartsActionName`에 매칭되는 방식과 프레임 인덱스 오류 시 보정 동작은 다음과 같습니다. ### 1. MapleAvatarBodyActionState와 액션 이름 매칭 `BodyActionStateChangeEvent`는 `MapleAvatarBodyActionState`를 사용하여 애니메이션을 제어합니다. 각 상태에는 미리 정의된 `CoreActionName`(몸통 액션)과 `PartsActionName`(파츠 액션) [scores] | [judge_reason] | [source_doc] | [BodyActionStateChangeEvent](/apiReference/Events/BodyActionStateChangeEvent)는 이름 그대로 아바타의 bodyActionState를 변경하는 이벤트입니다. 이 이벤트는 무기 타입에 따른 애니메이션을 별도로 지정할 필요가 없어 편리합니다. **BodyActionStateChangeEvent**는 **MapleAvatarBodyActionState**로 애니메이션을 제어합니다. **MapleAvatarBodyActionState**에는 각 상태별로 어떤 몸통 액션과 파츠 액

[task] | two_turn [pass] | ⏳ 미판정 [title] | 배경 설정하기 [question] | Preset List에서 제공되는 배경 옵션들과 직접 BackgroundComponent를 조작하는 방식의 차이는 무엇이며, 어떤 상황에서 각각을 사용하는 것이 효율적일까요? [answer] | 제공된 문서와 코드 예제를 기준으로, Preset List를 사용하는 방식과 직접 `BackgroundComponent`를 조작하는 방식의 차이 및 효율적인 사용 상황을 정리하면 다음과 같습니다. ### 1. 방식의 차이 **Preset List 활용 방식 (에디터 GUI 기반)** * **방법:** 메이플스토리 월드 에디터의 `Preset List` 메뉴에서 `Background`, `Solid Background`, `Image Background` 등을 선택하여 설정합니다. * **특징:** * **템플릿 [followup] | 이미지 배경을 저장된 이미지로 설정할 때와 웹 이미지로 설정할 때의 차이점, 그리고 배경 설정 후 테스트 모드로 실행했을 때 배경이 올바르게 로드되지 않을 경우의 확인 절차나 해결 방법을 알려주세요. [followup_answer] | 제공된 참고 문서를 근거로 이미지 배경 설정 방식의 차이점과 테스트 시 배경이 로드되지 않는 경우의 확인 절차에 대해 설명합니다. ### 1. 저장된 이미지와 웹 이미지 배경 설정의 차이점 두 방식 모두 `BackgroundComponent`를 기반으로 하지만, 이미지 소스의 출처와 설정 방법이 다릅니다. **저장된 이미지로 설정 (Preset List - Image Background)** * **소스:** 크리에이터가 로컬에 저장하고 있던 이미지를 사용합니다. * **설정 방법:** 에디터의 `Preset List` [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 **Preset List**와 **BackgroundComponent**를 활용하여 맵의 배경을 설정해봅시다. # 템플릿 배경 설정 **Preset List - Background**에서 메이플스토리의 다양한 배경을 선택할 수 있습니다. 이와 같이 배경 템플릿을 선택하면 배경이 움직이는 속도, 즉 **ScrollRate**를 조절할 수 있습니다. **ScrollRate** 값이 커지면 배경이 움직이는 속도가 빨라지며, 음수를 입력하면 반대 방향으로 이동합니다. | ScrollRate | Image

[task] | code [pass] | ⏳ 미판정 [title] | UI 디자인 가이드 [question] | _UI의 기본 UI 우측 상단 영역을 피하도록 좌측 상단에 배치된 커스텀 UI의 위치를 Vector2(10, 10)으로 고정하는 스크립트를 작성해줘 [answer] | 요청하신 대로 좌측 상단 `(10, 10)` 위치에 커스텀 UI를 고정하는 스크립트입니다. 참고로, 제공된 참고 문서에는 UI 컴포넌트의 위치를 설정하는 구체적인 mLua API (예: `SetPosition`, `TransformComponent.Position` 등)가 명시되어 있지 않습니다. 따라서 아래 코드는 mLua의 일반적 컴포넌트 접근 방식(`self.Entity.TransformComponent.Position`)을 따르되, UI 전용 위치 API가 존재할 수 있으므로 실제 개발 시 해당 UI 객체의 위치 설정 메서 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 월드를 제작할 때 User Interface(UI)는 필수 요소입니다. UI는 유저에게 플레이 관련 정보를 명확하고 간결하게 제공해야 합니다. 점수, 체력, 남은 시간, 각종 버튼 같은 UI 요소가 잘 디자인되어 있다면 유저는 직관적으로 월드를 이해하고 재미있게 플레이할 수 있을 것입니다. 유저는 메이플스토리 월드를 PC 및 모바일 환경에서 두루 플레이할 수 있습니다. 그러므로 크리에이터는 다양한 환경에서 불편함이 없도록 UI를 디자인해야 합니다. 물론 월드 콘셉트에도 맞고, 시각적으로 눈길을 사로잡는 디자인을

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | SpriteAnimPlayerChangeFrameEvent가 전달하는 3가지 프레임 정보 값을 3문장 이내로 [answer] | SpriteAnimPlayerChangeFrameEvent는 현재 재생 중인 프레임의 번호인 FrameIndex를 전달합니다. 또한 애니메이션이 역재생되고 있는지 여부를 나타내는 ReversePlaying 값을 포함합니다. 마지막으로 해당 애니메이션의 전체 프레임 수인 TotalFrameCount를 함께 제공합니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 애니메이션 변경 과정을 정리하면 다음과 같습니다. 위에서 알아본 3가지 아바타 애니메이션 제어 방법의 장단점을 정리하면 아래 표와 같습니다. 각 방법은 장단점이 명확하므로 크리에이터의 의도에 맞는 방법을 적절히 선택하면 됩니다. | 아바타 애니메이션 제어 방법 | 장점 | 단점 | | :---: | --- | --- | | ActionStateChangedEvent | <ul> <li>몸통과 파츠 애니메이션을 각각 다르게 조절할 수 있습니다.</li> <li>재생 속도, 재생 타입, 애니메이션 시작/종료 프레임을 세밀하게 설

[task] | two_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | ActionStateChangedEvent의 프로퍼티 중 CoreActionName, PartsActionName, PlayRate, PlayType, StartFrameIndex, EndFrameIndex는 각각 어떤 애니메이션 제어에 사용되며, Body와 Face 애니메이션 제어 시 이 중 어떤 것들이 주로 활용되는가? [answer] | `ActionStateChangedEvent`는 아바타의 `Body`(몸통)와 `Face`(얼굴)에 특정 애니메이션을 재생하기 위해 사용됩니다. 각 프로퍼티의 역할과 `Body`/`Face` 제어 시의 활용 범위는 다음과 같습니다. ### 프로퍼티별 역할 * **CoreActionName**: 아바타 몸통(`Body`)의 액션 이름을 지정합니다. * **PartsActionName**: 얼굴 장식을 제외한 아바타 장착 아이템(파츠)의 액션 이름을 지정합니다. * **PlayRate**: 애니메이션의 재생 속도를 제어합 [followup] | Body 애니메이션에서 특정 파츠 아이템의 액션만 단독으로 재생하거나, 전체 액션의 재생 속도를 2배로 변경하고 특정 프레임 구간만 루프 재생하는 mLua 코드 예시를 보여줄 수 있는가? [followup_answer] | 참고 문서에 제시된 `ActionStateChangedEvent`의 프로퍼티와 코드 예시를 바탕으로 요청하신 기능을 구현하는 mLua 코드 예시를 보여드립니다. 1. **특정 파츠 아이템의 액션만 단독으로 재생**: `CoreActionName`을 빈 문자열(`""`) 또는 기본 대기 액션으로 두고, `PartsActionName`에만 특정 파츠 액션 이름을 지정하면 됩니다. (참고: 문서에 `CoreActionName`을 비워두면 파츠만 재생되는지에 대한 명시적 설명은 없으나, 프로퍼티 정의상 `CoreActionName`은 몸 [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 아바타 애니메이션을 제어하는 3가지 방법을 살펴봅니다. 본 과정을 통해 크리에이터가 원하는 기능에 맞게 아바타 애니메이션을 제어해 봅시다. # ActionStateChangedEvent로 제어 아바타는 **AvatarRoot**에 **Body**와 **Face**로 나뉘어 있습니다. **Body**는 말 그대로 아바타의 몸통이며 **Face**는 아바타의 얼굴을 뜻합니다. 아바타의 **Body**와 **Face**에 어떤 애니메이션을 재생할지는 [ActionStateChangedEvent](/apiRefer

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | ActionStateChangedEvent와 BodyActionStateChangeEvent는 아바타 애니메이션 제어 시 어떤 점에서 차이가 있나요? [answer] | 제공된 문서에 근거하여 `ActionStateChangedEvent`와 `BodyActionStateChangeEvent`의 차이를 설명해 드리겠습니다. 문서 내용에는 두 이벤트의 구체적인 차이점(특히 `BodyActionStateChangeEvent`의 상세 매개변수나 동작 방식)이 명시적으로 나열되어 있지 않으며, `ActionStateChangedEvent`를 사용했을 때 발생하는 **단점**과 이를 해결하기 위해 `BodyActionStateChangeEvent`가 도입된 **배경**에 대한 설명만 존재합니다. 따라서 문 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 각 애니메이션의 총 프레임은 **AvatarItem Editor**에서 확인할 수 있습니다. 위와 같이 총 프레임을 확인한 뒤, 크리에이터가 재생하기를 원하는 애니메이션 시작 프레임(StartFrameIndex)과 종료 프레임(EndFrameIndex)을 설정하면 됩니다. 프레임을 설정할 때는 다음 사항을 주의해야 합니다. * 프레임은 양수로 설정해야 합니다. * 시작 프레임은 종료 프레임보다 작거나 같아야 합니다. * 종료 프레임은 총 애니메이션 프레임보다 작거나 같아야 합니다. * 프레임값을 잘못 설정하면 보정됩니다. *

[task] | two_turn [pass] | ⏳ 미판정 [title] | UI 디자인 가이드 [question] | 버튼 배치와 애니메이션 효과를 통해 유저의 상호작용 경험을 어떻게 일관되게 만들 수 있나요? [answer] | 제공된 문서에 따르면, 버튼 배치와 애니메이션 효과를 통해 유저의 상호작용 경험을 일관되게 만드는 방법은 다음과 같습니다. **1. 버튼 배치 일관성** * **크기 통일:** 같은 비중을 가진 버튼은 반드시 같은 크기를 사용해야 합니다. * **방향 고정:** 비슷한 기능을 하는 버튼은 항상 같은 방향에 배치해야 합니다. * 예: "예", "확인"과 같은 긍정적 버튼은 오른쪽에, "아니오", "취소"와 같은 부정적 버튼은 왼쪽에 배치하도록 규칙을 정해 월드 전체에서 일관되게 적용해야 합니다. **2. 애니메이 [followup] | 기준 해상도 1920x1080을 기준으로 할 때, 섬네일 이미지는 어떤 비율과 픽셀 사이즈로 제작하는 것이 권장되나요? [followup_answer] | 섬네일 이미지는 16:9 비율로 제작해야 하며, 권장 픽셀 사이즈는 960 x 540px입니다. [scores] | [judge_reason] | [source_doc] | 일관성 있는 UI 디자인은 유저가 월드 플레이 방식을 보다 빠르게 이해하고 즐길 수 있도록 도와줍니다. 이러한 UI 디자인을 위해 아래 사항을 참고해 봅시다. ##### 색상 팔레트 UI에서 사용할 색상 팔레트를 결정하고 일관되게 사용해 봅시다. 너무 많은 색상을 사용하면 UI가 지저분해지고 해당 색상이 무엇을 의미하는지도 알 수 없게 됩니다. 해당 월드 UI에서 사용할 몇 가지 색상을 정하고, 비슷한 기능을 하는 요소는 같은 색상을 사용하여 일관성을 유지하는 것이 좋습니다. 예를 들어, [예] 또는 [확인] 버튼에 파란색을 사용

[task] | two_turn [pass] | ⏳ 미판정 [title] | UI 디자인 가이드 [question] | UI 디자인 시 일관성을 유지하기 위해 색상 팔레트와 텍스트 서식에서 가장 중요한 원칙은 무엇인가요? [answer] | UI 디자인에서 색상 팔레트와 텍스트 서식의 일관성을 유지하기 위한 가장 중요한 원칙은 **유사한 기능이나 중요도를 가진 요소에 동일한 스타일을 적용하여 통일성**을 갖추는 것입니다. 구체적인 원칙은 다음과 같습니다. **1. 색상 팔레트 원칙** * **제한된 색상 사용:** 너무 많은 색상을 사용하면 UI가 지저분해지고 색상의 의미가 모호해지므로, 월드 UI에서 사용할 색상을 소수로 한정합니다. * **기능별 색상 통일:** 비슷한 기능을 수행하는 UI 요소(예: 버튼)에는 항상 같은 색상을 사용합니다. 예를 들어 ' [followup] | 글로벌 서비스를 고려할 때 특정 언어 대응이 부족한 폰트 대신 어떤 폰트를 선택해야 하며, 그 이유는 무엇인가요? [followup_answer] | 글로벌 서비스를 고려할 때는 **Noto Sans (Default)** 폰트를 선택해야 합니다. 그 이유는 Noto Sans가 **언어별 호환성이 좋아서**입니다. Maple, Bazzi, Football 폰트는 한글과 영어에는 문제가 없으나 그 외의 언어에는 대응하지 못하기 때문에, 다양한 언어로 번역하여 제공해야 하는 글로벌 서비스 환경에서는 Noto Sans를 사용하는 것이 적절합니다. [scores] | [judge_reason] | [source_doc] | 일관성 있는 UI 디자인은 유저가 월드 플레이 방식을 보다 빠르게 이해하고 즐길 수 있도록 도와줍니다. 이러한 UI 디자인을 위해 아래 사항을 참고해 봅시다. ##### 색상 팔레트 UI에서 사용할 색상 팔레트를 결정하고 일관되게 사용해 봅시다. 너무 많은 색상을 사용하면 UI가 지저분해지고 해당 색상이 무엇을 의미하는지도 알 수 없게 됩니다. 해당 월드 UI에서 사용할 몇 가지 색상을 정하고, 비슷한 기능을 하는 요소는 같은 색상을 사용하여 일관성을 유지하는 것이 좋습니다. 예를 들어, [예] 또는 [확인] 버튼에 파란색을 사용

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | CoreActionName을 walk1로 설정하고 PartsActionName을 stand1로 설정했을 때 아바타의 몸과 장착 아이템은 어떻게 다르게 보이며, 이를 자연스럽게 보이게 하려면 어떻게 설정해야 하나요? [answer] | `CoreActionName`을 `walk1`로, `PartsActionName`을 `stand1`로 설정하면 아바타의 몸통은 걷는 애니메이션이 재생되지만, 얼굴 장식을 제외한 장착된 아이템(옷, 신발 등)은 가만히 서 있는 애니메이션이 재생됩니다. 이로 인해 몸은 움직이고 아이템은 정지해 있어 어색한 모습이 연출됩니다. 이를 자연스럽게 보이게 하려면 일반적으로 `CoreActionName`과 `PartsActionName`을 동일하게 설정해야 합니다. 예를 들어, 걷는 동작을 원한다면 두 값 모두 `walk1`으로 설정하면 몸과 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | **ActionStateChangedEvent**는 **ActionName**으로 어떤 애니메이션을 재생할지 결정합니다. 아래는 **ActionName**의 목록입니다. |@cols=4:@rows=1:ActionName| |:---:|:---:|:---:|:---:| | stand1 | swingO1 | stabO1 | shoot1 | | stand2 | swingO2 | stabO2 | shoot2 | | walk1 | swingO3 | stabOF | shootF | | walk2 | swingOF | stabT1 | | |

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | 아바타의 Face와 Body는 각각 어떤 애니메이션을 제어하는지 명확히 구분해서 설명해 주실 수 있나요? [answer] | 아바타의 구조는 **AvatarRoot** 아래에 **Body**(몸통)와 **Face**(얼굴)로 나뉘어 있으며, 각각 제어하는 애니메이션 범위가 명확히 구분됩니다. 1. **Face**: 아바타의 얼굴 애니메이션, 즉 **표정**을 제어합니다. 2. **Body**: 아바타의 **몸통 액션**과 **파츠 액션**을 제어합니다. * *참고*: `PartsActionName`은 얼굴 장식을 제외한 아바타 장착 아이템의 액션을 의미합니다. 이러한 구분에 따라 `ActionStateChangedEvent`를 사용할 때 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 아바타 애니메이션을 제어하는 3가지 방법을 살펴봅니다. 본 과정을 통해 크리에이터가 원하는 기능에 맞게 아바타 애니메이션을 제어해 봅시다. # ActionStateChangedEvent로 제어 아바타는 **AvatarRoot**에 **Body**와 **Face**로 나뉘어 있습니다. **Body**는 말 그대로 아바타의 몸통이며 **Face**는 아바타의 얼굴을 뜻합니다. 아바타의 **Body**와 **Face**에 어떤 애니메이션을 재생할지는 [ActionStateChangedEvent](/apiRefer

[task] | two_turn [pass] | ⏳ 미판정 [title] | UI 디자인 가이드 [question] | Resource Storage에 UI 리소스를 등록할 때 용량 최적화와 필터 모드 설정을 위해 어떤 기준을 맞춰야 하나요? [answer] | Resource Storage에 UI 리소스를 등록할 때 용량 최적화와 필터 모드 설정을 위해 아래 기준을 맞춰야 합니다. **1. 용량 최적화 기준** 스프라이트의 가로와 세로 길이를 모두 **4의 배수**로 맞춰야 합니다. 이렇게 하면 업로드 시 자동으로 최적화되어 용량이 줄어듭니다. * 예시: 가로 2000px, 세로 2000px인 스프라이트는 가로·세로가 모두 4의 배수이므로 자동 최적화 대상입니다. **2. 필터 모드 설정 기준** 리소스 세부 정보에서 적절한 필터 모드를 선택해야 하며, 주로 아래 두 가지 중 하나 [followup] | 도트 이미지와 일반적인 스프라이트 각각에 대해 Point와 Bilinear 필터 모드 중 어떤 것이 적합하며, 왜 그런가요? [followup_answer] | 도트 이미지와 일반적인 스프라이트에 적합한 필터 모드와 그 이유는 다음과 같습니다. **1. 도트 이미지: Point 필터 모드 적합** * **이유**: Point 모드는 색을 선명하게 유지하여 스프라이트를 확대했을 때 색의 경계가 또렷하게 보입니다. 도트 이미지처럼 이미지 가장자리가 깔끔하게 떨어지는 리소스는 이러한 선명함과 또렷한 경계가 중요하므로 Point 모드를 사용하는 것이 좋습니다. **2. 일반적인 스프라이트: Bilinear 필터 모드 적합** * **이유**: Bilinear 모드는 특정 색과 주변 색을 [scores] | [judge_reason] | [source_doc] | 일관성 있는 UI 디자인은 유저가 월드 플레이 방식을 보다 빠르게 이해하고 즐길 수 있도록 도와줍니다. 이러한 UI 디자인을 위해 아래 사항을 참고해 봅시다. ##### 색상 팔레트 UI에서 사용할 색상 팔레트를 결정하고 일관되게 사용해 봅시다. 너무 많은 색상을 사용하면 UI가 지저분해지고 해당 색상이 무엇을 의미하는지도 알 수 없게 됩니다. 해당 월드 UI에서 사용할 몇 가지 색상을 정하고, 비슷한 기능을 하는 요소는 같은 색상을 사용하여 일관성을 유지하는 것이 좋습니다. 예를 들어, [예] 또는 [확인] 버튼에 파란색을 사용

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | BodyActionStateChangeEvent의 매칭 표에서 Dead 상태의 PartsActionName이 stand1로 설정되어 있는 이유는 무엇인가요? [answer] | 제시된 참고 문서에는 `MapleAvatarBodyActionState`의 `Dead` 상태가 `CoreActionName`으로 `dead`, `PartsActionName`으로 `stand1`을 사용하는 매칭 표만 제시되어 있을 뿐, `PartsActionName`이 `stand1`으로 설정된 구체적인 이유나 배경 설명은 포함되어 있지 않습니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | [BodyActionStateChangeEvent](/apiReference/Events/BodyActionStateChangeEvent)는 이름 그대로 아바타의 bodyActionState를 변경하는 이벤트입니다. 이 이벤트는 무기 타입에 따른 애니메이션을 별도로 지정할 필요가 없어 편리합니다. **BodyActionStateChangeEvent**는 **MapleAvatarBodyActionState**로 애니메이션을 제어합니다. **MapleAvatarBodyActionState**에는 각 상태별로 어떤 몸통 액션과 파츠 액

[task] | two_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | AvatarItem Editor 에서 PSD 파일을 적용한 후 ActionName 목록에서 원하는 애니메이션을 미리 보는 구체적인 절차는 어떻게 되나요? [answer] | AvatarItem Editor에서 PSD 파일을 적용한 후 ActionName 목록에서 원하는 애니메이션을 미리 보는 절차는 다음과 같습니다. 1. **PSD 파일 선택**: 메이커의 내비게이션 메뉴에서 **Window - AvatarItem Editor**를 클릭하여 에디터를 엽니다. **[PSD 파일 선택]** 버튼을 클릭한 뒤, 사용할 PSD 파일(예: `Avatar_Cap_A1.psd`)을 선택합니다. 2. **적용 대기**: 파일을 선택한 뒤, 잠시 기다리면 PSD 파일이 적용됩니다. 3. **ActionName [followup] | 문서에 언급된 Avatar_Cap_A1.psd 이외의 예시 리소스 파일도 미리보기에 사용할 수 있는지 확인해 주세요. [followup_answer] | 네, `Avatar_Cap_A1.psd` 외에도 다른 예시 리소스 파일도 사용할 수 있습니다. 아바타 아이템 제작 가이드 하위 문서에서 제공하는 예시 리소스 파일(psd)은 모두 AvatarItem Editor에서 미리보기에 사용 가능하며, 반드시 `Avatar_Cap_A1.psd`만 사용해야 하는 것은 아닙니다. [scores] | [judge_reason] | [source_doc] | **ActionStateChangedEvent**는 **ActionName**으로 어떤 애니메이션을 재생할지 결정합니다. 아래는 **ActionName**의 목록입니다. |@cols=4:@rows=1:ActionName| |:---:|:---:|:---:|:---:| | stand1 | swingO1 | stabO1 | shoot1 | | stand2 | swingO2 | stabO2 | shoot2 | | walk1 | swingO3 | stabOF | shootF | | walk2 | swingOF | stabT1 | | |

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | MapleAvatarBodyActionState.Fly 상태를 적용할 때 needResetAction 변수를 true로 설정해야 하는 구체적인 이유는 무엇인가요? [answer] | 제공된 참고 문서에는 `needResetAction` 변수를 `true`로 설정해야 하는 구체적인 이유나 해당 변수의 기능에 대한 설명이 포함되어 있지 않습니다. 문서에서는 `MapleAvatarBodyActionState.Fly` 상태를 적용하는 예제 코드로 `event.needResetAction = true`가 함께 사용되고 있는 것만 확인할 수 있으며, 이 변수가 어떤 동작을 수행하는지, 또는 왜 `true`로 설정해야 하는지에 대한 정보는 찾을 수 없습니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | [BodyActionStateChangeEvent](/apiReference/Events/BodyActionStateChangeEvent)는 이름 그대로 아바타의 bodyActionState를 변경하는 이벤트입니다. 이 이벤트는 무기 타입에 따른 애니메이션을 별도로 지정할 필요가 없어 편리합니다. **BodyActionStateChangeEvent**는 **MapleAvatarBodyActionState**로 애니메이션을 제어합니다. **MapleAvatarBodyActionState**에는 각 상태별로 어떤 몸통 액션과 파츠 액

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | ActionStateChangedEvent를 사용할 때, 얼굴 장식(헤어/액세서리 등)과 일반 장착 아이템의 액션은 PartsActionName으로 모두 제어되는 건가요? [answer] | 아니요, 그렇지 않습니다. **PartsActionName**은 얼굴 장식을 제외한 아바타 장착 아이템의 액션만 제어합니다. 아바타의 **Face**와 **Body**에 어떤 애니메이션을 재생할지는 **ActionStateChangedEvent**로 설정하며, 구체적으로 다음과 같이 구분됩니다. * **Face**: 아바타의 얼굴 애니메이션(표정)을 제어합니다. * **Body**: 아바타의 몸통 액션과 파츠 액션을 제어합니다. 이 중 **PartsActionName** 프로퍼티는 **얼굴 장식을 제외한** 아바타 장착 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 아바타 애니메이션을 제어하는 3가지 방법을 살펴봅니다. 본 과정을 통해 크리에이터가 원하는 기능에 맞게 아바타 애니메이션을 제어해 봅시다. # ActionStateChangedEvent로 제어 아바타는 **AvatarRoot**에 **Body**와 **Face**로 나뉘어 있습니다. **Body**는 말 그대로 아바타의 몸통이며 **Face**는 아바타의 얼굴을 뜻합니다. 아바타의 **Body**와 **Face**에 어떤 애니메이션을 재생할지는 [ActionStateChangedEvent](/apiRefer

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | ActionStateChangedEvent를 통해 아바타의 Body와 Face 애니메이션을 제어할 때, CoreActionName과 PartsActionName이 각각 어떤 범위의 액션을 담당하는지 차이점이 궁금해요. [answer] | `ActionStateChangedEvent`를 통해 아바타의 애니메이션을 제어할 때, `CoreActionName`과 `PartsActionName`은 다음과 같은 명확한 차이점을 가집니다. **1. CoreActionName** * **담당 범위:** 아바타의 **Body(몸통)** 액션입니다. * **설명:** 아바타의 기본 골격이나 몸통에 적용되는 액션 이름을 지정합니다. **2. PartsActionName** * **담당 범위:** 아바타의 **파츠(Parts)** 액션입니다. * **설명:** 얼굴 장 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 아바타 애니메이션을 제어하는 3가지 방법을 살펴봅니다. 본 과정을 통해 크리에이터가 원하는 기능에 맞게 아바타 애니메이션을 제어해 봅시다. # ActionStateChangedEvent로 제어 아바타는 **AvatarRoot**에 **Body**와 **Face**로 나뉘어 있습니다. **Body**는 말 그대로 아바타의 몸통이며 **Face**는 아바타의 얼굴을 뜻합니다. 아바타의 **Body**와 **Face**에 어떤 애니메이션을 재생할지는 [ActionStateChangedEvent](/apiRefer

[task] | single_turn [pass] | ⏳ 미판정 [title] | 아바타 애니메이션 제어하기 [question] | 아바타의 특정 애니메이션을 원하는 속도로 빠르게 또는 느리게 재생하려면 ActionStateChangedEvent의 프로퍼티 중 어떤 값을 어떻게 설정해야 하나요? [answer] | 아바타의 특정 애니메이션을 원하는 속도로 빠르게 또는 느리게 재생하려면 `ActionStateChangedEvent`의 **`PlayRate`** 프로퍼티 값을 조절해야 합니다. `PlayRate`는 애니메이션의 재생 속도를 의미합니다. 기본값이 1일 때를 기준으로, 이 값을 1보다 크게 설정하면 애니메이션이 빠르게 재생되고, 1보다 작게 설정하면 느리게 재생됩니다. 아래는 `ActionStateChangedEvent`를 생성하여 특정 속도로 애니메이션을 재생하는 mLua 코드 예시입니다. ```lua local body = [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 아바타 애니메이션을 제어하는 3가지 방법을 살펴봅니다. 본 과정을 통해 크리에이터가 원하는 기능에 맞게 아바타 애니메이션을 제어해 봅시다. # ActionStateChangedEvent로 제어 아바타는 **AvatarRoot**에 **Body**와 **Face**로 나뉘어 있습니다. **Body**는 말 그대로 아바타의 몸통이며 **Face**는 아바타의 얼굴을 뜻합니다. 아바타의 **Body**와 **Face**에 어떤 애니메이션을 재생할지는 [ActionStateChangedEvent](/apiRefer

← → 방향키로 페이지 이동 · 숫자 입력 후 Enter로 점프