Libraries.Game.Graphics.Models.OpenGL.ModelResourcesOpenGL Documentation

Inherits from: Libraries.Language.Object, Libraries.Game.Graphics.Models.ModelResources

Actions Documentation

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Parameters

Return

integer: The Compare result, Smaller, Equal, or Larger.

Example

Object o
Object t
integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)

CopyNodes(Libraries.Containers.Array<Libraries.Game.Graphics.Models.OpenGL.Node> copyNodes)

Copy the nodes from the given array into this model's data structures. FIX-ME: SetBones() commented, will eventually need to be fixed for animations.

Parameters

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

Example

use Libraries.Language.Object
use Libraries.Language.Types.Text
Object o
Text t
boolean result = o:Equals(t)

GetAnimations()

This action returns an array containing all Animation objects used by this Model.

Return

Libraries.Containers.Array: The array containing the Animations used by this Model.

Example

use Libraries.Game.Game
use Libraries.Game.Graphics.Model
use Libraries.Game.Graphics.Color
use Libraries.Game.Graphics.ModelData.Animation
use Libraries.Containers.Array

class Main is Game

    Model cube

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 0.75, 1, 1)

        cube:LoadBox(2, 2, 2, cyan)
        Add(cube)

        Array<Animation> animations = cube:GetAnimations()
        output "This model uses " + animations:GetSize() + " animation(s)."
    end
end

GetHashCode()

This action gets the hash code for an object.

Return

integer: The integer hash code of the object.

Example

Object o
integer hash = o:GetHashCode()

GetMaterials()

This action returns an array containing all Material objects used by this Model.

Return

Libraries.Containers.Array: The array containing the Materials used by this Model.

Example

use Libraries.Game.Game
use Libraries.Game.Graphics.Model
use Libraries.Game.Graphics.Color
use Libraries.Game.Graphics.Material
use Libraries.Containers.Array

class Main is Game

    Model cube

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 0.75, 1, 1)

        cube:LoadBox(2, 2, 2, cyan)
        Add(cube)

        Array<Material> materials = cube:GetMaterials()
        output "This model uses " + materials:GetSize() + " material(s)."
    end
end

GetNodes()

This action returns an array containing all Node objects used by this Model.

Return

Libraries.Containers.Array: The array containing the Nodes used by this Model.

Example

use Libraries.Game.Game
use Libraries.Game.Graphics.Model
use Libraries.Game.Graphics.Color
use Libraries.Game.Graphics.ModelData.Node
use Libraries.Containers.Array

class Main is Game

    Model cube

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 0.75, 1, 1)

        cube:LoadBox(2, 2, 2, cyan)
        Add(cube)

        Array<Node> nodes = cube:GetNodes()
        output "This model uses " + nodes:GetSize() + " node(s)."
    end
end

GetRenderables(Libraries.Containers.Array<Libraries.Game.Graphics.Renderable> renderables)

Copy the nodes from the given array into this model's data structures. FIX-ME: SetBones() commented, will eventually need to be fixed for animations.

Parameters

SetColor(Libraries.Game.Graphics.Color color)

This action sets the diffuse color of a primitive model. If the model did not previously have a color applied to it, it will add a color to it.

Parameters

SetColor(integer meshIndex, Libraries.Game.Graphics.Color color)

This action sets the diffuse color of a primitive model. If the model did not previously have a color applied to it, it will add a color to it.

Parameters

SetFromBlueprint(Libraries.Game.Graphics.Models.ModelBlueprint schematic)

This action returns an array containing all Animation objects used by this Model.

Parameters

Example

use Libraries.Game.Game
use Libraries.Game.Graphics.Model
use Libraries.Game.Graphics.Color
use Libraries.Game.Graphics.ModelData.Animation
use Libraries.Containers.Array

class Main is Game

    Model cube

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 0.75, 1, 1)

        cube:LoadBox(2, 2, 2, cyan)
        Add(cube)

        Array<Animation> animations = cube:GetAnimations()
        output "This model uses " + animations:GetSize() + " animation(s)."
    end
end

SetModel(Libraries.Game.Graphics.Model model)

SetTexture(Libraries.Game.Graphics.Texture texture)

This action returns an array containing all Node objects used by this Model.

Parameters

Example

use Libraries.Game.Game
use Libraries.Game.Graphics.Model
use Libraries.Game.Graphics.Color
use Libraries.Game.Graphics.ModelData.Node
use Libraries.Containers.Array

class Main is Game

    Model cube

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 0.75, 1, 1)

        cube:LoadBox(2, 2, 2, cyan)
        Add(cube)

        Array<Node> nodes = cube:GetNodes()
        output "This model uses " + nodes:GetSize() + " node(s)."
    end
end

SetTexture(integer meshIndex, Libraries.Game.Graphics.Texture texture)

This action returns an array containing all Material objects used by this Model.

Parameters

Example

use Libraries.Game.Game
use Libraries.Game.Graphics.Model
use Libraries.Game.Graphics.Color
use Libraries.Game.Graphics.Material
use Libraries.Containers.Array

class Main is Game

    Model cube

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 0.75, 1, 1)

        cube:LoadBox(2, 2, 2, cyan)
        Add(cube)

        Array<Material> materials = cube:GetMaterials()
        output "This model uses " + materials:GetSize() + " material(s)."
    end
end