Öffentliche API Änderungen in Aspose.3D 2.1.0
Inhalts übersicht
- Fügt den Export von Collada-Dateien hinzu
- Fügt Lade-und Speichere optionen für 3D-Dateiformate hinzu -Fügt Aspose hinzu. ThreeD. Formate. Collada SaveOptions-Klasse -Fügt Aspose hinzu. ThreeD. Formate. Discreet3DSLoadOptions-Klasse -Fügt Aspose hinzu. ThreeD. Formate. Discreet3DSSaveOptions-Klasse -Fügt Aspose hinzu. ThreeD. Formate. FBXSaveOptions-Klasse -Fügt Aspose hinzu. ThreeD. Formate. ObjLoad Options-Klasse -Fügt Aspose hinzu. ThreeD. Formate. ObjSaveOptions-Klasse -Fügt Aspose hinzu. ThreeD. Formate. STLLoad Options Class -Fügt Aspose hinzu. ThreeD. Formate. STL SaveOptions-Klasse -Fügt Aspose hinzu. ThreeD. Formate. U3DLoadOptions-Klasse -Fügt Aspose hinzu. ThreeD. Formate. U3DSaveOptions-Klasse
- Fügt Methoden zu Aspose hinzu. ThreeD.Scene Class
- Entfernung der FillDummy IndexArray-Eigenschaft von Aspose.ThreeD. Formate. FBXConfig-Klasse
- Erkennen Sie den Typ einer 3D-Datei -Fügt Detect-, Create Load Options-und CreateSaveOptions-Methoden in der Aspose.ThreeD.FileFormat-Klasse hinzu
- Fügt aus geschlossene Eigenschaft zu Aspose hinzu. ThreeD.Entity und Aspose.ThreeD. Knoten klassen
- Fügt Aspose hinzu. ThreeD.Render.Render State Class und Aspose.ThreeD.Render.Blend Factor/Compare Function/CullFaceMode/FrontFace/Polygon Mode/Stencil Action/Stencil State Enums
- Fügt Shader-APIs hinzu -Fügt eine abstrakte Klasse Aspose hinzu. ThreeD.Render.Shader Source und Unter klasse Aspose.ThreeD.Render.GLSL Source -Fügt Aspose hinzu. ThreeD.Render.Shader Exception Class -Fügt Aspose hinzu. ThreeD.Render.ShaderProgram-Klasse -Aspose hinzufügen. ThreeD.Render.Shader Variable Class -Fügt eine Enum-Klasse Aspose hinzu. ThreeD.Render.Variable Semantic
- Fügt Puffer-APIs hinzu -Fügt eine Schnitts telle Aspose hinzu. ThreeD.Render.IBuffer -Fügt Schnitts tellen Aspose hinzu. ThreeD.Render.IIndex Buffer/IVertex Buffer -Fügt ein Enum Aspose.ThreeD.Render.Index DataType hinzu
- Fügt Render-APIs hinzu -Fügt eine Schnitts telle Aspose hinzu. ThreeD.Render. Irenderable -Enum Aspose.ThreeD.Render.Draw Operation hinzugefügt -Fügt ein Enum Aspose hinzu. ThreeD.Render.Render Queue GroupId -Fügt Aspose hinzu. ThreeD.Render.Render Resource-Klasse -Fügt Aspose hinzu. ThreeD.Render.Renderable Resource-Klasse -Fügt Aspose hinzu. ThreeD. Entitäten. Manuelle Entität klasse
- Fügt mehrere Triangulat-Methoden in der Aspose.ThreeD.Entities.Polygon Modifier Class hinzu
- Fügt Create Vertex Buffer-, Create Index Buffer-, Create Texture Unit-, Create Render State-und CreateShader Program-Methoden in der Aspose.ThreeD.Render.Render Factory-Klasse hinzu
- Fügt BindRender State-, Draw Indexed-, Draw-und Submit RenderTask-Methoden in der Aspose.ThreeD.Render.Renderer-Klasse hinzu
- Fügt RenderStage-und Shader-Eigenschaften in der Aspose.ThreeD.Render.Renderer-Klasse hinzu
Fügt den Export von Collada-Dateien hinzu
Mit dieser aktuellen Version (2.1.0) können Entwickler Collada 3D Dateien exportieren. In der vorherigen Version (2.0.0) haben wir bereits die Import funktion hinzugefügt, da Entwickler auch eine Collada-Datei in andere unterstützte 3D-Dateiformate konvertieren können.
Fügt Lade-und Speichere optionen für 3D-Dateiformate hinzu
Wir haben Lade-und Speicher optionen für jedes Dateiformat hinzugefügt. Sie werden aus den ursprünglichen IOConfig-Unter klassen neu erstellt.
Fügt Aspose hinzu. ThreeD. Formate. Collada SaveOptions-Klasse
Es definiert Einstellungen zum Speichern einer Collada 3D-Datei.
C#
ColladaSaveOptions opts = new ColladaSaveOptions();
// generates indented XML document
opts.Indented = true;
// the style of node transformation
opts.TransformStyle = ColladaTransformStyle.Matrix;
// configure the look up paths to allow importer to find external dependencies.
opts.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
Fügt Aspose hinzu. ThreeD. Formate. Discreet3DSLoadOptions-Klasse
Es definiert Einstellungen zum Laden einer diskreten 3DS-Datei.
C#
Discreet3DSLoadOptions loadOpts = new Discreet3DSLoadOptions();
// sets weather to use the transformation defined in the first frame of animation track.
loadOpts.ApplyAnimationTransform = true;
// flip the coordinate system
loadOpts.FlipCoordinateSystem = true;
// prefer to use gamma-corrected color if a 3ds file provides both original color and gamma-corrected color.
loadOpts.GammaCorrectedColor = true;
// configure the look up paths to allow importer to find external dependencies.
loadOpts.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
Fügt Aspose hinzu. ThreeD. Formate. Discreet3DSSaveOptions-Klasse
Es definiert Einstellungen zum Speichern einer diskreten 3DS-Datei.
C#
// initialize an object
Discreet3DSSaveOptions saveOpts = new Discreet3DSSaveOptions();
// the start base for generating new name for duplicated names.
saveOpts.DuplicatedNameCounterBase = 2;
// the format of the duplicated counter.
saveOpts.DuplicatedNameCounterFormat = "NameFormat";
// the separator between object's name and the duplicated counter.
saveOpts.DuplicatedNameSeparator = "Separator";
// allows to export cameras
saveOpts.ExportCamera = true;
// allows to export light
saveOpts.ExportLight = true;
// flip the coordinate system
saveOpts.FlipCoordinateSystem = true;
// prefer to use gamma-corrected color if a 3ds file provides both original color and gamma-corrected color.
saveOpts.GammaCorrectedColor = true;
// use high-precise color which each color channel will use 32bit float.
saveOpts.HighPreciseColor = true;
// configure the look up paths to allow importer to find external dependencies.
saveOpts.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
// set the master scale
saveOpts.MasterScale = 1;
Fügt Aspose hinzu. ThreeD. Formate. FBXSaveOptions-Klasse
Es definiert Einstellungen zum Speichern einer FBX-Datei.
C#
// initialize an object
FBXSaveOptions saveOpts = new FBXSaveOptions(FileFormat.FBX7500ASCII);
// generates the legacy material properties.
saveOpts.ExportLegacyMaterialProperties = true;
// fold repeated curve data using FBX's animation reference count
saveOpts.FoldRepeatedCurveData = true;
// always generates material mapping information for geometries if the attached node contains materials.
saveOpts.GenerateVertexElementMaterial = true;
// configure the look up paths to allow importer to find external dependencies.
saveOpts.LookupPaths = new List< string > (new string[] { @"c:\temp\" });
// generates a video object for texture.
saveOpts.VideoForTexture = true;
Fügt Aspose hinzu. ThreeD. Formate. ObjLoad Options-Klasse
Es definiert Einstellungen zum Laden einer Obj-Datei.
C#
// initialize an object
ObjLoadOptions loadObjOpts = new ObjLoadOptions();
// import materials from external material library file
loadObjOpts.EnableMaterials = true;
// flip the coordinate system.
loadObjOpts.FlipCoordinateSystem = true;
// configure the look up paths to allow importer to find external dependencies.
loadObjOpts.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
Fügt Aspose hinzu. ThreeD. Formate. ObjSaveOptions-Klasse
Es definiert Einstellungen zum Speichern einer Obj-Datei.
C#
// initialize an object
ObjSaveOptions saveObjOpts = new ObjSaveOptions();
// import materials from external material library file
saveObjOpts.EnableMaterials = true;
// flip the coordinate system.
saveObjOpts.FlipCoordinateSystem = true;
// configure the look up paths to allow importer to find external dependencies.
saveObjOpts.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
// serialize W component in model's vertex position
saveObjOpts.SerializeW = true;
// generate comments for each section
saveObjOpts.Verbose = true;
Fügt Aspose hinzu. ThreeD. Formate. STLLoad Options Class
Es definiert Einstellungen zum Laden einer STL-Datei.
C#
// initialize an object
STLLoadOptions loadSTLOpts = new STLLoadOptions();
// flip the coordinate system.
loadSTLOpts.FlipCoordinateSystem = true;
// configure the look up paths to allow importer to find external dependencies.
loadSTLOpts.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
Fügt Aspose hinzu. ThreeD. Formate. STL SaveOptions-Klasse
Es definiert Einstellungen zum Speichern einer STL-Datei.
C#
// initialize an object
STLSaveOptions saveSTLOpts = new STLSaveOptions();
// flip the coordinate system.
saveSTLOpts.FlipCoordinateSystem = true;
// configure the look up paths to allow importer to find external dependencies.
saveSTLOpts.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
Fügt Aspose hinzu. ThreeD. Formate. U3DLoadOptions-Klasse
Es definiert Einstellungen zum Laden einer U3D-Datei.
C#
// initialize an object
U3DLoadOptions loadU3DOpts = new U3DLoadOptions();
// flip the coordinate system.
loadU3DOpts.FlipCoordinateSystem = true;
// configure the look up paths to allow importer to find external dependencies.
loadU3DOpts.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
Fügt Aspose hinzu. ThreeD. Formate. U3DSaveOptions-Klasse
Es definiert Einstellungen zum Speichern einer U3D-Datei.
C#
// initialize an object
U3DSaveOptions saveU3DOptions = new U3DSaveOptions();
// export normal data.
saveU3DOptions.ExportNormals = true;
// export the texture coordinates.
saveU3DOptions.ExportTextureCoordinates = true;
// export the vertex diffuse color.
saveU3DOptions.ExportVertexDiffuse = true;
// export vertex specular color
saveU3DOptions.ExportVertexSpecular = true;
// flip the coordinate system.
saveU3DOptions.FlipCoordinateSystem = true;
// configure the look up paths to allow importer to find external dependencies.
saveU3DOptions.LookupPaths = new List<string>(new string[] { @"c:\temp\" });
// compress the mesh data
saveU3DOptions.MeshCompression = true;
Fügt Methoden zu Aspose hinzu. ThreeD.Scene Class
Wir haben Open and Save-Methoden in der Scene-Klasse überlastet. Entwickler können ein Stream-Objekt oder einen direkten Dateinamen übergeben, um eine 3D-Datei mithilfe der verschiedenen Lade-/Speicher optionen zu importieren/zu exportieren.
C#
public void Open(System.IO.Stream stream, Aspose.ThreeD.Formats.LoadOptions options);
public void Open(string fileName, Aspose.ThreeD.Formats.LoadOptions options);
public void Save(System.IO.Stream stream, Aspose.ThreeD.Formats.SaveOptions options);
public void Save(string fileName, Aspose.ThreeD.Formats.SaveOptions options);
Entfernung der FillDummy IndexArray-Eigenschaft von Aspose.ThreeD. Formate. FBXConfig-Klasse
Diese Eigenschaft wurde nicht genutzt.
C#
System.Nullable<Boolean> FillDummyIndexArray{ get;set;}
Erkennen Sie den Typ einer 3D-Datei
Die Detect-Methode der Aspose.ThreeD.FileFormat-Klasse kann den Typ jeder unterstützten 3D-Datei erkennen.
C#
FileFormat inputFormat = FileFormat.Detect(@"C:\ThreeD\test06\colors.fbx");
Console.WriteLine("File Format: " + inputFormat.ToString());
Fügt Detect-, Create Load Options-und CreateSaveOptions-Methoden in der Aspose.ThreeD.FileFormat-Klasse hinzu
Nach der Erkennung eines 3D-Dateityps können Entwickler Load Options-und SaveOptions-Objekte für die weiteren Manipulation aufgaben erstellen.
C#
// allows to detect file format from file stream or filename
static Aspose.ThreeD.FileFormat Detect(System.IO.Stream stream, string fileName)
// allows to detect file format from filename
static Aspose.ThreeD.FileFormat Detect(string fileName)
// create default load options for this file format
Aspose.ThreeD.Formats.LoadOptions CreateLoadOptions()
// create default save options for this file format
Aspose.ThreeD.Formats.SaveOptions CreateSaveOptions()
Fügt aus geschlossene Eigenschaft zu Aspose hinzu. ThreeD.Entity und Aspose.ThreeD. Knoten klassen
Dadurch kann eine Entität während des Exports entfernt werden.
C#
bool Excluded{ get;set;}
Fügt Aspose hinzu. ThreeD.Render.Render State Class und Aspose.ThreeD.Render.Blend Factor/Compare Function/CullFaceMode/FrontFace/Polygon Mode/Stencil Action/Stencil State Enums
Die Render zustände bieten Parameter für die GPU zum Rastern von Dreiecken in Pixel.
Fügt Shader-APIs hinzu
Die Shader-APIs definieren, wie die Dreiecke aus dem Weltraum in den Bildschirm raum umgewandelt und die endgültige Pixel farbe auf der GPU-Seite berechnet werden.
Fügt eine abstrakte Klasse Aspose hinzu. ThreeD.Render.Shader Source und Unter klasse Aspose.ThreeD.Render.GLSL Source
Der GLSL Source teilt dem Renderer mit, dass der Quellcode für die OpenGL-Shading-Sprache gilt und zu Aspose kompiliert werden kann. ThreeD.Render.Shader Program.
Fügt Aspose hinzu. ThreeD.Render.Shader Exception Class
Die Shader-bezogenen Ausnahmen, die haupt sächlich in der Kompilierung-und Verknüpfung phase der Shader-Sprache verwendet werden.
Fügt Aspose hinzu. ThreeD.Render.ShaderProgram-Klasse
Es ist das kompilierte Shader-Programm.
Aspose hinzufügen. ThreeD.Render.Shader Variable Class
Es definiert die im Shader verwendeten Variablen.
Fügt eine Enum-Klasse Aspose hinzu. ThreeD.Render.Variable Semantic
Es wird verwendet, um die semantische Shader-Variable Aspose zu identifizieren. 3D Renderer bereitet automatisch Shader-Variablen werte vor, die von der Semantik abhängen.
Fügt Puffer-APIs hinzu
Die Puffer liefern Definition und Daten der Dreiecke.
Fügt eine Schnitts telle Aspose hinzu. ThreeD.Render.IBuffer
Es ist die Basis schnitts telle für IIndex Buffer und IVertex Buffer.
Fügt Schnitts tellen Aspose hinzu. ThreeD.Render.IIndex Buffer/IVertex Buffer
Sie präsentieren Hardware puffer zum Speichern der Geometrie indizes.
Fügt ein Enum Aspose.ThreeD.Render.Index DataType hinzu
Der Datentyp der Geometrie indizes.
Fügt Render-APIs hinzu
Fügt eine Schnitts telle Aspose hinzu. ThreeD.Render. Irenderable
Ein Objekt, das Rendering unterstützt, sollte diese Schnitts telle implemen tieren.
Enum Aspose.ThreeD.Render.Draw Operation hinzugefügt
Der primitive Typ zu zeichnen.
Fügt ein Enum Aspose hinzu. ThreeD.Render.Render Queue GroupId
Aspose.3D API verwendet die Render warteschlange, um den Render workflow zu verwalten. Dies wird verwendet, um den Render vorgang an die angegebene Render warteschlange zu senden.
Fügt Aspose hinzu. ThreeD.Render.Render Resource-Klasse
Basis klasse für die Überbrückung des Aspose.3D-Modells API mit Hardware-Ressourcen. Dies wird von Aspose.3D intern verwendet, jedoch ausgesetzt, um die volle Leistung von Aspose.3D Rendering freizusetzen.
Fügt Aspose hinzu. ThreeD.Render.Renderable Resource-Klasse
Eine Unterklasse von Render Resource, aber konzentrieren Sie sich auf das Rendern.
Fügt Aspose hinzu. ThreeD. Entitäten. Manuelle Entität klasse
Der Benutzer sollte diese Klasse verwenden, um eine eigene Entität zu implemen tieren, die das Rendern unterstützt. Diese Klasse kapselt die Details der Rendering-Operationen und der Ressourcen verwaltung.
Fügt mehrere Triangulat-Methoden in der Aspose.ThreeD.Entities.Polygon Modifier Class hinzu
Mehr Überlastungen, um die Verwendung der ursprünglichen Funktion zu vereinfachen.
C#
public static int[][] Triangulate(IList<[Aspose.ThreeD.Utilities.Vector4> controlPoints, IList<int[]> polygons);
public static int[][] Triangulate(IList<[Aspose.ThreeD.Utilities.Vector4> controlPoints, Int32[] polygon);
public static int[][] Triangulate(IList<Aspose.ThreeD.Utilities.Vector4> controlPoints);
Fügt Create Vertex Buffer-, Create Index Buffer-, Create Texture Unit-, Create Render State-und CreateShader Program-Methoden in der Aspose.ThreeD.Render.Render Factory-Klasse hinzu
C#
public Aspose.ThreeD.Render.IVertexBuffer CreateVertexBuffer(Aspose.ThreeD.Utilities.VertexDeclaration declaration)
public Aspose.ThreeD.Render.IIndexBuffer CreateIndexBuffer()
public Aspose.ThreeD.Render.ITextureUnit CreateTextureUnit()
public Aspose.ThreeD.Render.RenderState CreateRenderState()
public Aspose.ThreeD.Render.ShaderProgram CreateShaderProgram(Aspose.ThreeD.Render.ShaderSource shaderSource, IList<Aspose.ThreeD.Utilities.VertexField> inputFields)
public Aspose.ThreeD.Render.ShaderProgram CreateShaderProgram(Aspose.ThreeD.Render.ShaderSource shaderSource, Aspose.ThreeD.Utilities.VertexDeclaration vertexDeclaration)
Fügt BindRender State-, Draw Indexed-, Draw-und Submit RenderTask-Methoden in der Aspose.ThreeD.Render.Renderer-Klasse hinzu
C#
public void BindRenderState(Aspose.ThreeD.Render.RenderState renderState)
public void DrawIndexed(Aspose.ThreeD.Render.DrawOperation drawOperation, Aspose.ThreeD.Render.IVertexBuffer vertexBuffer, Aspose.ThreeD.Render.IIndexBuffer indexBuffer, Int32 count)
public void Draw(Aspose.ThreeD.Render.DrawOperation drawOperation, Aspose.ThreeD.Render.IVertexBuffer vertexBuffer, Int32 first, Int32 count)
public void Draw(Aspose.ThreeD.Render.DrawOperation drawOperation, Aspose.ThreeD.Render.IVertexBuffer vertexBuffer)
public void DrawIndexed(Aspose.ThreeD.Render.DrawOperation drawOperation, Aspose.ThreeD.Render.IVertexBuffer vertexBuffer, Aspose.ThreeD.Render.IIndexBuffer indexBuffer)
public void SubmitRenderTask(Aspose.ThreeD.Render.RenderQueueGroupId groupId, Int32 priority, Aspose.ThreeD.Render.IRenderable renderableTask)
Fügt RenderStage-und Shader-Eigenschaften in der Aspose.ThreeD.Render.Renderer-Klasse hinzu
C#
public RenderStage RenderStage { get; }
public Aspose.ThreeD.Render.ShaderProgram Shader{ get;set;}