[task] | wikipedia [title] | 아틀라스블루프린트 에디터 [category] | Guides [rephrased] | # 스프라이트/애니메이션 아틀라스 블루프린트 에디터 **스프라이트/애니메이션 아틀라스 블루프린트 에디터**는 메이플스토리 월드(MapleStory Worlds)에서 여러 스프라이트를 하나의 텍스처 아틀라스로 패킹(Packing)하는 기능을 제공하는 도구입니다. 아틀라스로 묶인 스프라이트는 별도의 추가 처리 없이 바로 사용 가능하며, 이를 통해 월드의 렌더링 성능을 개선할 수 있습니다. ## 주요 제약 사항 스프라이트를 아틀라스로 패킹할 때 준수해야 할 기술적 제약은 다음과 같습니다. 첫째, 하나의 스프라이트는 단 하나의 아틀 [original] | 여러 스프라이트를 아틀라스로 패킹하는 방법은 아래와 같습니다. 아틀라스로 묶인 스프라이트는 별도의 추가 처리가 필요하지 않습니다. 스프라이트는 하나의 아틀라스에만 적용할 수 있습니다. 그러므로 만약 패킹된 스프라이트를 다른 아틀라스에 중복으로 패킹하기 위해 AtlasBlueprint의 Sprite RUIDs to Pack 목록에 스프라이트가 추가했더라도, 아틀라스로 패킹되지 않고 해당 스프라이트 칸에 에러 아이콘이 나타납니다. 또한 다른 크리에이터가 공유한 RUID를 내 아틀라스로 패킹할 수 없습니다. 스프라이트를 아틀라스로 묶을 [chunk_id] | Guides:1039:2
[task] | diverse_qa [title] | 아틀라스블루프린트 에디터 [category] | Guides [rephrased] | 질문: 여러 스프라이트를 하나의 아틀라스로 패킹하기 위해 생성해야 하는 에셋 이름은 무엇인가요? 답변: Workspace - MyDesk 콘텍스트 메뉴에서 Create AtlasBlueprint를 선택하여 새로운 MyAtlasBlueprint를 생성합니다. 질문: 하나의 스프라이트는 최대 몇 개의 아틀라스에 적용할 수 있나요? 답변: 하나의 스프라이트는 하나의 아틀라스에만 적용할 수 있습니다. 질문: 이미 다른 아틀라스에 패킹된 스프라이트를 새로운 AtlasBlueprint의 Sprite RUIDs to Pack 목록에 추가하면 [original] | 여러 스프라이트를 아틀라스로 패킹하는 방법은 아래와 같습니다. 아틀라스로 묶인 스프라이트는 별도의 추가 처리가 필요하지 않습니다. 스프라이트는 하나의 아틀라스에만 적용할 수 있습니다. 그러므로 만약 패킹된 스프라이트를 다른 아틀라스에 중복으로 패킹하기 위해 AtlasBlueprint의 Sprite RUIDs to Pack 목록에 스프라이트가 추가했더라도, 아틀라스로 패킹되지 않고 해당 스프라이트 칸에 에러 아이콘이 나타납니다. 또한 다른 크리에이터가 공유한 RUID를 내 아틀라스로 패킹할 수 없습니다. 스프라이트를 아틀라스로 묶을 [chunk_id] | Guides:1039:2
[task] | extract_knowledge [title] | 아틀라스블루프린트 에디터 [category] | Guides [rephrased] | # 스프라이트/애니메이션 아틀라스 블루프린트 패킹 ## 개념 설명 아틀라스 블루프린트(AtlasBlueprint)는 여러 스프라이트를 하나의 텍스처 시트에 패킹(Packing)하여 저장하는 리소스 형식입니다. 개별 스프라이트를 하나씩 로드하는 것보다 드로 콜(Draw Call)을 줄이고 메모리 효율을 높이는 데 사용됩니다. 하나의 스프라이트 RUID(Resource UID)는 오직 하나의 아틀라스에만 포함될 수 있습니다. ## API 및 에디터 사용법 아틀라스 패킹은 mLua 스크립트 컴포넌트 내의 직접적인 코드 호출보다는 ** [original] | | 번호 | 설명 | | --- | --- | | | 스프라이트를 검색할 수 있습니다. | | | <ul><li>**사용 중인 리소스**: 편집 중인 맵에서 사용 중인 스프라이트를 보여줍니다.</li><li>**Workspace**: Workspace에 추가한 스프라이트를 보여줍니다.</li><li>**기본 UI**: MSW에서 기본적으로 제공하는 UI만 보여줍니다.</li><li>**내 리소스**: 크리에이터가 직접 추가한 스프라이트만 보여줍니다.</li><li>**MSW 리소스**: MSW에서 제공하는 리소스만 보여줍니다.< [chunk_id] | Guides:1039:1
[task] | distill [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | # 렉트 타일 제작 가이드 (Adobe Photoshop) 크리에이터가 월드에 활용할 렉트 타일(Rect Tile)을 Adobe Photoshop으로 제작하는 방법을 안내합니다. 완성된 시트는 **[아틀라스 활용하기](/docs/?postId=687)** 가이드를 참고하여 일정한 크기로 잘라 타일로 변환합니다. * **참고 문서**: [RectTileMap의 활용](/docs/?postId=589) ## 1. 타일 종류 및 규격 MSW에서 사용하는 타일 종류와 작업 규격은 다음과 같습니다. | 종류 | 용도 | 작업 규 [original] | # 학습 과정 안내 크리에이터의 월드에 어울리는 특색 있는 렉트 타일을 그리는 방법을 소개합니다. 크리에이터가 사용하기 편한 소프트웨어를 사용해 타일을 제작할 수 있습니다. 이 가이드는 Adobe Photoshop을 사용해 타일을 제작합니다. 제작한 시트는 [아틀라스 활용하기](/docs/?postId=687)를 참고해 이미지를 일정한 크기로 잘라 타일로 활용할 수 있습니다. ##### 참고 가이드 [RectTileMap의 활용](/docs/?postId=589) [아틀라스 활용하기](/docs/?postId=687) # 타일 [chunk_id] | Guides:1040:0
[task] | knowledge_list [title] | 정규식 [category] | Guides [rephrased] | 제공된 문서의 내용을 바탕으로 핵심 사실을 추출하여 목록으로 정리합니다. ```lua -- 참고: 아래는 문서에 명시된 API 사용 예시이며, 실제 스크립트 컴포넌트 구조는 아니므로 코드 블록으로만 제시합니다. ``` 1. 메이플스토리 월드는 루아 기본 문자열 패턴 일치 외에도 `Regex` 클래스를 통해 정규식(Regular expression)을 지원하여 특정 문자 패턴 찾기, 텍스트 유효성 검사, 텍스트 하위 문자열 추출·편집·변경·삭제 작업을 수행할 수 있습니다. 2. `Regex` 객체는 `Regex(String pat [original] | # 학습 과정 소개 정규식(Regular expression)을 활용하면 텍스트를 유연하고 효율적으로 처리할 수 있습니다. 메이플스토리 월드에서는 기본적인 루아 문자열 패턴 일치 외에도 정규식을 지원합니다. 정규식의 패턴 일치 표기법을 사용하면 많은 양의 텍스트 구문을 분석하여 아래의 항목을 수행할 수 있습니다. * 특정 문자 패턴 찾기 * 텍스트 유효성을 검사하여 미리 정의된 패턴과 일치하는지 확인 * 텍스트 하위 문자열을 추출, 편집, 변경, 삭제할 수 있음 단, 정규식은 다소 무겁기 때문에 간단한 정규식 작업을 할 때에는 [chunk_id] | Guides:1041:0
[task] | wikipedia [title] | 아틀라스블루프린트 에디터 [category] | Guides [rephrased] | 아래는 제공된 원문의 기술적 사실을 바탕으로 위키백과 항목의 양식에 맞춰 재작성한 내용입니다. # AtlasBlueprint (스프라이트/애니메이션 아틀라스) **AtlasBlueprint**는 메이플스토리 월드(MapleStory Worlds)의 에디터 환경에서 개별 스프라이트(Sprite)와 애니메이션 클립(AnimationClip) 리소스를 하나의 텍스처 아틀라스로 묶어 효율적으로 관리하기 위한 도구이다. 이 기능은 주로 블루프린트 에디터 내 '객체 표현' 관련 가이드에 위치하며, 리소스 검색, 선택, 아틀라스 설정 및 패 [original] | | 번호 | 설명 | | --- | --- | | | 스프라이트를 검색할 수 있습니다. | | | <ul><li>**사용 중인 리소스**: 편집 중인 맵에서 사용 중인 스프라이트를 보여줍니다.</li><li>**Workspace**: Workspace에 추가한 스프라이트를 보여줍니다.</li><li>**기본 UI**: MSW에서 기본적으로 제공하는 UI만 보여줍니다.</li><li>**내 리소스**: 크리에이터가 직접 추가한 스프라이트만 보여줍니다.</li><li>**MSW 리소스**: MSW에서 제공하는 리소스만 보여줍니다.< [chunk_id] | Guides:1039:1
[task] | distill [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | # 렉트 타일 제작 도로, 오솔길 등 길 제작 시 최소 12개의 타일이 필요합니다. 9개와 4개로 나누어 정사각형으로 배치하면 작업이 수월합니다. * **레이어 관리:** 타일 종류별로 레이어를 분리하여 관리하는 것을 권장합니다. * **검증:** 캔버스 여유 공간에 타일을 조합 배치하여 연결 자연스러움을 미리 확인하세요. ### 기본 연결 타일 제작 순서 1. **기본 타일 배치:** 12칸에 제작한 기본 타일을 각각의 레이어에 옮깁니다. 2. **9타일 안쪽 삭제:** 빈 레이어에서 9타일 안쪽 삭제 영역을 설정하 [original] | 도로, 오솔길 같은 길을 만들기 위해서는 최소 12개의 타일이 필요하며, 크리에이터의 의도에 따라 더 필요할 수도 있습니다. 12개의 타일은 9개, 4개씩 정사각형 모양으로 모아 그리면 수월하게 작업할 수 있습니다. 연결 타일을 그릴 때는 레이어 한 개를 사용하는 것보단, 여러 개의 레이어를 사용해 적절히 타일을 나누어 그리는 것이 좋습니다. 또한, 이어지는 타일을 만들 때 캔버스 크기를 더 크게 만들어, 남는 여유 공간에 제작한 타일을 이리저리 응용해 배치해보며 타일들이 어울리는지 확인하는 작업을 거치는 것을 추천합니다. 1. [chunk_id] | Guides:1040:1
[task] | distill [title] | 정규식 [category] | Guides [rephrased] | # 정규식 (Regex) 메이플스토리 월드에서 복잡한 텍스트 분석(패턴 찾기, 유효성 검사, 추출/편집)을 수행할 때 사용합니다. 간단한 작업은 루아 기본 문자열 패턴을 권장하며, 무거운 연산이 필요한 경우에만 정규식을 활용하십시오. **참고:** [Regex API Reference](/apiReference/Misc/Regex), [정규식 언어 가이드](/docs/?postId=1043) ## 생성자 `Regex(String pattern)` 또는 `Regex(String pattern, RegexOption option [original] | # 학습 과정 소개 정규식(Regular expression)을 활용하면 텍스트를 유연하고 효율적으로 처리할 수 있습니다. 메이플스토리 월드에서는 기본적인 루아 문자열 패턴 일치 외에도 정규식을 지원합니다. 정규식의 패턴 일치 표기법을 사용하면 많은 양의 텍스트 구문을 분석하여 아래의 항목을 수행할 수 있습니다. * 특정 문자 패턴 찾기 * 텍스트 유효성을 검사하여 미리 정의된 패턴과 일치하는지 확인 * 텍스트 하위 문자열을 추출, 편집, 변경, 삭제할 수 있음 단, 정규식은 다소 무겁기 때문에 간단한 정규식 작업을 할 때에는 [chunk_id] | Guides:1041:0
[task] | diverse_qa [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | 질문: 이 가이드에서 타일 제작에 사용하는 소프트웨어는 무엇인가요? 답변: Adobe Photoshop입니다. 질문: 제작한 타일 시트를 일정한 크기로 잘라 활용하기 위해 참고해야 하는 가이드의 이름은 무엇인가요? 답변: 아틀라스 활용하기입니다. 질문: MSW에서 나누는 타일 종류는 총 몇 가지로 분류되며, 각각 무엇인가요? 답변: 3가지로 분류되며, 기본 타일, 연결 타일, 높이 타일입니다. 질문: 기본 타일은 어떤 두 가지로 나눌 수 있나요? 답변: 패턴이 없는 타일과 패턴이 있는 타일로 나눌 수 있습니다. 질문: '패턴 [original] | # 학습 과정 안내 크리에이터의 월드에 어울리는 특색 있는 렉트 타일을 그리는 방법을 소개합니다. 크리에이터가 사용하기 편한 소프트웨어를 사용해 타일을 제작할 수 있습니다. 이 가이드는 Adobe Photoshop을 사용해 타일을 제작합니다. 제작한 시트는 [아틀라스 활용하기](/docs/?postId=687)를 참고해 이미지를 일정한 크기로 잘라 타일로 활용할 수 있습니다. ##### 참고 가이드 [RectTileMap의 활용](/docs/?postId=589) [아틀라스 활용하기](/docs/?postId=687) # 타일 [chunk_id] | Guides:1040:0
[task] | knowledge_list [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | 제시된 문서에는 mLua 스크립트 언어, API, 코드 블록, 서버/클라이언트 실행 공간, 또는 기술적인 동기화 제약 사항에 대한 정보가 **전혀 포함되어 있지 않습니다.** 해당 문서는 Adobe Photoshop을 사용하여 `RectTileMap`에 활용할 그래픽 리소스(타일 이미지)를 제작하는 **아트 가이드**입니다. 따라서 요청하신 "API 이름·매개변수·반환 타입·동기화/서버·클라이언트 제약"을 명시하는 작업은 원문에 없는 사실을 지어내게 되므로 수행할 수 없습니다. 대신, 원문에 명시된 **그래픽 리소스 제작 관련 [original] | # 학습 과정 안내 크리에이터의 월드에 어울리는 특색 있는 렉트 타일을 그리는 방법을 소개합니다. 크리에이터가 사용하기 편한 소프트웨어를 사용해 타일을 제작할 수 있습니다. 이 가이드는 Adobe Photoshop을 사용해 타일을 제작합니다. 제작한 시트는 [아틀라스 활용하기](/docs/?postId=687)를 참고해 이미지를 일정한 크기로 잘라 타일로 활용할 수 있습니다. ##### 참고 가이드 [RectTileMap의 활용](/docs/?postId=589) [아틀라스 활용하기](/docs/?postId=687) # 타일 [chunk_id] | Guides:1040:0
[task] | wikipedia [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | # Rect Tile 제작 가이드 본 문서는 메이플스토리 월드(MapleStory Worlds)에서 크리에이터가 특색 있는 Rect Tile(렉트 타일)을 제작하는 방법을 안내합니다. 타일 제작에는 Adobe Photoshop과 같은 이미지 편집 소프트웨어를 활용하며, 제작된 시트는 [아틀라스 활용하기](/docs/?postId=687) 가이드에 따라 일정한 크기로 잘라 타일로 변환하여 사용할 수 있습니다. ## 타일 종류 월드의 맵을 다채롭게 꾸미기 위해 다양한 종류의 타일이 필요합니다. 예를 들어 차도를 제작할 경우 교차로 [original] | # 학습 과정 안내 크리에이터의 월드에 어울리는 특색 있는 렉트 타일을 그리는 방법을 소개합니다. 크리에이터가 사용하기 편한 소프트웨어를 사용해 타일을 제작할 수 있습니다. 이 가이드는 Adobe Photoshop을 사용해 타일을 제작합니다. 제작한 시트는 [아틀라스 활용하기](/docs/?postId=687)를 참고해 이미지를 일정한 크기로 잘라 타일로 활용할 수 있습니다. ##### 참고 가이드 [RectTileMap의 활용](/docs/?postId=589) [아틀라스 활용하기](/docs/?postId=687) # 타일 [chunk_id] | Guides:1040:0
[task] | wikipedia [title] | 정규식 [category] | Guides [rephrased] | # 정규식 (Regular Expression) 정규식은 텍스트를 유연하고 효율적으로 처리하기 위한 패턴 매칭 기법입니다. 메이플스토리 월드에서는 표준 루아(Lua)의 문자열 패턴 일치 기능과 별도로 정규식 엔진을 지원합니다. 이를 통해 대량의 텍스트를 분석하여 특정 문자 패턴을 검색하거나, 텍스트 유효성을 검사하여 미리 정의된 형식과 일치하는지 확인하거나, 특정 하위 문자열을 추출·편집·변경·삭제하는 등의 작업을 수행할 수 있습니다. 다만, 정규식 엔진은 계산 비용이 다소 높으므로 간단한 매칭 작업에는 루아 내장 문자열 패턴 [original] | # 학습 과정 소개 정규식(Regular expression)을 활용하면 텍스트를 유연하고 효율적으로 처리할 수 있습니다. 메이플스토리 월드에서는 기본적인 루아 문자열 패턴 일치 외에도 정규식을 지원합니다. 정규식의 패턴 일치 표기법을 사용하면 많은 양의 텍스트 구문을 분석하여 아래의 항목을 수행할 수 있습니다. * 특정 문자 패턴 찾기 * 텍스트 유효성을 검사하여 미리 정의된 패턴과 일치하는지 확인 * 텍스트 하위 문자열을 추출, 편집, 변경, 삭제할 수 있음 단, 정규식은 다소 무겁기 때문에 간단한 정규식 작업을 할 때에는 [chunk_id] | Guides:1041:0
[task] | knowledge_list [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | 제시된 원문은 메이플스토리 월드(mLua) 스크립트 API, 함수, 또는 코드가 아닌 **아트 에셋(타일) 제작 가이드**입니다. 따라서 원문에 명시된 API 이름, 매개변수, 반환 타입, 동기화/서버·클라이언트 제약은 존재하지 않습니다. 요청하신 대로 원문에 있는 정보만 사용하여 핵심 사실을 독립적인 문장으로 정리하면 다음과 같습니다. 1. 도로나 오솔길과 같은 길을 만들기 위해 최소 12개의 타일이 필요하며, 크리에이터의 의도에 따라 더 많은 타일이 요구될 수 있다. 2. 12개의 타일은 9개와 4개씩 정사각형 모양으로 모아 [original] | 도로, 오솔길 같은 길을 만들기 위해서는 최소 12개의 타일이 필요하며, 크리에이터의 의도에 따라 더 필요할 수도 있습니다. 12개의 타일은 9개, 4개씩 정사각형 모양으로 모아 그리면 수월하게 작업할 수 있습니다. 연결 타일을 그릴 때는 레이어 한 개를 사용하는 것보단, 여러 개의 레이어를 사용해 적절히 타일을 나누어 그리는 것이 좋습니다. 또한, 이어지는 타일을 만들 때 캔버스 크기를 더 크게 만들어, 남는 여유 공간에 제작한 타일을 이리저리 응용해 배치해보며 타일들이 어울리는지 확인하는 작업을 거치는 것을 추천합니다. 1. [chunk_id] | Guides:1040:1
[task] | knowledge_list [title] | 정규식 [category] | Guides [rephrased] | * `Replace(String origin, String replacement)` 메서드는 `Regex` 인스턴스에서 호출되며, 입력 문자열 `origin` 내 정규식 패턴과 일치하는 모든 항목을 `replacement` 문자열로 대체하여 결과 문자열을 반환합니다. * `Replace(String origin, String replacement, Int32 count)` 메서드는 `Regex` 인스턴스에서 호출되며, 입력 문자열 `origin` 내 정규식 패턴과 일치하는 항목을 `count` 개까지 `replacement` [original] | `Replace(String origin, String replacement)`는 입력 문자열에서 정규식 패턴과 일치하는 모든 항목을 대체 문자열(replacement)로 변경합니다. ```lua -- 일반 local origin = "This is text with far too much white space." local pattern = "\\s+" local regex = Regex(pattern) local result = regex:Replace(origin, " ") log(result) -- [chunk_id] | Guides:1041:2
[task] | distill [title] | 정규식 [category] | Guides [rephrased] | # 정규식 (Regex) API `Regex` 객체를 생성하여 문자열에서 패턴을 검색하거나 치환합니다. ### Match 단일 매칭 결과를 반환합니다. 실패 시 `nil`을 반환합니다. 1. **`Match(String origin)`**: 전체 문자열에서 첫 번째 일치 항목을 검색합니다. * `match.Success`: 매칭 성공 여부 (boolean) * `match.Text`: 일치한 문자열 * `match:NextMatch()`: 다음 일치 항목으로 이동 ```lua local re [original] | `Match(String origin)`는 입력 문자열에서 정규식 패턴과 일치하는 첫 항목을 검색합니다. ```lua local input = "One car red car blue car" local pattern = "(\\w+)\\s+(car)" local regex = Regex(pattern, RegexOption.IgnoreCase) local match = regex:Match(input) while match.Success do log(match.Text) match = match:Ne [chunk_id] | Guides:1041:1
[task] | wikipedia [title] | 정규식 [category] | Guides [rephrased] | **Replace 메서드** `Replace(String origin, String replacement)` 메서드는 입력 문자열에서 정규식 패턴과 일치하는 모든 항목을 지정된 대체 문자열(replacement)으로 변경합니다. ```lua -- 일반 local origin = "This is text with far too much white space." local pattern = "\\s+" local regex = Regex(pattern) local result = regex:Replace(or [original] | `Replace(String origin, String replacement)`는 입력 문자열에서 정규식 패턴과 일치하는 모든 항목을 대체 문자열(replacement)로 변경합니다. ```lua -- 일반 local origin = "This is text with far too much white space." local pattern = "\\s+" local regex = Regex(pattern) local result = regex:Replace(origin, " ") log(result) -- [chunk_id] | Guides:1041:2
[task] | knowledge_list [title] | 정규식 [category] | Guides [rephrased] | ```lua Regex:Match(String origin) 메서드는 입력 문자열 전체에서 정규식 패턴과 일치하는 첫 항목을 검색하며, 성공 시 Match 객체를 반환하고 실패 시 nil을 반환합니다. Regex:Match(String origin, Int32 startIndex) 메서드는 입력 문자열의 지정된 시작 위치부터 정규식 패턴과 일치하는 첫 번째 항목을 검색하며, 성공 시 Match 객체를 반환하고 실패 시 nil을 반환합니다. Regex:Match(String origin, Int32 startIndex, Int32 l [original] | `Match(String origin)`는 입력 문자열에서 정규식 패턴과 일치하는 첫 항목을 검색합니다. ```lua local input = "One car red car blue car" local pattern = "(\\w+)\\s+(car)" local regex = Regex(pattern, RegexOption.IgnoreCase) local match = regex:Match(input) while match.Success do log(match.Text) match = match:Ne [chunk_id] | Guides:1041:1
[task] | distill [title] | 정규식 [category] | Guides [rephrased] | **ReplaceByEvaluator** 정규식 매칭 결과를 `evaluator` 함수의 반환값으로 치환합니다. 매칭 실패 시 `nil` 반환. **1. 전체 치환** ```lua -- Signature: ReplaceByEvaluator(String origin, function<RegexMatch>→string evaluator) ``` ```lua local regex = Regex("\\w+ ", RegexOption.IgnorePatternWhitespace) local function evaluator(match) [original] | `ReplaceByEvaluator(String origin, function<RegexMatch>→string evaluator)`는 정규식 패턴과 일치하는 모든 항목을 evaluator로 반환된 문자열로 변경합니다. 정규식이 실패하면 nil이 반환됩니다. ```lua local origin = "letter alphabetical missing lack release penchant slack acryllic laundry cease" local pattern = "\\w+ " local regex = Regex(patte [chunk_id] | Guides:1041:3
[task] | distill [title] | 정규식 [category] | Guides [rephrased] | ### Regex: Replace 메서드 정규식 패턴과 일치하는 문자열을 대체합니다. **1. 전체 대체** `Replace(String origin, String replacement)` 입력 문자열에서 패턴과 일치하는 모든 항목을 `replacement`로 변경합니다. ```lua local origin = "This is text with far too much white space." local regex = Regex("\\s+") local result = regex:Replace(origin, " [original] | `Replace(String origin, String replacement)`는 입력 문자열에서 정규식 패턴과 일치하는 모든 항목을 대체 문자열(replacement)로 변경합니다. ```lua -- 일반 local origin = "This is text with far too much white space." local pattern = "\\s+" local regex = Regex(pattern) local result = regex:Replace(origin, " ") log(result) -- [chunk_id] | Guides:1041:2
[task] | diverse_qa [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | 질문: 도로나 오솔길 같은 길을 만들 때 최소 몇 개의 타일이 필요한가요? 답변: 도로, 오솔길 같은 길을 만들기 위해서는 최소 12개의 타일이 필요합니다. 질문: 12개의 타일을 작업하기 수월하게 그리기 위해 어떤 모양으로 모으는 것이 좋나요? 답변: 12개의 타일은 9개, 4개씩 정사각형 모양으로 모아 그리면 수월하게 작업할 수 있습니다. 질문: 연결 타일을 그릴 때 레이어 사용에 대한 권장 사항은 무엇인가요? 답변: 연결 타일을 그릴 때는 레이어 한 개를 사용하는 것보다 여러 개의 레이어를 사용해 적절히 타일을 나누어 그리 [original] | 도로, 오솔길 같은 길을 만들기 위해서는 최소 12개의 타일이 필요하며, 크리에이터의 의도에 따라 더 필요할 수도 있습니다. 12개의 타일은 9개, 4개씩 정사각형 모양으로 모아 그리면 수월하게 작업할 수 있습니다. 연결 타일을 그릴 때는 레이어 한 개를 사용하는 것보단, 여러 개의 레이어를 사용해 적절히 타일을 나누어 그리는 것이 좋습니다. 또한, 이어지는 타일을 만들 때 캔버스 크기를 더 크게 만들어, 남는 여유 공간에 제작한 타일을 이리저리 응용해 배치해보며 타일들이 어울리는지 확인하는 작업을 거치는 것을 추천합니다. 1. [chunk_id] | Guides:1040:1
[task] | diverse_qa [title] | 정규식 [category] | Guides [rephrased] | 질문: 메이플스토리 월드에서 정규식을 사용할 때의 주요 목적은 무엇인가요? 답변: 텍스트를 유연하고 효율적으로 처리하기 위해 특정 문자 패턴 찾기, 텍스트 유효성 검사, 텍스트 하위 문자열 추출·편집·변경·삭제 등을 수행하기 위한 것입니다. 질문: 간단한 정규식 작업이 필요한 경우 어떤 기능을 활용하는 것이 권장되나요? 답변: 정규식이 다소 무거우므로, 간단한 정규식 작업이 필요한 경우에는 루아 문자열 패턴 일치 기능을 활용하는 것이 좋습니다. 질문: `Regex` 생성자를 통해 정규식 객체를 생성할 때 사용할 수 있는 옵션은 [original] | # 학습 과정 소개 정규식(Regular expression)을 활용하면 텍스트를 유연하고 효율적으로 처리할 수 있습니다. 메이플스토리 월드에서는 기본적인 루아 문자열 패턴 일치 외에도 정규식을 지원합니다. 정규식의 패턴 일치 표기법을 사용하면 많은 양의 텍스트 구문을 분석하여 아래의 항목을 수행할 수 있습니다. * 특정 문자 패턴 찾기 * 텍스트 유효성을 검사하여 미리 정의된 패턴과 일치하는지 확인 * 텍스트 하위 문자열을 추출, 편집, 변경, 삭제할 수 있음 단, 정규식은 다소 무겁기 때문에 간단한 정규식 작업을 할 때에는 [chunk_id] | Guides:1041:0
[task] | extract_knowledge [title] | 아틀라스블루프린트 에디터 [category] | Guides [rephrased] | # 스프라이트/애니메이션 아틀라스 패킹 (AtlasBlueprint) ## 1. 개념 설명 **AtlasBlueprint**는 여러 스프라이트나 애니메이션 클립을 하나의 텍스처 아틀라스로 패킹(Packing)하는 기능을 제공합니다. 아틀라스로 묶인 스프라이트는 런타임에서 별도의 추가 처리 없이 렌더링됩니다. 아틀라스 패킹은 월드의 렌더링 성능을 개선하기 위한 목적으로, 특히 한 화면에 동시 등장하거나 겹쳐서 나타나는 스프라이트들을 하나의 아틀라스로 묶는 것이 권장됩니다. ### 제약 사항 1. **단일 소속 제한**: 하나의 [original] | 여러 스프라이트를 아틀라스로 패킹하는 방법은 아래와 같습니다. 아틀라스로 묶인 스프라이트는 별도의 추가 처리가 필요하지 않습니다. 스프라이트는 하나의 아틀라스에만 적용할 수 있습니다. 그러므로 만약 패킹된 스프라이트를 다른 아틀라스에 중복으로 패킹하기 위해 AtlasBlueprint의 Sprite RUIDs to Pack 목록에 스프라이트가 추가했더라도, 아틀라스로 패킹되지 않고 해당 스프라이트 칸에 에러 아이콘이 나타납니다. 또한 다른 크리에이터가 공유한 RUID를 내 아틀라스로 패킹할 수 없습니다. 스프라이트를 아틀라스로 묶을 [chunk_id] | Guides:1039:2
[task] | wikipedia [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | # 리소스 제작: 레프트 타일 제작하기 도로나 오솔길과 같은 길을 표현하기 위한 연결 타일(Connector Tile)을 제작하는 과정은 최소 12개의 타일 요소를 포함해야 합니다. 크리에이터의 디자인 의도에 따라 이보다 더 많은 타일이 필요할 수 있습니다. 작업의 효율성을 높이기 위해, 이 12개의 타일은 9개와 4개의 정사각형 그룹으로 나누어 배치하는 것이 권장됩니다. 연결 타일을 그릴 때는 모든 요소를 단일 레이어에 그리는 것보다, 여러 개의 레이어를 사용하여 타일 유형별로 분리하여 작업하는 것이 유지보수성과 편집 유연성 [original] | 도로, 오솔길 같은 길을 만들기 위해서는 최소 12개의 타일이 필요하며, 크리에이터의 의도에 따라 더 필요할 수도 있습니다. 12개의 타일은 9개, 4개씩 정사각형 모양으로 모아 그리면 수월하게 작업할 수 있습니다. 연결 타일을 그릴 때는 레이어 한 개를 사용하는 것보단, 여러 개의 레이어를 사용해 적절히 타일을 나누어 그리는 것이 좋습니다. 또한, 이어지는 타일을 만들 때 캔버스 크기를 더 크게 만들어, 남는 여유 공간에 제작한 타일을 이리저리 응용해 배치해보며 타일들이 어울리는지 확인하는 작업을 거치는 것을 추천합니다. 1. [chunk_id] | Guides:1040:1
[task] | diverse_qa [title] | 정규식 [category] | Guides [rephrased] | 질문: `Match(String origin)` 메서드의 주요 기능은 무엇인가요? 답변: `Match(String origin)`는 입력 문자열에서 정규식 패턴과 일치하는 첫 항목을 검색합니다. 질문: 아래 코드의 실행 결과는 어떻게 되며, 그 이유는 무엇인가요? ```lua local input = "One car red car blue car" local pattern = "(\\w+)\\s+(car)" local regex = Regex(pattern, RegexOption.IgnoreCase) local match = re [original] | `Match(String origin)`는 입력 문자열에서 정규식 패턴과 일치하는 첫 항목을 검색합니다. ```lua local input = "One car red car blue car" local pattern = "(\\w+)\\s+(car)" local regex = Regex(pattern, RegexOption.IgnoreCase) local match = regex:Match(input) while match.Success do log(match.Text) match = match:Ne [chunk_id] | Guides:1041:1
[task] | knowledge_list [title] | 정규식 [category] | Guides [rephrased] | `Regex` 객체의 `ReplaceByEvaluator` 메서드는 `String origin`과 `function<RegexMatch>→string evaluator`를 인자로 받아, 정규식 패턴과 일치하는 모든 항목을 `evaluator` 함수가 반환한 문자열로 치환하며, 정규식 매칭에 실패할 경우 `nil`을 반환합니다. `Regex` 객체의 `ReplaceByEvaluator` 메서드는 `String origin`, `function<RegexMatch>→string evaluator`, `Int32 count`를 인자로 받 [original] | `ReplaceByEvaluator(String origin, function<RegexMatch>→string evaluator)`는 정규식 패턴과 일치하는 모든 항목을 evaluator로 반환된 문자열로 변경합니다. 정규식이 실패하면 nil이 반환됩니다. ```lua local origin = "letter alphabetical missing lack release penchant slack acryllic laundry cease" local pattern = "\\w+ " local regex = Regex(patte [chunk_id] | Guides:1041:3
[task] | wikipedia [title] | 정규식 [category] | Guides [rephrased] | `Regex` 컴포넌트는 문자열 처리를 위한 정규식 기능을 제공합니다. 주요 메서드인 `Match`와 `Matches`는 각각 일치하는 항목의 검색 범위에 따라 동작이 구분되며, 입력 문자열 내에서 지정된 패턴을 찾아 반환합니다. `Match(String origin)` 메서드는 입력 문자열 전체에서 정규식 패턴과 일치하는 첫 번째 항목을 검색합니다. 이 메서드는 매칭 객체를 반환하며, `Success` 속성이 참(true)인 동안 `NextMatch()` 메서드를 호출하여 순차적으로 다음 일치 항목을 탐색할 수 있습니다. 매칭 [original] | `Match(String origin)`는 입력 문자열에서 정규식 패턴과 일치하는 첫 항목을 검색합니다. ```lua local input = "One car red car blue car" local pattern = "(\\w+)\\s+(car)" local regex = Regex(pattern, RegexOption.IgnoreCase) local match = regex:Match(input) while match.Success do log(match.Text) match = match:Ne [chunk_id] | Guides:1041:1
[task] | extract_knowledge [title] | 렉트 타일 제작하기 [category] | Guides [rephrased] | # 리소스 제작: 연결 타일 및 높이 타일 제작 가이드 본 절에서는 메이플스토리 월드 맵 제작 시 사용되는 연결 타일(도로, 오솔길)과 높이 타일(벽, 계단)의 제작 프로세스와 도구 사용법을 설명합니다. ## 1. 연결 타일 제작 도로나 오솔길을 표현하기 위한 연결 타일은 최소 12개의 타일로 구성됩니다. 이는 3x3 정사각형(9개)과 2x2 정사각형(4개)을 조합한 형태로, 이 구조를 기반으로 타일을 배치하면 작업 효율이 높아집니다. ### 1.1. 기본 타일 배치 및 레이어 분리 1. 12칸에 해당하는 기본 타일들을 각각 [original] | 도로, 오솔길 같은 길을 만들기 위해서는 최소 12개의 타일이 필요하며, 크리에이터의 의도에 따라 더 필요할 수도 있습니다. 12개의 타일은 9개, 4개씩 정사각형 모양으로 모아 그리면 수월하게 작업할 수 있습니다. 연결 타일을 그릴 때는 레이어 한 개를 사용하는 것보단, 여러 개의 레이어를 사용해 적절히 타일을 나누어 그리는 것이 좋습니다. 또한, 이어지는 타일을 만들 때 캔버스 크기를 더 크게 만들어, 남는 여유 공간에 제작한 타일을 이리저리 응용해 배치해보며 타일들이 어울리는지 확인하는 작업을 거치는 것을 추천합니다. 1. [chunk_id] | Guides:1040:1
[task] | diverse_qa [title] | 정규식 [category] | Guides [rephrased] | 질문: `Replace(String origin, String replacement)` 메서드의 주요 기능은 무엇인가요? 답변: 입력 문자열에서 정규식 패턴과 일치하는 모든 항목을 대체 문자열(replacement)로 변경합니다. 질문: 다음 코드에서 `log(result)`로 출력되는 값은 무엇인가요? ```lua local origin = "This is text with far too much white space." local pattern = "\\s+" local regex = Regex(pattern) [original] | `Replace(String origin, String replacement)`는 입력 문자열에서 정규식 패턴과 일치하는 모든 항목을 대체 문자열(replacement)로 변경합니다. ```lua -- 일반 local origin = "This is text with far too much white space." local pattern = "\\s+" local regex = Regex(pattern) local result = regex:Replace(origin, " ") log(result) -- [chunk_id] | Guides:1041:2
[task] | extract_knowledge [title] | 정규식 [category] | Guides [rephrased] | # 정규식(Regex) 활용 ## 개념 설명 정규식(Regular expression)은 텍스트를 유연하고 효율적으로 처리하기 위한 패턴 매칭 기술입니다. 메이플스토리 월드에서는 기본 루아 문자열 패턴 일치 기능 외에도 정규식을 지원하여, 대량의 텍스트 구문을 분석하거나 특정 문자 패턴을 찾기, 텍스트 유효성 검사, 하위 문자열의 추출·편집·변경·삭제 등의 작업을 수행할 수 있습니다. 단, 정규식 연산은 상대적으로 높은 연산 비용(무거움)을 발생시킵니다. 따라서 간단한 문자열 처리 작업이 필요한 경우에는 정규식 대신 기본 루아 [original] | # 학습 과정 소개 정규식(Regular expression)을 활용하면 텍스트를 유연하고 효율적으로 처리할 수 있습니다. 메이플스토리 월드에서는 기본적인 루아 문자열 패턴 일치 외에도 정규식을 지원합니다. 정규식의 패턴 일치 표기법을 사용하면 많은 양의 텍스트 구문을 분석하여 아래의 항목을 수행할 수 있습니다. * 특정 문자 패턴 찾기 * 텍스트 유효성을 검사하여 미리 정의된 패턴과 일치하는지 확인 * 텍스트 하위 문자열을 추출, 편집, 변경, 삭제할 수 있음 단, 정규식은 다소 무겁기 때문에 간단한 정규식 작업을 할 때에는 [chunk_id] | Guides:1041:0
[task] | distill [title] | 정규식 [category] | Guides [rephrased] | `RegexOption`은 비트 연산자(`|`)로 조합하여 동시에 적용할 수 있습니다. ```lua local regex = Regex("line\\w+", RegexOption.Singleline | RegexOption.RightToLeft | RegexOption.IgnoreCase) local matches = regex:Matches("lineFirst \n LineSecond \n LineLast") for i, match in pairs(matches) do log(match.Text) end -- (결과) [original] | `RegexOption`은 한 번에 여러 가지를 적용할 수 있습니다. ```lua local regex = Regex("line\\w+", RegexOption.Singleline | RegexOption.RightToLeft | RegexOption.IgnoreCase) local matches = regex:Matches("lineFirst \n LineSecond \n LineLast") for i, match in pairs(matches) do log(match.Text) end -- [chunk_id] | Guides:1041:7