| Package | flare.core |
| Class | public class Surface3D |
| Inheritance | Surface3D flash.events.EventDispatcher |
| Property | Defined By | ||
|---|---|---|---|
| bounds : Boundings3D
Returns or sets a Boundings3D object with object properties, such as radius, dimensions, etc. | Surface3D | ||
| firstIndex : int = 0
The index of the first vertex index selected to render. | Surface3D | ||
| format : Vector.<String>
The buffer format specified for each input. | Surface3D | ||
| indexBuffer : IndexBuffer3D
Buffer of indices that reference to a vertex buffers of the Surface3D. | Surface3D | ||
| indexBytes : ByteArray
Vector of indices that reference to a vertex buffers of the Surface3D. | Surface3D | ||
| indexVector : Vector.<uint>
Vector of indices that reference to a vertex buffers of the Surface3D. | Surface3D | ||
| instanceOf : Surface3D
Gets or sets the instance reference of the surface if there is one. | Surface3D | ||
| material : Material3D
Material instance to render the surface. | Surface3D | ||
| name : String
The name of the surface. | Surface3D | ||
| numTriangles : int = -1
Number of triangles that will be drawn. | Surface3D | ||
| offset : Vector.<int>
The offset of data index in the vertexVector. | Surface3D | ||
| polys : Vector.<Poly3D> | Surface3D | ||
| scene : Scene3D
Gets the scene context of the surface. | Surface3D | ||
| sizePerVertex : int = 0
The number of data values associated with each vertex
| Surface3D | ||
| sources : Vector.<Surface3D>
The surface sources of data index from where the input should be read. | Surface3D | ||
| vertexBuffer : VertexBuffer3D
Buffer of vertices that reference to a vertex buffers of the Surface3D. | Surface3D | ||
| vertexBytes : ByteArray
Vector of vertices that reference to a vertex buffers of the Surface3D. | Surface3D | ||
| vertexVector : Vector.<Number>
Vector of vertices that reference to a vertex buffers of the Surface3D. | Surface3D | ||
| visible : Boolean = true | Surface3D | ||
| Method | Defined By | ||
|---|---|---|---|
Surface3D(name:String = null)
Creates a new Surface3D object. | Surface3D | ||
addVertexData(dataIndex:uint, size:int = -1, vector:Vector.<Number> = null):int
Define a new attribute for each vertex. | Surface3D | ||
dispose():void
Destroys, downloads and removes all the used memory by the surface, thus it can't longer be used. | Surface3D | ||
download():void
Downloads and removes the GPU buffers immediately, but the surface data remains intact so it could be changed or uploaded for later use. | Surface3D | ||
Goes through each vertex to calculate the surface boundings. | Surface3D | ||
updateIndexBuffer(startIndex:int = 0, numIndices:int = -1):void
Updates a portion or all the surface index data into the GPU buffers. | Surface3D | ||
updateVertexBuffer(startVertex:int = 0, numVertices:int = -1):void
Updates a portion or all the surface vertex data into the GPU buffers. | Surface3D | ||
Link the surface to be uploaded on a specific scene context. | Surface3D | ||
| Constant | Defined By | ||
|---|---|---|---|
| BITANGENT : int = 5 [static]
Vertex bi-tangents attribute (float3). | Surface3D | ||
| COLOR0 : int = 9 [static]
Vertex color attribute (float3). | Surface3D | ||
| COLOR1 : int = 10 [static]
Vertex color attribute (float3). | Surface3D | ||
| COLOR2 : int = 11 [static]
Vertex color attribute (float3). | Surface3D | ||
| NORMAL : int = 3 [static]
Vertex normals attribute (float3). | Surface3D | ||
| PARTICLE : int = 6 [static]
Vertex particles attribute (float4). | Surface3D | ||
| POSITION : int = 0 [static]
Vertex position attribute (float3). | Surface3D | ||
| SKIN_INDICES : int = 8 [static]
Vertex skin indices attribute (could be float1 to float4 depending of the Device3D.maxBonesPerVertex property). | Surface3D | ||
| SKIN_WEIGHTS : int = 7 [static]
Vertex skin weights attribute (could be float1 to float4 depending of the Device3D.maxBonesPerVertex property). | Surface3D | ||
| TANGENT : int = 4 [static]
Vertex tangents attribute (float3). | Surface3D | ||
| TARGET_NORMAL : int = 13 [static]
Vertex target normal attribute (float3). | Surface3D | ||
| TARGET_POSITION : int = 12 [static]
Vertex target position attribute (float3). | Surface3D | ||
| UV0 : int = 1 [static]
Vertex primary uv channel attribute (flaot2). | Surface3D | ||
| UV1 : int = 2 [static]
Vertex secondary uv channel attribute (float2). | Surface3D | ||
| UV2 : int = 14 [static]
Vertex third uv channel attribute (float2). | Surface3D | ||
| UV3 : int = 15 [static]
Vertex four uv channel attribute (float2). | Surface3D | ||
| bounds | property |
public var bounds:Boundings3DReturns or sets a Boundings3D object with object properties, such as radius, dimensions, etc.
See also
| firstIndex | property |
public var firstIndex:int = 0The index of the first vertex index selected to render.
| format | property |
public var format:Vector.<String>The buffer format specified for each input.
| indexBuffer | property |
public var indexBuffer:IndexBuffer3DBuffer of indices that reference to a vertex buffers of the Surface3D.
| indexBytes | property |
public var indexBytes:ByteArrayVector of indices that reference to a vertex buffers of the Surface3D.
| indexVector | property |
indexVector:Vector.<uint>Vector of indices that reference to a vertex buffers of the Surface3D.
public function get indexVector():Vector.<uint> public function set indexVector(value:Vector.<uint>):void| instanceOf | property |
instanceOf:Surface3DGets or sets the instance reference of the surface if there is one.
public function get instanceOf():Surface3D public function set instanceOf(value:Surface3D):void| material | property |
material:Material3DMaterial instance to render the surface.
public function get material():Material3D public function set material(value:Material3D):void| name | property |
public var name:StringThe name of the surface.
| numTriangles | property |
public var numTriangles:int = -1Number of triangles that will be drawn.
| offset | property |
public var offset:Vector.<int>The offset of data index in the vertexVector.
| polys | property |
polys:Vector.<Poly3D> public function get polys():Vector.<Poly3D> public function set polys(value:Vector.<Poly3D>):void| scene | property |
public var scene:Scene3DGets the scene context of the surface. Do not change this property manually, to change the scene context, call to download() and then to upload() methods.
| sizePerVertex | property |
public var sizePerVertex:int = 0The number of data values associated with each vertex
| sources | property |
public var sources:Vector.<Surface3D>The surface sources of data index from where the input should be read. A null value means the same surface.
| vertexBuffer | property |
public var vertexBuffer:VertexBuffer3DBuffer of vertices that reference to a vertex buffers of the Surface3D.
| vertexBytes | property |
public var vertexBytes:ByteArrayVector of vertices that reference to a vertex buffers of the Surface3D.
| vertexVector | property |
vertexVector:Vector.<Number>Vector of vertices that reference to a vertex buffers of the Surface3D.
public function get vertexVector():Vector.<Number> public function set vertexVector(value:Vector.<Number>):void| visible | property |
public var visible:Boolean = true| Surface3D | () | Constructor |
public function Surface3D(name:String = null)Creates a new Surface3D object.
Parametersname:String (default = null) |
| addVertexData | () | method |
public function addVertexData(dataIndex:uint, size:int = -1, vector:Vector.<Number> = null):intDefine a new attribute for each vertex. Each attribute can be a vector of 1-4 values (flotas) associated to each vertex.
The vertexVector can be for example: x,y,z,nx,ny,nz,u,v, x,y,z,nx,ny,nz,u,v, x,y,z,nx,ny,nz,u,v...
Parameters
dataIndex:uint — A value from 0 to 7 that define the type of data to be assocciated. The common values may be one of the POSITION, NORMALS, UV0, UV1, etc. constans of the Surface3D class.
| |
size:int (default = -1) — The size of data associated to the attribute for each vertex (1 to 4).
| |
vector:Vector.<Number> (default = null) |
int —
|
| dispose | () | method |
public function dispose():voidDestroys, downloads and removes all the used memory by the surface, thus it can't longer be used.
See also
| download | () | method |
public function download():voidDownloads and removes the GPU buffers immediately, but the surface data remains intact so it could be changed or uploaded for later use. When unsing download method, it is correct to remove the meshes or objects that are using it from the scene, otherwise, the surface will be uploaded again during the next frame render.
See also
| updateBoundings | () | method |
public function updateBoundings():Boundings3DGoes through each vertex to calculate the surface boundings.
ReturnsBoundings3D — A new Boundings3D object with the result.
|
| updateIndexBuffer | () | method |
public function updateIndexBuffer(startIndex:int = 0, numIndices:int = -1):voidUpdates a portion or all the surface index data into the GPU buffers.
Parameters
startIndex:int (default = 0) — The index of the first index to be loaded. A value not equal to zero may be used to load a sub-region of the index data.
| |
numIndices:int (default = -1) — The number of indices to be updated.
|
See also
| updateVertexBuffer | () | method |
public function updateVertexBuffer(startVertex:int = 0, numVertices:int = -1):voidUpdates a portion or all the surface vertex data into the GPU buffers.
Parameters
startVertex:int (default = 0) — The index of the first vertex to be loaded. A value for startVertex not equal to zero may be used to load a sub-region of the vertex data.
| |
numVertices:int (default = -1) — The number of vertices to be updated.
|
See also
| upload | () | method |
public function upload(scene:Scene3D):voidLink the surface to be uploaded on a specific scene context. If the scene context is already avaiable and the surface isn't linked to any context yet, it is uploaded immediately, otherwise, it will wait until a scene context is available or the surface needs to be render, in which case it is linked to the current scene context in use. Calling to this method multiple times has no effect. To update buffers data on the GPU, use updateVertexBuffer and updateIndexBuffer methods instead. If the size of the surface data needs to be changed, call first to download method to dispose the current buffers.
Parameters
scene:Scene3D — The scene context in which the surface will be uploaded.
|
See also
| BITANGENT | Constant |
public static const BITANGENT:int = 5Vertex bi-tangents attribute (float3).
| COLOR0 | Constant |
public static const COLOR0:int = 9Vertex color attribute (float3).
| COLOR1 | Constant |
public static const COLOR1:int = 10Vertex color attribute (float3).
| COLOR2 | Constant |
public static const COLOR2:int = 11Vertex color attribute (float3).
| NORMAL | Constant |
public static const NORMAL:int = 3Vertex normals attribute (float3).
| PARTICLE | Constant |
public static const PARTICLE:int = 6Vertex particles attribute (float4). Life (0-1), rotation in radians and size x and y (-1 to 1).
| POSITION | Constant |
public static const POSITION:int = 0Vertex position attribute (float3).
| SKIN_INDICES | Constant |
public static const SKIN_INDICES:int = 8Vertex skin indices attribute (could be float1 to float4 depending of the Device3D.maxBonesPerVertex property).
| SKIN_WEIGHTS | Constant |
public static const SKIN_WEIGHTS:int = 7Vertex skin weights attribute (could be float1 to float4 depending of the Device3D.maxBonesPerVertex property).
| TANGENT | Constant |
public static const TANGENT:int = 4Vertex tangents attribute (float3).
| TARGET_NORMAL | Constant |
public static const TARGET_NORMAL:int = 13Vertex target normal attribute (float3).
| TARGET_POSITION | Constant |
public static const TARGET_POSITION:int = 12Vertex target position attribute (float3).
| UV0 | Constant |
public static const UV0:int = 1Vertex primary uv channel attribute (flaot2).
| UV1 | Constant |
public static const UV1:int = 2Vertex secondary uv channel attribute (float2).
| UV2 | Constant |
public static const UV2:int = 14Vertex third uv channel attribute (float2).
| UV3 | Constant |
public static const UV3:int = 15Vertex four uv channel attribute (float2).