PartOperation
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
Một lớp trừu tượng mà tất cả các bộ phận dựa trên mô hình solid thừa hưởng từ.
Tóm Tắt
Thuộc Tính
Cấp độ chi tiết được sử dụng để hiển thị phần được mô hình hóa rắn chắc.
Một góc theo độ mà ảnh hưởng đến việc phủ mịn của một phần được mô hình hóa rắn chắc.
Số cạnh tròn trong mô hình rắn chắc này.
Bộ đặt xem liệu PartOperation có thể được thay đổi màu sử dụng các thuộc tính màu thừa kế.
Xác định mức độ chi tiết mà vật lý của phần sẽ tuân theo mesh của nó.
Xác định đại diện hình học được sử dụng để tính toán lực khí động và momen xoay.
Xác định xem một phần có bất di chuyển bởi vật lý hay không.
Tốc độ góc của lắp ráp phần.
Trung tâm của khối lượng của lắp ráp phần trong không gian thế giới.
Tốc độ song song của lắp ráp phần.
Tổng khối lượng lắp ráp của phần.
Một tham chiếu đến phần gốc của lắp ráp.
Xác định xem phần có thể tương tác vật lý với mô phỏng âm thanh hay không, tương tự như CastShadow đối với ánh sáng.
Xác định loại bề mặt cho mặt sau của một phần.
Xác định loại bề mặt cho mặt dưới của một phần.
Xác định màu của một phần.
Xác định vị trí và hướng của BasePart trong thế giới.
Xác định xem một phần có thể va chạm với các phần khác hay không.
Xác định xem phần có được xem xét trong các hoạt động truy vấn không gian không.
Xác định xem sự kiện Touched và TouchEnded có bắt lửa trên phần hay không.
Xác định xem một phần có phải phát ra bóng hay không.
Mô tả vị trí thế giới mà trung tâm khối lượng của một phần nằm.
Mô tả tên của nhóm va chạm của một phần.
Xác định màu của một phần.
Chỉ ra các tính chất vật lý hiện tại của phần.
Xác định một số tính chất vật lý của một phần.
Dùng để bật hoặc tắt lực khí động trên các bộ phận và lắp ráp.
Kích thước vật lý thực sự của BasePart theo quan điểm của động cơ vật lý.
Xác định loại bề mặt cho mặt trước của một phần.
Xác định loại bề mặt cho mặt trái của một phần.
Xác định một hệ số cho BasePart.Transparency mà chỉ có thể nhìn thấy bởi khách hàng địa phương.
Xác định xem một phần có thể được chọn trong Studio hay không.
Mô tả khối lượng của phần, sản phẩm của độ dày và khối lượng của nó.
Xác định xem phần có đóng góp vào tổng khối lượng hoặc lượng lưu lưu của cơ thâncứng hay không.
Xác định kết cấu và tính chất vật lý mặc định của một phần.
Tên của MaterialVariant .
Mô tả việc xoay của phần trong thế giới.
Xác định offset của trục của phần từ CFrame của nó.
Mô tả vị trí của phần trong thế giới.
Thời gian kể từ lần cập nhật vật lý cuối cùng.
Xác định bao nhiêu một phần phản ánh hộp trời.
Mô tả thay đổi nhỏ nhất về kích thước có thể cho phép bởi phương pháp Resize().
Mô tả các khuôn mặt mà một phần có thể được thay đổi kích cỡ.
Xác định loại bề mặt cho mặt phải của một phần.
Quy tắc chính trong việc xác định phần gốc của một tập hợp.
Sự xoay của phần theo độ cho ba trục.
Xác định kích thước của một phần (chiều dài, chiều rộng, chiều cao).
Xác định loại bề mặt cho mặt trên của một phần.
Xác định bao nhiêu một phần có thể được nhìn thấy thông qua (ngược lại với độ mờ phần).
Phương Pháp
Thay thế định hình của đối tượng này PartOperation bằng định hình của đối tượng khác PartOperation .
Áp dụng một động lực góc cho lắp ráp.
Áp dụng một động lực cho lắp ráp tại lắp ráp center of mass .
Áp dụng một xung lực cho lắp ráp ở vị trí được chỉ định.
Trả về xem các bộ phận có thể va chạm với nhau hay không.
Kiểm tra xem bạn có thể đặt quyền sở hữu mạng của một phần hay không.
Trả về một bảng các bộ phận kết nối với đối tượng bằng bất kỳ loại khớp cứng nào.
Trả lại tất cả Các khớp hoặc Giới hạn được kết nối với Phần này.
Trả giá trị của thuộc tính Mass .
Trả về người chơi hiện tại là chủ sở hữu mạng của phần này, hoặc nil trong trường hợp của máy chủ.
Trả về true nếu động cơ trò chơi tự động quyết định chủ sở hữu mạng cho phần này.
Trả lại phần cơ bản của một tập hợp các bộ phận.
Trả về một bảng tất cả các BasePart.CanCollide phần đúng có chồng lấp với phần này.
Trả về tốc độ song song của lắp ráp phần ở vị trí đã cho so với phần này.
Trả về true nếu đối tượng được kết nối với một phần sẽ giữ nó ở vị trí (ví dụ một phần Anchored), nếu không trả về false.
Thay đổi kích thước của một đối tượng giống như sử dụng công cụ thay đổi kích thước Studio.
Đặt người chơi được cung cấp làm chủ mạng cho này và tất cả các bộ phận kết nối.
Cho phép động cơ trò chơi quyết định người sẽ xử lý vật lý của phần (một trong những khách hàng hoặc máy chủ).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Tạo một đối tượng mới IntersectOperation từ hình học chồng lấp của phần và các phần khác trong danh sách được cho.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Tạo một đoạn mới UnionOperation từ phần, trừ định hình được chiếm bởi các phần trong mảng được cho.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Tạo một đoạn mới UnionOperation từ phần, cộng với hình học được chiếm bởi các phần trong mảng đã cho.
Nhận trung tâm của một PVInstance .
Biến đổi PVInstance cùng với tất cả con cháu của nó PVInstances như vậy mà trục trung tâm bây giờ được đặt tại điểm CFrame được chỉ định.
Sự Kiện
Sự Kiện kế thừa từ BasePartBắt lửa khi một phần ngừng chạm vào một phần khác do chuyển động vật lý.
Bắt lửa khi một phần chạm vào phần khác do chuyển động vật lý.
Thuộc Tính
RenderFidelity
Tính chất này xác định cấp độ chi tiết mà phần được mô hình hóa rắn sẽ được hiển thị.Nó có thể được đặt thành các giá trị có thể của enum Enum.RenderFidelity.
Giá trị mặc định là Automatic , có nghĩa là chi tiết của phần dựa trên khoảng cách từ máy ảnh như được mô tả trong bảng sau.
<th>Hiển thị chính xác nhất</th></tr></thead><tbody><tr><td>Ít hơn 250 khối</td><td>Cao nhất</td></tr><tr><td>250-500 đinh tán</td><td>Trung bình</td></tr><tr><td>500 hoặc nhiều khối</td><td>Thấp nhất</td></tr></tbody>
Khoảng cách từ máy ảnh |
---|
SmoothingAngle
Tính chất này đại diện cho một góc bằng độ trong một giá trị ngưỡng giữa các bề mặt bình thường trên một phần solid modeled .Nếu sự khác biệt bình thường nhỏ hơn giá trị, các giá trị bình thường sẽ được điều chỉnh để làm mịn sự khác biệt.Trong khi một giá trị nằm giữa 30 và 70 độ thường sản xuất kết quả tốt, các giá trị nằm giữa 90 và 180 không được khuyến khích vì chúng có thể gây ra hiệu ứng "bóng tối" trên các liên minh có cạnh sắc nhọn.
Lưu ý rằng làm mịn không ảnh hưởng đến bình thường giữa các vật liệu hoặc màu sắc khác nhau.

<figcaption><code>Class.PartOperation.SmoothingAngle|SmoothingAngle</code> = 0</figcaption>

<figcaption><code>Class.PartOperation.SmoothingAngle|SmoothingAngle</code> = 50</figcaption>
UsePartColor
Bộ đặt xem liệu PartOperation có thể được thay đổi màu sử dụng các thuộc tính BasePart.Color hoặc BasePart.BrickColor không.Khi đúng, toàn bộ liên minh sẽ được màu như Color hoặc BrickColor .Khi giả mạo, các bộ phận trong liên minh sẽ giữ màu ban đầu từ trước khi thực hiện hoạt động hành tây.
Phương Pháp
SubstituteGeometry
Thay thế định hình của đối tượng này PartOperation bằng định hình của đối tượng khác PartOperation .Điều này làm cho việc sử dụng hình học của một hoạt động mô hình hóa rắn chắc dễ dàng hơn như UnionAsync() , SubtractAsync() , hoặc IntersectAsync() nhưng giữ các tính chất, thuộc tính, thẻ và con của phần chính như Attachments , Constraints , ParticleEmitters , các đối tượng nhẹ, dấu hiệu và nhiều hơn nữa.Cách tiếp cận này cũng vượt qua "chớp mắt" tiềm năng hoàn toàn thay thế ban đầu PartOperation bằng một cái khác.
Lưu ý rằng nếu bạn đang gọi phương pháp này trên một PartOperation với con Attachments hoặc Constraints , bạn nên tính toán các ví dụ bị ảnh hưởng với CalculateConstraintsToPreserve() , sau đó loại bỏ những người có cha mẹ được đề xuất là nil .
Tham Số
Các đối tượng PartOperation có định dạng sẽ thay thế định dạng của đối tượng này PartOperation .
Lợi Nhuận
Mẫu mã
The following example substitutes the geometry of one PartOperation with the geometry of another PartOperation, then drops constraints/attachments that should not be preserved after substitution.
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