PartOperation
*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.
Kelas abstrak yang semua bagian berdasarkan model solid mewarisi dari.
Rangkuman
Properti
Tingkat rincian yang digunakan untuk menyajikan bagian yang dibuat kuat.
Sudut dalam derajat yang mempengaruhi bayangan perlahan dari bagian yang dibuat kuat.
Jumlah pola dalam model kubus ini.
Mengatur apakah PartOperation dapat direkolor menggunakan warna yang diwarisi.
Menentukan tingkat rincian fisika bagian akan bergabung dengan mesinnya.
Mengidentifikasi representasi geometris yang digunakan untuk menghitung kekuatan dan momen menstruksi.
Menentukan apakah bagian itu tidak dapat dipindahkan oleh fisika.
Kecepatan sudut dari pemasangan bagian.
Pusat massa pemasangan bagian di ruang dunia.
Kecepatan liniasi bagian.
Jumlah total pemasangan bagian.
Sebuah referensi ke bagian akhir dari pemasangan.
Mendeterminas jenis permukaan untuk Wajah Belakang sebuah bagian (+Z arah).
Mendeterminas jenis permukaan untuk Wajah Bawah bagian (-Y).
Mengubah warna bagian.
Mengidentifikasi posisi dan orientasi BasePart di dunia.
Menentukan apakah bagian dapat bertabrakan dengan bagian lain.
Mengukur apakah bagian dianggap selama operasi pencarian ruang.
Menentukan apakah acara Touched dan TouchEnded di pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri pihak kiri
Menentukan apakah atau tidak bagian menggunakan bayangan.
Menggambarkan lokasi posisi dunia di mana pusat massa bagian berada.
Menggambarkan nama gruptabrakan bagian.
Mengubah warna bagian.
Menunjukkan proporsi fisik saat ini dari bagian.
Mengidentifikasi beberapa sifat fisik bagian.
Digunakan untuk mengaktifkan atau menonaktifkan kekuatan aerodinamik pada bagian dan asal.
Datatype.CFrame dari ekstensi fisik Class.BasePart .
Ukuran fisik sebenarnya dari BasePart seperti yang dilihat oleh mesin fisika.
Mendeterminas jenis permukaan untuk Wajah Depan sebuah bagian (-Z arah).
Mendeterminas jenis permukaan untuk Wajah Kiri sebuah bagian (-X arah).
Mengidentifikasi pengganda untuk BasePart.Transparency yang hanya terlihat bagi klien lokal.
Mengesokkan apakah bagian dapat dipilih di Studio.
Menggambarkan massa bagian, produk dari kedensitas dan volume.
Menentukan apakah bagiannya berkontribusi pada total massa atau inersia tubuh kerasnya.
Mengidentifikasi tekstur dan proporsi fisik default sebuah bagian.
Nama dari MaterialVariant .
Menggambarkan rotasi bagian di dunia.
MengukurOffset bagian dari pivotnya dari CFrame nya.
Menggambarkan posisi bagian di dunia.
Waktu sejak updatefisika terakhir.
Menentukan seberapa banyak bagian mencerminkan langit.
Menggambarkan perubahan ukuran terkecil yang diizinkan oleh metode Resize.
Menggambarkan wajah mana yang dapat diubah ukurannya.
Mengidentifikasi jenis permukaan untuk Wajah Kanan bagian (+X arah).
Aturan utama dalam menentukan bagian akar dari sebuahAssembly.
Rotasi bagian dalam derajat untuk tiga sumbu.
Mengukur dimensi sebuah bagian (panjang, lebar, tinggi).
Mendeterminas jenis permukaan untuk Wajah Atas bagian (+Y arah).
Menentukan seberapa banyak bagian dapat dilihat melalui (kebalikan dari keopakean bagian).
Metode
Mengganti geometri dari Class.PartOperation ini dengan geometri dari Class.PartOperation lainnya.
Terapkan dorongan sudut ke kumpulan.
Terapkan dorongan ke kumpulan pada kumpulan pemasangan di pemasangan's center of mass .
Terapkan dorongan ke kumpulan pada posisi yang ditentukan.
Mengembalikan apakah bagian dapat bertabrakan satu sama lain.
Memeriksa apakah Anda dapat menetapkan kepemilikan jaringan bagian.
Mengembalikan tabel bagian yang terhubung ke objek dengan jenis tali keras apa pun.
Kembalikan semua Joints atau Constraint yang terhubung ke Bagian ini.
Mengembalikan nilai dari properti Mass .
Mengembalikan pemain saat ini yang merupakan pemilik jaringan bagian ini, atau nol dalam kasus server.
Mengembalikan benar jika mesin game secara otomatis memutuskan pemilik jaringan untuk bagian ini.
Mengembalikan bagian dasar dari pengumpulan bagian.
Mengembalikan tabel semua BasePart.CanCollide bagian yang benar yang berintervensi dengan bagian ini.
Mengembalikan kecepatan lini bagian yang diberikan relatif terhadap posisi ini.
Mengembalikan benar jika objek terhubung ke bagian yang akan menahan objek tersebut (eg bagian Anchored), jika tidak mengembalikan salah.
Mengubah ukuran objek hanya seperti menggunakan alat resize Studio.
Tetapkan pemain yang diberikan sebagai pemilik jaringan untuk ini dan semua bagian yang terhubung.
Memungkinkan mesin game secara dinamis memutuskan siapa yang akan menangani fisika bagian (salah satu klien atau server).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Menciptakan IntersectOperation baru dari geometri yang bertumpang-tindih dari bagian dan bagian lain dalam array yang diberikan.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Menciptakan UnionOperation baru dari bagian, minus geometri yang ditempati oleh bagian dalam array yang diberikan.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Menciptakan UnionOperation baru dari bagian, plus geometri yang ditempati oleh bagian dalam array yang diberikan.
Mendapatkan pivot dari Class.PVInstance .
Mengubah PVInstance bersama dengan semua anaknya PVInstances sehingga pivot sekarang berada di CFrame yang ditentukan.
Acara
Acara diwarisi dari BasePartBerdapi saat bagian berhenti menyentuh bagian lain sebagai hasil dari gerakan fisik.
Berdapi saat bagian menyentuh bagian lain sebagai hasil dari gerakan fisik.
Properti
RenderFidelity
Item ini menentukan tingkat rincian yang akan ditunjukkan bagian yang dibuat kuat. Ini dapat diatur ke nilai kemungkinan dari Enum.RenderFidelity 枚.
Nilai default adalah Automatic, yang berarti rincian bagian didasarkan pada jaraknya dari kamera seperti yang ditunjukkan dalam tabel berikut.
<tbody><tr><td>Kurang dari 250 stud</td><td>Tertinggi</td></tr><tr><td>250-500 stud</td><td>Sedang</td></tr><tr><td>500 atau lebih banyak stud</td><td>Tertendah</td></tr></tbody>
Jarak Dari Kamera | Kesesuaian Rendah |
---|
SmoothingAngle
Properti ini mewakili sudut dalam derajat untuk nilai umum antara normal wajah di bagian berwarna tertentu. Jika perbedaan normal kurang dari nilai, normal akan disesuaikan untuk menyamarkan perbedaan. Sementara nilai antara 30 dan 70 derajat biasanya menghasilkan hasil yang baik, nilai antara 90 dan 180 tidak direkomendasikan karena d
Catat bahwa penyглаian tidak mengubah normals antara berbagai material atau warna yang berbeda.
UsePartColor
Tetapkan apakah PartOperation dapat diubah menggunakan propperti BasePart.Color atau BasePart.BrickColor. Saat benar, seluruh uni akan diubah sesuai dengan 1> Class.
Metode
SubstituteGeometry
Mengganti geometri dari PartOperation ini dengan geometri dari PartOperation lainnya. Ini membuat lebih mudah untuk menggunakan geometri
Catat bahwa jika Anda menelepon metode ini di PartOperation dengan anak anjing Attachments atau Constraints, Anda harus menghitung instans yang terpengaruh dengan 1> Class.GeometryService:CalculateSecondsToPreserve()|CalculateSecondsToPreserve()
Parameter
The PartOperation whose geometry will substitute the geometry of this PartOperation .
Memberikan nilai
Contoh Kode
local GeometryService = game:GetService("GeometryService")
local mainPart = workspace.PurpleBlock
local otherParts = {workspace.BlueBlock}
local options = {
CollisionFidelity = Enum.CollisionFidelity.Default,
RenderFidelity = Enum.RenderFidelity.Automatic,
SplitApart = false
}
local constraintOptions = {
tolerance = 0.1,
weldConstraintPreserve = Enum.WeldConstraintPreserve.All
}
-- Perform union operation in pcall() since it's asyncronous
local success, newParts = pcall(function()
return GeometryService:UnionAsync(mainPart, otherParts, options)
end)
if success and #newParts > 0 and mainPart:IsA("PartOperation") then
-- Set first part in resulting operation as part to use for substitution
-- First part is simply an option; this can be any PartOperation
local substitutePart = newParts[1]
-- Reposition part to the position of main part
substitutePart.CFrame = mainPart.CFrame
-- Calculate constraints/attachments to either preserve or drop
local recommendedTable = GeometryService:CalculateConstraintsToPreserve(mainPart, newParts, constraintOptions)
-- Substitute main part's geometry with substitution geometry
mainPart:SubstituteGeometry(substitutePart)
-- Drop constraints/attachments that are not automatically preserved with substitution
for _, item in pairs(recommendedTable) do
if item.Attachment then
if item.ConstraintParent == nil then
item.Constraint.Parent = nil
end
if item.AttachmentParent == nil then
item.Attachment.Parent = nil
end
elseif item.WeldConstraint then
if item.Parent == nil then
item.WeldConstraint.Parent = nil
end
end
end
-- Destroy other parts
for _, otherPart in pairs(otherParts) do
otherPart.Parent = nil
otherPart:Destroy()
end
end