MeshPart
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
MeshPart ist eine Form von BasePart, die eine physisch simulierte benutzerdefinierte Mesh enthält.Im Gegensatz zu anderen Mesh-Klassen wie SpecialMesh und BlockMesh sind sie nicht an einen BasePart gebunden, sondern verhalten sich vielmehr als BasePart in eigener Sache.
Das Netz und die Textur eines MeshPart werden durch die MeshId und TextureID Eigenschaften bestimmt. Weitere Informationen finden Sie unter Meshes.
Zusammenfassung
Eigenschaften
Bestimmt, ob beide Seiten von Polygonen in der Mesh gerendert werden sollen.
Das Netz, das auf der MeshPart angezeigt wird. Unterstützt Asset-URIs und EditableMesh.
Die Asset-URIs des Meshes, die auf der MeshPart angezeigt werden, lesen und schreiben in MeshContent .
Das Detaillevel, mit dem die MeshPart gerendert wird.
Die Textur, die auf das MeshPart angewendet wird. Unterstützt Asset-URIs und EditableImage.
Die Textur, die auf das MeshPart angewendet wird. Liest und schreibt auf TextureContent .
Bestimmt das Detaillierungsgrad, an dem die Physik des Teils sich an sein Meshhält.
Bestimmt die geometrische Darstellung, die verwendet wird, um aerodynamische Kräfte und Momente zu berechnen.
Bestimmt, ob ein Teil durch die Physik unbewegbar ist.
Die anguläre Geschwindigkeit der Montagemaschine des Teils.
Das Zentrum der Masse der Montagemaschine des Teils im Platz.
Die lineare Geschwindigkeit der Montagemaschine des Teils.
Die Gesamtmenge der Montagemaske des Teils.
Eine Referenz auf den Wurzelteil der Montagemaschine.
Bestimmt, ob das Teil physisch mit der Audio-Simulation interagieren wird, ähnlich wie CastShadow für Beleuchtung.
Bestimmt die Art der Oberfläche für die Rückseite eines Teils.
Bestimmt die Art der Oberfläche für das untere Gesicht eines Teils.
Bestimmt die Farbe eines Teils.
Bestimmt die Position und Ausrichtung des BasePart in der Welt.
Bestimmt, ob ein Teil mit anderen Teilen kollidieren kann.
Bestimmt, ob das Teil während räumlicher Abfrageoperationen berücksichtigt wird.
Bestimmt, ob Touched und TouchEnded Ereignisse auf der Seite abgefeuert werden.
Bestimmt, ob ein Teil einen Schatten wirft oder nicht.
Beschreibt die Weltposition, in der sich das Zentrum der Masse eines Teils befindet.
Beschreibt den Namen der Gruppeeines Teils.
Bestimmt die Farbe eines Teils.
Zeigt die aktuellen physischen Eigenschaften des Teils an.
Bestimmt mehrere physische Eigenschaften eines Teils.
Wird verwendet, um aerodynamische Kräfte auf Teilen und Montagemaschinen zu aktivieren oder zu deaktivieren.
Die tatsächliche physische Größe des BasePart als von der Physik-Engine betrachtet.
Bestimmt die Art der Oberfläche für das Vordergesicht eines Teils.
Bestimmt die Art der Oberfläche für das linke Gesicht eines Teils.
Legt einen Multiplikator für BasePart.Transparency fest, der nur für den lokalen Client sichtbar ist.
Bestimmt, ob ein Teil in Studio auswählbar ist.
Beschreibt die Masse des Teils, das Produkt seiner Dichte und Größe.
Bestimmt, ob das Teil zur Gesamtmenge oder zur Inertie seines steifen Körpers beiträgt.
Bestimmt die Textur und die Standardphysikalischen Eigenschaften eines Teils.
Der Name von MaterialVariant.
Beschreibt die Rotation des Teils in der Welt.
Gibt den Versatz des Drehpunkts des Teils von seinem CFrame an.
Beschreibt die Position des Teils in der Welt.
Zeit seit dem letzten aufgezeichneten Physik-Update.
Bestimmt, wie viel ein Teil die Skybox widerspiegelt.
Beschreibt die kleinste Änderung in der Größe, die von der Resize()-Methode zulässig ist.
Beschreibt die Gesichter, auf denen ein Teil skaliert werden kann.
Bestimmt die Art der Oberfläche für die richtige Seite eines Teils.
Die Hauptregel bei der Bestimmung des Wurzelteils einer Montagemaschine.
Die Rotation des Teils in Grad für die drei Achsen.
Bestimmt die Dimensionen eines Teils (Länge, Breite, Höhe).
Bestimmt die Art der Oberfläche für die Vorderseite eines Teils.
Bestimmt, wie viel ein Teil durchgesehen werden kann (das Gegenteil der Part-Opazität).
Methoden
Überschreibt die MeshContent , TextureContent und Kollisionsgeometrie-Eigenschaften dieser MeshPart von der angegebenen Quelle meshPart .
Wenden Sie einen angulären Impuls auf die Montagemaschine an.
Wenden Sie einen Impuls auf die Montagemaschine im Montagemodus center of mass an.
Wenden Sie einen Impuls auf die Montagemaschine an an der angegebenen Position.
Gibt zurück, ob die Teile miteinander kollidieren können.
Überprüft, ob Sie das Netzwerkbesitz eines Teils festlegen können.
Gibt eine Tabelle von Teilen zurück, die mit dem Objekt durch eine starre Verbindung verbunden sind.
Gib alle Gelenke oder Einschränkungen zurück, die mit diesem Teil verbunden sind.
Gibt den Wert der Mass Eigenschaftenzurück.
Gibt den aktuellen Spieler zurück, der der Netzwerkbesitzer dieses Teils ist, oder nil im Falle des Servers.
Gibt wahr zurück, wenn die SpielEngine das Netzwerkbesitzer automatisch für diesen Teil entscheidet.
Gibt das Basisteil einer Montagemaschine von Teilen zurück.
Gibt eine Tabelle aller BasePart.CanCollide Teile zurück, die sich mit diesem Teil überlappen.
Gibt die lineare Geschwindigkeit der Montagemaschine des Teils an der angegebenen Position in Bezug auf dieses Teil zurück.
Gibt wahr zurück, wenn das Objekt mit einem Teil verbunden ist, das es an einer Stelle hält (z. B. ein Anchored Teil), sonst gibt es false zurück.
Ändert die Größe eines Objekts genau wie mit dem Tool.
Setzt den angegebenen Spieler als Netzwerkbesitzer für dieses und alle verbundenen Teile.
Lässt die SpielEngine dynamisch entscheiden, wer die Physik des Teils handhabt (einer der Clients oder der Server).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Erstellt eine neue IntersectOperation aus der überlappenden Geometrie des Teils und der anderen Teile in dem angegebenen Array.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Erstellt ein neues UnionOperation vom Teil, minus die Geometrie, die von den Teilen im angegebenen Array besetzt wird.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Erstellt ein neues UnionOperation vom Teil plus die Geometrie, die von den Teilen im angegebenen Array besetzt wird.
Holt den Pivot eines PVInstance .
Verwandelt die PVInstance zusammen mit all ihren Nachkommen PVInstances, so dass der Pivot jetzt an der angegebenen CFrame position ist.
Ereignisse
Ereignisse von BasePart übernommenFeuert, wenn ein Teil aufgrund einer physischen Bewegung aufhört, ein anderes Teil zu berühren.
Feuert, wenn ein Teil aufgrund einer physischen Bewegung einen anderen Teil berührt.
Eigenschaften
DoubleSided
Diese Eigenschaft bestimmt, ob beide Seiten von Polygonen in der Mesh gerendert werden sollen.Es ist nur im Studio änderbar.Dies ist nützlich für Meshes, die typischerweise als "Karten" modelliert sind, wie ein Blatt, Haare oder Stoff.
HasJointOffset
HasSkinnedMesh
JointOffset
MeshContent
Das Netz, das auf der MeshPart angezeigt wird. Unterstützt Asset-URIs und EditableMesh.
Beachten Sie, dass diese Eigenschaft nicht direkt von Skripten geändert werden kann, da die Kollisionsgeometrie des Meshes nicht in Echtzeit berechnet werden kann.Siehe AssetService:CreateMeshPartAsync() als Methode, um eine neue MeshPart aus einem bestimmten Content mit einem angegebenen CollisionFidelity zu erstellen. MeshPart:ApplyMesh() kann verwendet werden, um die MeshContent , TextureContent und Kollisionsgeometrie eines bestehenden MeshPart zu überschreiben.
MeshId
Die Asset-URIs des Meshes, die auf der MeshPart angezeigt werden, lesen und schreiben in MeshContent .
Beachten Sie, dass diese Eigenschaft nicht direkt von Skripten geändert werden kann, da die Kollisionsgeometrie des Meshes nicht in Echtzeit berechnet werden kann.Siehe AssetService:CreateMeshPartAsync() als Methode, um eine neue MeshPart aus einem bestimmten Content mit einem angegebenen CollisionFidelity zu erstellen. MeshPart:ApplyMesh() kann verwendet werden, um die MeshContent , TextureContent und Kollisionsgeometrie eines bestehenden MeshPart zu überschreiben.
RenderFidelity
Diese Eigenschaft legt fest, auf welchem Detailgrad die MeshPart angezeigt werden soll. Sie kann auf die möglichen Werte des Enum.RenderFidelity Enums festgelegt werden.
Der Standardwert ist Automatic , was bedeutet, dass das Detail des Meshes auf seine Entfernung von der Kamera wie im folgenden Tabelle beschrieben basiert.
<th>Rendergenauigkeit</th><th>Beispiel</th></tr></thead><tbody><tr><td>Weniger als 250 Klötze</td><td>Höchste</td><td><img src="../../../assets/modeling/meshes/Render-Fidelity-High.jpg" width="200"></img></td></tr><tr><td>250-500 Klötze</td><td>Mittel</td><td><img src="../../../assets/modeling/meshes/Render-Fidelity-Medium.jpg" width="200"></img></td></tr><tr><td>500 oder mehr Stollen</td><td>Niedrigste</td><td><img src="../../../assets/modeling/meshes/Render-Fidelity-Low.jpg" width="200"></img></td></tr></tbody>
Entfernung von der Kamera |
---|
TextureContent
Die Textur, die auf das MeshPart angewendet wird. Unterstützt Asset-URIs und EditableImage.
Wenn diese Eigenschaft auf Content.none festgelegt ist, wird keine Textur auf das Meshangewendet.
local Workspace = game:GetService("Workspace")local meshPart = Workspace.MeshPartmeshPart.TextureContent = Content.none -- No texture
Beachten Sie, dass die MeshContent Eigenschaft während der Laufzeit nicht direkt geändert werden kann, aber die Textur kann.
Eine Mesh-Texture ändern
Mit der EigenschaftenTextureContent kann die Textur eines Meshes geändert werden, ohne dass das Meshes erneut hochgeladen werden muss.Um dies zu tun, kann ein neues Bild mit der gewünschten Textur auf Roblox hochgeladen werden.Die ursprüngliche Texturbilddatei kann durch die Exportierung des Meshes mit der Option Exportauswahl in Studio erhalten werden.Die Bilddatei wird neben der exportierten .obj Datei gespeichert.
Die neue Textur kann dann auf Roblox als ein Abzeichen hochgeladen werden, und ihre Asset-URI kann mit der EigenschaftenTextureContent oder TextureID verwendet werden.
TextureContent kann auch so eingestellt werden, dass es sich auf ein EditableImage bezieht, das noch nicht veröffentlicht wurde.
local AssetService = game:GetService("AssetService")local Workspace = game:GetService("Workspace")local meshPart = Workspace.MeshPartlocal editableImage = AssetService:CreateEditableImageAsync(meshPart.TextureContent)meshPart.TextureContent = Content.fromObject(editableImage) -- Live updates
Wenn TextureContent auf ein EditableImage verweist, wird die Textur mit allen Änderungen am EditableImage Objekt leben aktualisieren.
Ein strukturiertes Netz erstellen
Ein Mesh kann nur texturiert werden, wenn das Mesh mit UV gemappt wurde, wobei auf die Praxis der Projektion einer Texturkarte auf ein Mesh Bezug genommen wird.Dies kann nicht mit Roblox Studio erledigt werden und muss mit einer externen 3D-Modellierungsanwendung wie Blender erledigt werden.
TextureID
Die Textur, die auf das MeshPart angewendet wird. Liest und schreibt auf TextureContent .
Wenn diese Eigenschaft auf eine leere Stringgesetzt ist, wird keine Textur auf das Meshangewendet.
local Workspace = game:GetService("Workspace")local meshPart = Workspace.MeshPartmeshPart.TextureID = "" -- No texture
Beachten Sie, dass die Eigenschaft MeshPart.MeshId während der Laufzeit nicht geändert werden kann, aber die Textur kann. Siehe TextureContent für Details.
Methoden
ApplyMesh
Überschreibt die MeshContent , TextureContent und Kollisionsgeometrie-Eigenschaften dieser MeshPart von der angegebenen Quelle meshPart .
Die meisten dieser Eigenschaften sind nur lesbar und können während der Laufzeit nicht direkt geändert werden.Um MeshContent und physikalische Daten in Einklang zu halten, müssen sie zusammen aktualisiert werden.
Kopiert die folgenden Eigenschaften:
- MeshPart.MeshContent (implizit aktualisiert MeshId )
- MeshPart.TextureContent (implizit aktualisiert TextureID )
- MeshPart.CollisionFidelity (mit jeder internen kollisionsgeometrie)
- MeshPart.FluidFidelity (mit jeder internen aerogeometrie)