PVInstance

사용되지 않는 항목 표시

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

만들 수 없음
찾아볼 수 없음

위치 속도 인스턴스는 생성할 수 없는 抽象 클래스입니다. 이는 세계에 물리적 위치가 있는 모든 개체의 기초입니다. 특히 BasePartsModels의 경우.

요약

속성

메서드

속성

Origin

복제되지 않음
스크립팅할 수 없음
병렬 읽기

Pivot Offset

복제되지 않음
스크립팅할 수 없음
병렬 읽기

메서드

GetPivot

병렬 쓰기

이 함수는 PVInstance의 피벗을 가져옵니다. 이는 일반적으로 PVInstance:PivotTo() 를 사용하여 모델을 이동하는 데 사용됩니다.

ModelsBaseParts 모두 PVInstances ("위치 속도 인스턴스")이므로 이 기능을 모두 가지고 있습니다.


반환

코드 샘플

Simple Character Teleportation

-- This code should be placed in a LocalScript under StarterPlayerScripts
local Players = game:GetService("Players")
local ContextActionService = game:GetService("ContextActionService")
local player = Players.LocalPlayer
local function doTeleport(_actionName, inputState, _inputObject)
local character = player.Character
if character and character.Parent and inputState == Enum.UserInputState.Begin then
-- Move the character 10 studs forwards in the direction they're facing
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(0, 0, -10))
end
end
ContextActionService:BindAction("Teleport", doTeleport, true, Enum.KeyCode.F)

PivotTo

void

모든 후손 PVInstance 와 함께 핵심 PVInstances 이 모두 피벗이 지금 지정된 CFrame 에 위치하도록 변환되었습니다. 이것은 스크립팅사용하여 2>Class.Model|Model2> 을

BaseParts 는 필요한 오프셋으로 변환된 CFrame 를 가지고 이동됩니다. Models 는 필요한 오프셋으로 변환된 0> Class.Model.WorldPivot0> 를 가지고 이동됩니다.

효율성을 위해 Object.Changed 이벤트는 PositionOrientation의 2>Class.BasePart|BaseParts2> 이동에 대해 실행되지 않습니다. 5>Class.BasePart|BaseParts5> 는 8>Datatype.CFrame</

Class.PVInstance:PivotTo()|PivotTo 를 호출하면 내림 부품과 모델의 오프셋이 캐시되어 다음에 호출하는 Models 에 부동 소수점 손실이 발생하지 않습니다.

ModelsBaseParts 모두 PVInstances ("위치 속도 인스턴스")이므로 이 기능을 모두 가지고 있습니다.

매개 변수

targetCFrame: CFrame

Class.PVInstance를 이동한 후에 동일해야 하는 PVInstance입니다.


반환

void

코드 샘플

Simple Character Teleportation

-- This code should be placed in a LocalScript under StarterPlayerScripts
local Players = game:GetService("Players")
local ContextActionService = game:GetService("ContextActionService")
local player = Players.LocalPlayer
local function doTeleport(_actionName, inputState, _inputObject)
local character = player.Character
if character and character.Parent and inputState == Enum.UserInputState.Begin then
-- Move the character 10 studs forwards in the direction they're facing
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(0, 0, -10))
end
end
ContextActionService:BindAction("Teleport", doTeleport, true, Enum.KeyCode.F)

이벤트