[task] | knowledge_list [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | 제시된 원문에 포함된 정보만을 기반으로 `PhysicsRigidbodyComponent`와 관련된 핵심 사실을 추출하여 정리했습니다. **1. `HandlePhysicsContactBeginEvent` 이벤트 핸들러** - `PhysicsRigidbodyComponent` 또는 물리 관련 컴포넌트에서 사용 가능한 이벤트 핸들러로, 함수명은 `HandlePhysicsContactBeginEvent`이며 매개변수로 `PhysicsContactBeginEvent` 타입의 `event` 객체를 받습니다. - 해당 이벤트 핸들러의 실행 공 [original] | ```lua Event Handler: [self] HandlePhysicsContactBeginEvent (PhysicsContactBeginEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: PhysicsColliderComponent -- Space: Server, Client --------------------------------------------------------- -- Parameters local [chunk_id] | Components:776:2
[task] | distill [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | # PhysicsRigidbodyComponent 강체 물리 상태를 제어하고 조회하는 컴포넌트입니다. ## API 시그니처 및 동작 규칙 ### 힘/충격량 적용 모든 `Apply` 메서드는 즉시 물리 시뮬레이션에 반영됩니다. ```lua void ApplyAngularImpulse(float impulse) void ApplyForce(Vector2 force) void ApplyForce(Vector2 force, Vector2 worldPoint) void ApplyLinearImpulse(Vector2 impulse) [original] | - **void ApplyAngularImpulse(float impulse)** 강체에 반시계 방향으로(CCW) 각 충격량을 적용합니다. - **void ApplyForce(Vector2 force)** 강체의 무게 중심에 특정 방향으로 힘을 가합니다. - **void ApplyForce(Vector2 force, Vector2 worldPoint)** 강체에 월드 상 특정 위치에서 특정 방향으로 힘을 가합니다. - **void ApplyLinearImpulse(Vector2 impulse)** 강체의 무게 중심에 [chunk_id] | Components:776:1
[task] | extract_knowledge [title] | LineRendererComponent [category] | Components [rephrased] | # LineRendererComponent `LineRendererComponent`는 선을 그리며, 선의 시각적 속성을 제어하는 컴포넌트입니다. ## 개념 설명 이 컴포넌트는 `Points` 속성에 저장된 정점 목록을 기반으로 선을 렌더링합니다. 선의 형태(부드러운 곡선 vs. 날카로운 꺾인 선), 닫힘 여부(Loop), 그리고 렌더링 순서(SortingLayer, OrderInLayer)를 제어할 수 있습니다. 또한 머티리얼(Material)을 통해 선의 텍스처나 색상 표현을 변경할 수 있습니다. ## API 사용법 # [original] | 선을 그리며, 선의 속성을 설정할 수 있는 기능을 제공합니다. # Properties - **float Flexibility [Sync]** 꺾이는 부분의 너비를 조절합니다. IsFlexible이 true일 때 적용됩니다. - **boolean IgnoreMapLayerCheck [Sync]** SortingLayer에 Map Layer 이름을 지정했을 때 자동 치환을 수행하지 않습니다. - **boolean IsFlexible [Sync]** 꺾이는 부분을 이어 그릴지 끊어 그릴지 설정합니다. - **boolean [chunk_id] | Components:774:0
[task] | extract_knowledge [title] | PhysicsColliderComponent [category] | Components [rephrased] | # PhysicsColliderComponent ## 1. 개념 설명 `PhysicsColliderComponent`는 엔티티에 물리 강체(Physics Rigboid)의 모양을 부여하고, 다른 강체와의 충돌 시 이벤트를 발생시키는 역할을 합니다. * **자동 연결:** 해당 컴포넌트는 자동으로 부모 엔티티나 자기 자신의 `PhysicsRigidbodyComponent`에 연결됩니다. * **Static 강체 처리:** 연결된 `PhysicsRigidbodyComponent`가 존재하지 않는 경우, 해당 물체는 Stat [original] | 물리 강체의 모양을 설정하고 다른 강체와 충돌 시 이벤트를 발생시킵니다. 자동으로 부모 또는 자신의 PhysicsRigidbodyComponent에 연결됩니다. 연결된 PhysicsRigidbodyComponent가 없으면 Static 강체로 취급됩니다. # Properties - **Vector2 BoxSize [Sync]** Box Collider 크기를 설정합니다. - **float CircleRadius [Sync]** Circle Collider의 반지름 길이를 설정합니다. - **boolean ClientOnl [chunk_id] | Components:775:0
[task] | extract_knowledge [title] | PhysicsColliderComponent [category] | Components [rephrased] | # PhysicsColliderComponent `PhysicsColliderComponent`는 엔티티에 물리 충돌을 적용하는 컴포넌트입니다. 이 컴포넌트는 충돌 시작과 종료 시점에 스크립트가 반응할 수 있는 이벤트 핸들러를 제공하며, 다른 물리 강체와의 충돌 그룹을 관리하는 데 사용됩니다. ## 개념 설명 `PhysicsColliderComponent`는 `PhysicsRigidbodyComponent`와 협력하여 물리 시뮬레이션에서 충돌 감지를 처리합니다. * **충돌 이벤트**: 두 물리 강체가 접촉을 시작하거나 종 [original] | - **PhysicsRigidbodyComponent GetAttachedPhysicsRigidbody()** 연결된 PhysicsRigidbodyComponent를 반환합니다. - **void OnContactBegin(PhysicsContactBeginEvent beginEvent) [ScriptOverridable]** 두 물리 강체가 충돌을 시작할 때 호출됩니다. - **void OnContactEnd(PhysicsContactEndEvent endEvent) [ScriptOverridable]** 두 물리 강체의 [chunk_id] | Components:775:1
[task] | wikipedia [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | # PhysicsRigidbodyComponent `PhysicsRigidbodyComponent`는 엔티티에 물리 시뮬레이션을 적용하기 위해 사용되는 컴포넌트입니다. 이 컴포넌트는 자체적으로 이벤트 핸들러를 제공하며, 특히 `HandlePhysicsContactBeginEvent`를 통해 물리적 충돌 발생 시점의 로직을 처리할 수 있습니다. ## HandlePhysicsContactBeginEvent `HandlePhysicsContactBeginEvent`는 `[self]` 실행 공간에서 동작하는 이벤트 핸들러입니다. 이 [original] | ```lua Event Handler: [self] HandlePhysicsContactBeginEvent (PhysicsContactBeginEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: PhysicsColliderComponent -- Space: Server, Client --------------------------------------------------------- -- Parameters local [chunk_id] | Components:776:2
[task] | knowledge_list [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | ```lua -- PhysicsRigidbodyComponent 핵심 사실 목록 -- 1. 컴포넌트 목적 -- 엔티티가 물리 엔진에 의해 제어되도록 하고, 물리 연산에 영향을 주는 값을 설정하는 역할을 합니다. -- 2. Property: AngularDamping -- float 타입의 AngularDamping 프로퍼티는 각속도의 변화에 대한 저항 계수를 설정하며, 값이 클수록 각속도 변화에 더 많은 힘이 필요하고 0 이상의 값만 설정할 수 있으며 [Sync] 속성을 가집니다. -- 3. Property: BodyType [original] | 엔티티가 물리 엔진에 의해 제어됩니다. 물리 연산에 영향을 주는 값을 설정할 수 있습니다. # Properties - **float AngularDamping [Sync]** 각속도의 변화에 대한 저항 계수를 설정합니다. 값이 클수록 각속도 변화에 더 많은 힘이 필요합니다. 0 이상의 값만 설정할 수 있습니다. - **BodyType BodyType [Sync]** 강체 타입을 설정합니다. - **PhysicsCollisionDetectionMode CollisionDetectionMode [Sync]** 물리 충돌의 [chunk_id] | Components:776:0
[task] | extract_knowledge [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | # PhysicsRigidbodyComponent ## 1. 개념 설명 `PhysicsRigidbodyComponent`는 엔티티를 물리 엔진의 제어 하에 두는 컴포넌트입니다. 이 컴포넌트를 통해 엔티티의 질량, 마찰, 탄성, 중력 영향도 등 물리 연산에 영향을 주는 물리적 속성을 설정할 수 있습니다. ## 2. API 사용법 (Properties) `PhysicsRigidbodyComponent`는 다음과 같은 프로퍼티를 제공합니다. 대부분의 프로퍼티는 `[Sync]` 속성을 가지며, 값 변경 시 서버와 클라이언트 간 동기화가 [original] | 엔티티가 물리 엔진에 의해 제어됩니다. 물리 연산에 영향을 주는 값을 설정할 수 있습니다. # Properties - **float AngularDamping [Sync]** 각속도의 변화에 대한 저항 계수를 설정합니다. 값이 클수록 각속도 변화에 더 많은 힘이 필요합니다. 0 이상의 값만 설정할 수 있습니다. - **BodyType BodyType [Sync]** 강체 타입을 설정합니다. - **PhysicsCollisionDetectionMode CollisionDetectionMode [Sync]** 물리 충돌의 [chunk_id] | Components:776:0
[task] | diverse_qa [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | 질문: `PhysicsRigidbodyComponent`에서 물리 접촉 시작 시 이벤트를 처리하기 위해 사용하는 이벤트 핸들러의 이름은 무엇인가요? 답변: `HandlePhysicsContactBeginEvent`입니다. 질문: `HandlePhysicsContactBeginEvent` 이벤트 핸들러는 어떤 컴포넌트로부터 전송되는 네이티브 이벤트인가요? 답변: `PhysicsColliderComponent`로부터 전송됩니다. 질문: `HandlePhysicsContactBeginEvent` 이벤트는 서버와 클라이언트 중 어느 공 [original] | ```lua Event Handler: [self] HandlePhysicsContactBeginEvent (PhysicsContactBeginEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: PhysicsColliderComponent -- Space: Server, Client --------------------------------------------------------- -- Parameters local [chunk_id] | Components:776:2
[task] | diverse_qa [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | 질문: PhysicsRigidbodyComponent의 주요 역할은 무엇인가요? 답변: PhysicsRigidbodyComponent는 엔티티가 물리 엔진에 의해 제어되도록 하며, 물리 연산에 영향을 주는 값을 설정할 수 있게 해줍니다. 질문: AngularDamping 속성의 값이 클수록 어떤 효과가 발생하나요? 답변: AngularDamping의 값이 클수록 각속도 변화에 더 많은 힘이 필요합니다. 질문: Friction 속성은 어떤 값을 설정할 수 있으며, 값이 작을 때의 특징은 무엇인가요? 답변: Friction은 0 이 [original] | 엔티티가 물리 엔진에 의해 제어됩니다. 물리 연산에 영향을 주는 값을 설정할 수 있습니다. # Properties - **float AngularDamping [Sync]** 각속도의 변화에 대한 저항 계수를 설정합니다. 값이 클수록 각속도 변화에 더 많은 힘이 필요합니다. 0 이상의 값만 설정할 수 있습니다. - **BodyType BodyType [Sync]** 강체 타입을 설정합니다. - **PhysicsCollisionDetectionMode CollisionDetectionMode [Sync]** 물리 충돌의 [chunk_id] | Components:776:0
[task] | knowledge_list [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | ```lua -- 문서 검토 결과: PhysicsRigidbodyComponent 핵심 사실 목록 -- 각 항목은 독립적인 문장이며, API 명세와 실행 공간 제약을 명시합니다. local facts = { -- Apply Methods "ApplyAngularImpulse(float impulse)는 void를 반환하며, 강체에 반시계 방향(CCW)으로 각 충격량을 적용합니다.", "ApplyForce(Vector2 force)는 void를 반환하며, 강체의 무게 중심에 특정 방향으로 힘을 가합니다.", [original] | - **void ApplyAngularImpulse(float impulse)** 강체에 반시계 방향으로(CCW) 각 충격량을 적용합니다. - **void ApplyForce(Vector2 force)** 강체의 무게 중심에 특정 방향으로 힘을 가합니다. - **void ApplyForce(Vector2 force, Vector2 worldPoint)** 강체에 월드 상 특정 위치에서 특정 방향으로 힘을 가합니다. - **void ApplyLinearImpulse(Vector2 impulse)** 강체의 무게 중심에 [chunk_id] | Components:776:1
[task] | distill [title] | PrismaticJointComponent [category] | Components [rephrased] | # PrismaticJointComponent 연결된 강체가 특정 축 방향으로만 상대적 이동하도록 제한하는 PrismaticJoint를 생성 및 삭제합니다. ## Properties - **SyncList<PrismaticJoint> Joints [Sync] [ReadOnly]**: Joint 정보 목록. **inherited from Component:** - **boolean Enable [Sync]**: 컴포넌트 활성화 여부. - **boolean EnableInHierarchy [ReadOnly] [HideFromIn [original] | PrismaticJoint를 생성, 삭제할 수 있습니다. 연결된 강체가 특정 축 방향으로만 상대적 이동하도록 제한할 수 있습니다. # Properties - **SyncList<PrismaticJoint> Joints [Sync] [ReadOnly]** Joint의 정보를 설정합니다. ##### inherited from Component: - **boolean Enable [Sync]** 컴포넌트 활성화 여부를 확인합니다. - **boolean EnableInHierarchy [ReadOnly] [HideFromIn [chunk_id] | Components:778:0
[task] | wikipedia [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | # PhysicsRigidbodyComponent **PhysicsRigidbodyComponent**는 메이플스토리 월드(MapleStory Worlds)의 mLua 스크립트 환경에서 강체(Rigidbody)의 물리 동작을 제어하기 위한 컴포넌트입니다. 이 컴포넌트는 강체에 힘을 가하거나, 충격량을 적용하고, 속도와 위치, 회전 상태 등을 조회 및 설정하는 기능을 제공합니다. 또한 서버와 클라이언트 간의 물리 시뮬레이션 소유권을 관리하여 네트워크 환경에서의 일관된 물리 동작을 보장합니다. ## 힘 및 충격량 적용 강체에 물리 [original] | - **void ApplyAngularImpulse(float impulse)** 강체에 반시계 방향으로(CCW) 각 충격량을 적용합니다. - **void ApplyForce(Vector2 force)** 강체의 무게 중심에 특정 방향으로 힘을 가합니다. - **void ApplyForce(Vector2 force, Vector2 worldPoint)** 강체에 월드 상 특정 위치에서 특정 방향으로 힘을 가합니다. - **void ApplyLinearImpulse(Vector2 impulse)** 강체의 무게 중심에 [chunk_id] | Components:776:1
[task] | distill [title] | PhysicsSimulatorComponent [category] | Components [rephrased] | # PhysicsSimulatorComponent 맵에 물리 법칙을 적용하고, 물리 연산 관련 설정을 조절하는 컴포넌트입니다. ## Properties * **`Vector2 Gravity`** `[Sync]` * 물리 연산의 중력 값을 설정합니다. * **`boolean Paused`** `[Sync]` * 물리 연산의 일시정지 여부를 설정합니다. * **`Vector2 WorldBounds`** `[Sync]` `[ReadOnly]` * 물리 연산 범위를 설정합니다. 엔티티가 범위 [original] | 맵에 물리 법칙을 적용합니다. 물리 연산과 관련된 설정을 조절할 수 있습니다. # Properties - **Vector2 Gravity [Sync]** 물리 연산의 중력 값을 설정합니다. - **boolean Paused [Sync]** 물리 연산의 일시정지 여부를 설정합니다. - **Vector2 WorldBounds [Sync] [ReadOnly]** 물리 연산 범위를 설정합니다. 엔티티가 범위를 벗어나면 물리 연산을 하지 않습니다. 예를 들어, 값을 (100, 100)으로 설정하면 원점(0, 0)을 중심으로 가 [chunk_id] | Components:777:0
[task] | knowledge_list [title] | PrismaticJointComponent [category] | Components [rephrased] | 제시된 문서의 코드와 메타데이터에 포함된 정보만을 바탕으로 추출한 핵심 사실 목록입니다. 1. `GoUp` 메서드는 `[server]` 실행 공간에서 실행되며, 매개변수가 없고 반환 타입은 `void` 입니다. 2. `GoDown` 메서드는 `[server]` 실행 공간에서 실행되며, 매개변수가 없고 반환 타입은 `void` 입니다. 3. `GoUp` 메서드 본문에서는 `self.Entity.PrismaticJointComponent:SetMotorSpeed(1, 3)` API를 호출합니다. 4. `GoDown` 메서드 본문에서는 [original] | ```lua Method: [server] void GoUp () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, 3) } [server] void GoDown () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, -3) } Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { --------------- Native Event Sen [chunk_id] | Components:778:1
[task] | knowledge_list [title] | PhysicsSimulatorComponent [category] | Components [rephrased] | 1. `PhysicsSimulatorComponent`는 맵에 물리 법칙을 적용하고 물리 연산 관련 설정을 조절하기 위한 컴포넌트입니다. 2. `Vector2 Gravity [Sync]` 속성은 물리 연산의 중력 값을 설정하며, 동기화(Sync)됩니다. 3. `boolean Paused [Sync]` 속성은 물리 연산의 일시정지 여부를 설정하며, 동기화(Sync)됩니다. 4. `Vector2 WorldBounds [Sync] [ReadOnly]` 속성은 물리 연산 범위를 설정하며, 동기화(Sync)되고 읽기 전용(ReadOnly)입 [original] | 맵에 물리 법칙을 적용합니다. 물리 연산과 관련된 설정을 조절할 수 있습니다. # Properties - **Vector2 Gravity [Sync]** 물리 연산의 중력 값을 설정합니다. - **boolean Paused [Sync]** 물리 연산의 일시정지 여부를 설정합니다. - **Vector2 WorldBounds [Sync] [ReadOnly]** 물리 연산 범위를 설정합니다. 엔티티가 범위를 벗어나면 물리 연산을 하지 않습니다. 예를 들어, 값을 (100, 100)으로 설정하면 원점(0, 0)을 중심으로 가 [chunk_id] | Components:777:0
[task] | wikipedia [title] | PhysicsSimulatorComponent [category] | Components [rephrased] | # PhysicsSimulatorComponent **PhysicsSimulatorComponent**는 맵에 물리 법칙을 적용하고 물리 연산과 관련된 설정을 조절하는 데 사용되는 컴포넌트입니다. ## 속성(Properties) 이 컴포넌트는 자체적인 속성 세 가지와 `Component`로부터 상속받은 속성 세 가지로 구성됩니다. **자체 속성** * **Gravity**: `Vector2` 타입의 `[Sync]` 속성으로, 물리 연산에 적용할 중력 값을 설정합니다. * **Paused**: `boolean` 타입의 [original] | 맵에 물리 법칙을 적용합니다. 물리 연산과 관련된 설정을 조절할 수 있습니다. # Properties - **Vector2 Gravity [Sync]** 물리 연산의 중력 값을 설정합니다. - **boolean Paused [Sync]** 물리 연산의 일시정지 여부를 설정합니다. - **Vector2 WorldBounds [Sync] [ReadOnly]** 물리 연산 범위를 설정합니다. 엔티티가 범위를 벗어나면 물리 연산을 하지 않습니다. 예를 들어, 값을 (100, 100)으로 설정하면 원점(0, 0)을 중심으로 가 [chunk_id] | Components:777:0
[task] | distill [title] | PrismaticJointComponent [category] | Components [rephrased] | # PrismaticJointComponent 직선 운동(Prismatic) 조인트를 제어하여 엔티티를 특정 축 방향으로 이동시킵니다. ## 핵심 API ### Method - `SetMotorSpeed(axis: number, speed: number)` - 조인트의 지정된 축(`axis`)에 모터를 적용하여 `speed` 값만큼 이동시킵니다. - `speed`가 양수일 경우 전진, 음수일 경우 후진합니다. - **실행 공간:** `[server]` ## 동작 규칙 및 주의사항 1. **서버 전용 제어**: 물리 [original] | ```lua Method: [server] void GoUp () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, 3) } [server] void GoDown () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, -3) } Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { --------------- Native Event Sen [chunk_id] | Components:778:1
[task] | diverse_qa [title] | PhysicsSimulatorComponent [category] | Components [rephrased] | 질문: PhysicsSimulatorComponent의 주요 용도는 무엇인가요? 답변: PhysicsSimulatorComponent는 맵에 물리 법칙을 적용하고, 물리 연산과 관련된 설정을 조절하기 위해 사용됩니다. 질문: PhysicsSimulatorComponent의 Gravity 프로퍼티의 데이터 타입은 무엇이며, Sync 속성이 적용되어 있나요? 답변: Gravity 프로퍼티의 데이터 타입은 Vector2이며, Sync 속성이 적용되어 있습니다. 질문: WorldBounds 프로퍼티에 (100, 100)을 설정하면 물리 [original] | 맵에 물리 법칙을 적용합니다. 물리 연산과 관련된 설정을 조절할 수 있습니다. # Properties - **Vector2 Gravity [Sync]** 물리 연산의 중력 값을 설정합니다. - **boolean Paused [Sync]** 물리 연산의 일시정지 여부를 설정합니다. - **Vector2 WorldBounds [Sync] [ReadOnly]** 물리 연산 범위를 설정합니다. 엔티티가 범위를 벗어나면 물리 연산을 하지 않습니다. 예를 들어, 값을 (100, 100)으로 설정하면 원점(0, 0)을 중심으로 가 [chunk_id] | Components:777:0
[task] | wikipedia [title] | PrismaticJointComponent [category] | Components [rephrased] | # PrismaticJointComponent **PrismaticJointComponent**는 메이플스토리 월드(mLua)에서 직선 운동(Prismatic) 조인트를 제어하는 컴포넌트입니다. 이 컴포넌트를 통해 엔티티의 모터 속도를 설정하여 직선 방향으로의 이동을 구현할 수 있습니다. ## 동작 및 API 주요 기능은 `SetMotorSpeed` 메서드를 통해 제공되며, 이 메서드는 서버 공간(`[server]`)에서만 실행됩니다. * **SetMotorSpeed**: 조인트의 모터 속도를 설정합니다. ### 코드 [original] | ```lua Method: [server] void GoUp () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, 3) } [server] void GoDown () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, -3) } Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { --------------- Native Event Sen [chunk_id] | Components:778:1
[task] | diverse_qa [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | 질문: `ApplyAngularImpulse` 메서드는 강체에 어떤 방향으로 충격량을 적용합니까? 답변: `ApplyAngularImpulse` 메서드는 강체에 반시계 방향(CCW)으로 각 충격량을 적용합니다. 질문: `ApplyForce(Vector2 force)` 메서드는 강체의 어디에 힘을 가합니까? 답변: 강체의 무게 중심에 특정 방향으로 힘을 가합니다. 질문: `ApplyForce` 메서드의 오버로드 중 `worldPoint` 파라미터를 포함하는 버전은 어떤 동작을 수행합니까? 답변: 강체에 월드 상 특정 위치에서 특정 [original] | - **void ApplyAngularImpulse(float impulse)** 강체에 반시계 방향으로(CCW) 각 충격량을 적용합니다. - **void ApplyForce(Vector2 force)** 강체의 무게 중심에 특정 방향으로 힘을 가합니다. - **void ApplyForce(Vector2 force, Vector2 worldPoint)** 강체에 월드 상 특정 위치에서 특정 방향으로 힘을 가합니다. - **void ApplyLinearImpulse(Vector2 impulse)** 강체의 무게 중심에 [chunk_id] | Components:776:1
[task] | knowledge_list [title] | PrismaticJointComponent [category] | Components [rephrased] | - `PrismaticJointComponent`는 연결된 강체가 특정 축 방향으로만 상대적 이동하도록 제한하는 PrismaticJoint를 생성 및 삭제하는 역할을 합니다. - `SyncList<PrismaticJoint> Joints` 속성은 `[Sync]` 및 `[ReadOnly]` 속성을 가지며, Joint의 정보를 설정합니다. - `boolean Enable` 속성은 `[Sync]` 속성을 가지며, 컴포넌트의 활성화 여부를 확인합니다. - `boolean EnableInHierarchy` 속성은 `[ReadOnly]` 및 [original] | PrismaticJoint를 생성, 삭제할 수 있습니다. 연결된 강체가 특정 축 방향으로만 상대적 이동하도록 제한할 수 있습니다. # Properties - **SyncList<PrismaticJoint> Joints [Sync] [ReadOnly]** Joint의 정보를 설정합니다. ##### inherited from Component: - **boolean Enable [Sync]** 컴포넌트 활성화 여부를 확인합니다. - **boolean EnableInHierarchy [ReadOnly] [HideFromIn [chunk_id] | Components:778:0
[task] | extract_knowledge [title] | PhysicsRigidbodyComponent [category] | Components [rephrased] | # PhysicsRigidbodyComponent `PhysicsRigidbodyComponent`는 엔티티에 물리 시뮬레이션 특성을 부여하는 컴포넌트입니다. 이 컴포넌트를 통해 다른 물체와의 충돌 시 이벤트 핸들러를 등록하고, 물체의 중력 스케일(`GravityScale`)이나 선형 임펄스(`ApplyLinearImpulse`) 등을 조작할 수 있습니다. ## 개념 설명 물리 엔진과의 상호작용은 주로 `PhysicsColliderComponent`에서 발생하며, `PhysicsRigidbodyComponent`는 실제 물리적 [original] | ```lua Event Handler: [self] HandlePhysicsContactBeginEvent (PhysicsContactBeginEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: PhysicsColliderComponent -- Space: Server, Client --------------------------------------------------------- -- Parameters local [chunk_id] | Components:776:2
[task] | diverse_qa [title] | PrismaticJointComponent [category] | Components [rephrased] | 질문: PrismaticJointComponent의 주요 목적은 무엇인가요? 답변: PrismaticJoint를 생성하고 삭제하며, 연결된 강체가 특정 축 방향으로만 상대적 이동하도록 제한할 수 있습니다. 질문: Joints 프로퍼티의 데이터 타입과 특성은 무엇인가요? 답변: Joints는 `SyncList<PrismaticJoint>` 타입이며, `[Sync]`와 `[ReadOnly]` 속성을 가집니다. 질문: EnableInHierarchy 프로퍼티가 true를 반환하기 위한 조건은 무엇인가요? 답변: EnableInHier [original] | PrismaticJoint를 생성, 삭제할 수 있습니다. 연결된 강체가 특정 축 방향으로만 상대적 이동하도록 제한할 수 있습니다. # Properties - **SyncList<PrismaticJoint> Joints [Sync] [ReadOnly]** Joint의 정보를 설정합니다. ##### inherited from Component: - **boolean Enable [Sync]** 컴포넌트 활성화 여부를 확인합니다. - **boolean EnableInHierarchy [ReadOnly] [HideFromIn [chunk_id] | Components:778:0
[task] | distill [title] | PulleyJointComponent [category] | Components [rephrased] | # PulleyJointComponent 도르래(Pulley) 조인트를 생성 및 삭제하여 연결된 두 강체의 상대적 이동을 제어합니다. ## Properties * **`SyncList<PulleyJoint> Joints`** `[Sync] [ReadOnly]`: 현재 생성된 조인트 정보 목록. * **`boolean Enable`** `[Sync]`: 컴포넌트 활성화 여부. * **`boolean EnableInHierarchy`** `[ReadOnly]`: 엔티티 포함 계층 구조 전체의 활성화 상태 (`Entity. [original] | PulleyJoint를 생성, 삭제합니다. 연결된 두 강체가 도르래처럼 이동합니다. # Properties - **SyncList<PulleyJoint> Joints [Sync] [ReadOnly]** Joint 정보를 설정합니다. ##### inherited from Component: - **boolean Enable [Sync]** 컴포넌트 활성화 여부를 확인합니다. - **boolean EnableInHierarchy [ReadOnly] [HideFromInspector]** 계층 구조상에서 이 컴포넌트가 [chunk_id] | Components:779:0
[task] | extract_knowledge [title] | PrismaticJointComponent [category] | Components [rephrased] | # PrismaticJointComponent: 모터 속도 제어 ## 1. 개념 설명 `PrismaticJointComponent`는 직선 운동(Prismatic) 물리 조인트를 제어하기 위한 컴포넌트입니다. 이 컴포넌트를 통해 조인트의 모터(Motor) 속도를 설정하여 엔티티가 직선 방향으로 움직이도록 제어할 수 있습니다. 모터 속도는 양수(+)와 음수(-)의 값으로 방향을 결정하며, 절대값은 이동 속도의 크기를 나타냅니다. ## 2. API 사용법 `PrismaticJointComponent`에서 모터 속도를 제어하는 핵심 [original] | ```lua Method: [server] void GoUp () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, 3) } [server] void GoDown () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, -3) } Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { --------------- Native Event Sen [chunk_id] | Components:778:1
[task] | distill [title] | RevoluteJointComponent [category] | Components [rephrased] | # [Components] RevoluteJointComponent 연결된 강체 간 상대 회전을 제어하는 `RevoluteJoint`를 관리합니다. ## Properties - **SyncList<RevoluteJoint> Joints [Sync] [ReadOnly]** Joint 정보 목록. - **boolean Enable [Sync]** 컴포넌트 활성화 여부. - **boolean EnableInHierarchy [ReadOnly] [HideFromInspector]** 계층 구조 내 활성화 상태. `Enabl [original] | RevoluteJoint를 생성, 삭제합니다. 연결된 강체끼리의 상대적 회전을 제어합니다. # Properties - **SyncList<RevoluteJoint> Joints [Sync] [ReadOnly]** Joint 정보를 설정합니다. ##### inherited from Component: - **boolean Enable [Sync]** 컴포넌트 활성화 여부를 확인합니다. - **boolean EnableInHierarchy [ReadOnly] [HideFromInspector]** 계층 구조상에서 이 [chunk_id] | Components:780:0
[task] | diverse_qa [title] | PrismaticJointComponent [category] | Components [rephrased] | 질문: `PrismaticJointComponent` 문서 예시에서 `GoUp` 메서드가 수행하는 동작은 무엇인가요? 답변: `self.Entity.PrismaticJointComponent:SetMotorSpeed(1, 3)`을 호출하여 모터 속도를 3으로 설정합니다. 질문: `PrismaticJointComponent` 문서 예시에서 `GoDown` 메서드가 수행하는 동작은 무엇인가요? 답변: `self.Entity.PrismaticJointComponent:SetMotorSpeed(1, -3)`을 호출하여 모터 속도를 -3으 [original] | ```lua Method: [server] void GoUp () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, 3) } [server] void GoDown () { self.Entity.PrismaticJointComponent:SetMotorSpeed(1, -3) } Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { --------------- Native Event Sen [chunk_id] | Components:778:1
[task] | diverse_qa [title] | PulleyJointComponent [category] | Components [rephrased] | 질문: PulleyJointComponent의 주요 기능은 무엇인가요? 답변: PulleyJoint를 생성하고 삭제하며, 연결된 두 강체가 도르래처럼 이동하도록 만듭니다. 질문: `Joints` 프로퍼티의 데이터 타입과 속성은 무엇인가요? 답변: `SyncList<PulleyJoint>` 타입이며, `[Sync]`와 `[ReadOnly]` 속성을 가집니다. 질문: `EnableInHierarchy` 프로퍼티가 `false`를 반환할 수 있는 조건 중 하나는 무엇인가요? 답변: 컴포넌트 자신의 `Enable` 값이 `true`임에 [original] | PulleyJoint를 생성, 삭제합니다. 연결된 두 강체가 도르래처럼 이동합니다. # Properties - **SyncList<PulleyJoint> Joints [Sync] [ReadOnly]** Joint 정보를 설정합니다. ##### inherited from Component: - **boolean Enable [Sync]** 컴포넌트 활성화 여부를 확인합니다. - **boolean EnableInHierarchy [ReadOnly] [HideFromInspector]** 계층 구조상에서 이 컴포넌트가 [chunk_id] | Components:779:0
[task] | extract_knowledge [title] | PhysicsSimulatorComponent [category] | Components [rephrased] | # PhysicsSimulatorComponent `PhysicsSimulatorComponent`는 맵에 물리 법칙을 적용하고, 물리 연산과 관련된 설정을 조절하기 위한 컴포넌트입니다. ## 개념 설명 이 컴포넌트를 통해 맵 레벨의 중력 크기, 물리 시뮬레이션의 일시 정지 여부, 그리고 물리 연산이 적용되는 공간 범위를 제어할 수 있습니다. 또한 물리 엔진의 내부 연산 반복 횟수를 조절하여 정확도와 성능 간의 트레이드오프를 관리할 수 있습니다. ## API 사용법 ### Properties | 속성 | 타입 | 속성 플 [original] | 맵에 물리 법칙을 적용합니다. 물리 연산과 관련된 설정을 조절할 수 있습니다. # Properties - **Vector2 Gravity [Sync]** 물리 연산의 중력 값을 설정합니다. - **boolean Paused [Sync]** 물리 연산의 일시정지 여부를 설정합니다. - **Vector2 WorldBounds [Sync] [ReadOnly]** 물리 연산 범위를 설정합니다. 엔티티가 범위를 벗어나면 물리 연산을 하지 않습니다. 예를 들어, 값을 (100, 100)으로 설정하면 원점(0, 0)을 중심으로 가 [chunk_id] | Components:777:0