GL objects

OpenGL objects work like any other language's objects, but the syntax is quite different. They work like this:

Here's an example in C++:

struct Object
{
    int count;
    float opacity;
    char *name;
};

//Create the storage for the object.
Object* newObject;
newObject = new Object();

//Put data into the object.
newObject->count = 5;
newObject->opacity = 0.4f;
newObject->name = "Some String";

Here's a similar example in OpenGL:

//Create the storage for the object
GLuint objectName;
glGenObject(1, &objectName);

//Put data into the object
glBindObject(GL_MODIFY, objectName);
glObjectParameter(GL_MODIFY, GL_OBJECT_COUNT, 5);
glObjectParameter(GL_MODIFY, GL_OBJECT_OPACITY, 0.4f);
glObjectParameter(GL_MODIFY, GL_OBJECT_NAME, "Some String");

The objectName is called the handle. It is like a pointer to the OpenGL state.