PVInstance
*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.
Bir PVInstance ("Position VelocityInstance") jestem抽strakt bir sınıf oluşturulamıyor. Bu, dünyadaki fiziksel bir konumu olan tüm nesnelerin temelidir, özellikle BaseParts ve Models .
Özet
Özellikler
Yöntemler
Bir PVInstance 'nin pivot'unu alır.
Tüm ataları ile birlikte PVInstance şeklini alır, böylece merkez noktası artık belirlenen PVInstances ile bulunur.
Özellikler
Yöntemler
GetPivot
Bu işlev bir PVInstance 'nin pivot'unu alır. Bu genellikle bir modeli hareket etmek için kullanılır PVInstance:PivotTo() .
Models ve BaseParts her ikisi de PVInstances ("Position Velocity Instances") ve bu nedenle her ikisi de bu işlevi sağlar.
Dönüşler
Kod Örnekleri
-- 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
Tüm aşçılarınızla birlikte PVInstance şeklini alır, böylece pivot artık PVInstances ile belirlenmiş konumda bulunur. Bu, scriptle şekilde hareket ettirmeniz gereken CFrame ile ilgili temel işlevdir.
BaseParts bu şekilde hareket ettirilir, çünkü onların CFrame onları gerekli ofsetle dönüştürdükleri için. Models onları bu şekilde hareket ettirir, çünkü onların 0> Class.Model.WorldPivot0> onları gerekli ofset
Verimlilik açısından, Object.Changed olayları Position ve Orientation 'i hariç hareket ettirilmiş olsa bile çalışmaz; sadece 1>Class.BasePart|BaseParts'in hareket ettirildiği bu şekilde çalış
Class.PVInstance:PivotTo() | PivotTo 를 Models üzerinde çağırırken, yuvarlak parçalarının ve modellerinin yerel ofsetleri önbelleğe kaydedilir, böylece aynı modeldeki PivotTo çağrıları arasında
Models ve BaseParts her ikisi de PVInstances ("Position Velocity Instances") ve bu nedenle her ikisi de bu işlevi sağlar.
Parametreler
Class.PVInstance adlı eşyanın hareket ettirildikten sonra eşit olması gereken PVInstance şekillidir.
Dönüşler
Kod Örnekleri
-- 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)