phaser - v3.90.0
    Preparing search index...

    A Face Geometry Object.

    A Face is used by the Mesh Game Object. A Mesh consists of one, or more, faces that are used to render the Mesh Game Objects in WebGL.

    A Face consists of 3 Vertex instances, for the 3 corners of the face and methods to help you modify and test them.

    Index

    Constructors

    Properties

    alpha: number

    Set the alpha value of this Face.

    Each vertex is given the same value. If you need to adjust the alpha on a per-vertex basis then use the Vertex.alpha property instead.

    When getting the alpha of this Face, it will return an average of the alpha component of all three vertices.

    bounds: Geom.Rectangle

    The bounds of this Face.

    Be sure to call the Face.updateBounds method before using this property.

    depth: number

    The depth of this Face, which is an average of the z component of all three vertices.

    The depth is calculated based on the transformed z value, not the local one.

    vertex1: Geom.Mesh.Vertex

    The first vertex in this Face.

    vertex2: Geom.Mesh.Vertex

    The second vertex in this Face.

    vertex3: Geom.Mesh.Vertex

    The third vertex in this Face.

    x: number

    The x coordinate of this Face, based on the in center position of the Face.

    y: number

    The y coordinate of this Face, based on the in center position of the Face.

    Methods

    • Checks if the given coordinates are within this Face.

      You can optionally provide a transform matrix. If given, the Face vertices will be transformed first, before being checked against the coordinates.

      Parameters

      • x: number

        The horizontal position to check.

      • y: number

        The vertical position to check.

      • OptionalcalcMatrix: TransformMatrix

        Optional transform matrix to apply to the vertices before comparison.

      Returns boolean

    • Destroys this Face and nulls the references to the vertices.

      Returns void

    • Calculates and returns the in-center position of this Face.

      Parameters

      • Optionallocal: boolean

        Return the in center from the un-transformed vertex positions (true), or transformed? (false) Default true.

      Returns Math.Vector2

    • Checks if the vertices in this Face are orientated counter-clockwise, or not.

      It checks the transformed position of the vertices, not the local one.

      Parameters

      • z: number

        The z-axis value to test against. Typically the Mesh.modelPosition.z.

      Returns boolean

    • Checks if this Face is within the view of the given Camera.

      This method is called in the MeshWebGLRenderer function. It performs the following tasks:

      First, the Vertex.update method is called on each of the vertices. This populates them with the new translated values, updating their tx, ty and ta properties.

      Then it tests to see if this face is visible due to the alpha values, if not, it returns.

      After this, if hideCCW is set, it calls isCounterClockwise and returns if not.

      Finally, it will update the Face.bounds based on the newly translated vertex values and return the results of an intersection test between the bounds and the camera world view rectangle.

      Parameters

      • camera: Camera

        The Camera to check against.

      • hideCCW: boolean

        Test the counter-clockwise orientation of the verts?

      • z: number

        The Cameras z position, used in the CCW test.

      • alpha: number

        The alpha of the parent object.

      • a: number

        The parent transform matrix data a component.

      • b: number

        The parent transform matrix data b component.

      • c: number

        The parent transform matrix data c component.

      • d: number

        The parent transform matrix data d component.

      • e: number

        The parent transform matrix data e component.

      • f: number

        The parent transform matrix data f component.

      • roundPixels: boolean

        Round the vertex position or not?

      Returns boolean

    • Loads the data from this Vertex into the given Typed Arrays.

      Parameters

      • F32: Float32Array

        A Float32 Array to insert the position, UV and unit data in to.

      • U32: Uint32Array

        A Uint32 Array to insert the color and alpha data in to.

      • offset: number

        The index of the array to insert this Vertex to.

      • textureUnit: number

        The texture unit currently in use.

      • tintEffect: number

        The tint effect to use.

      Returns number

    • Scales the original UV values of each vertex by the given amounts.

      The original properties Vertex.u and Vertex.v remain unchanged, only the translated properties Vertex.tu and Vertex.tv, as used in rendering, are updated.

      Parameters

      • x: number

        The amount to scale the UV u coordinate by.

      • y: number

        The amount to scale the UV v coordinate by.

      Returns this

    • Translates the original UV positions of each vertex by the given amounts.

      The original properties Vertex.u and Vertex.v remain unchanged, only the translated properties Vertex.tu and Vertex.tv, as used in rendering, are updated.

      Parameters

      • x: number

        The amount to scroll the UV u coordinate by.

      • y: number

        The amount to scroll the UV v coordinate by.

      Returns this

    • Sets the color value for each Vertex in this Face.

      Parameters

      • color: number

        The color value for each vertex.

      Returns this

    • Transforms all Face vertices by the given matrix, storing the results in their vx, vy and vz properties.

      Parameters

      • transformMatrix: Math.Matrix4

        The transform matrix to apply to this vertex.

      • width: number

        The width of the parent Mesh.

      • height: number

        The height of the parent Mesh.

      • cameraZ: number

        The z position of the MeshCamera.

      Returns this

    • Translates the vertices of this Face by the given amounts.

      The actual vertex positions are adjusted, not their transformed position.

      Therefore, this updates the vertex data directly.

      Parameters

      • x: number

        The amount to horizontally translate by.

      • Optionaly: number

        The amount to vertically translate by. Default 0.

      Returns this

    • Calls the Vertex.update method on each of the vertices. This populates them with the new translated values, updating their tx, ty and ta properties.

      Parameters

      • alpha: number

        The alpha of the parent object.

      • a: number

        The parent transform matrix data a component.

      • b: number

        The parent transform matrix data b component.

      • c: number

        The parent transform matrix data c component.

      • d: number

        The parent transform matrix data d component.

      • e: number

        The parent transform matrix data e component.

      • f: number

        The parent transform matrix data f component.

      • roundPixels: boolean

        Round the vertex position or not?

      Returns this

    • Updates the bounds of this Face, based on the translated values of the vertices.

      Call this method prior to accessing the Face.bounds property.

      Returns this