Update TODO

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Add state_clone

This will make materials easier, as we can have "template states"

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Add refcounting API for shaders

This brings shaders in line with everything else. Way overdue.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Allow setting state's shader after construction

This is necessary for cloned states to be useful

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Update TODO

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Remove useless clamp settings from demo.c

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Small demo.c refactoring

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Add uniform_vcreate internal function

Just the usual va_args wrapper pattern. This will let us simplify a few
interfaces.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Add UNIFORM_OBJECT uniform type

This is an argument type that indicates a uniform is being passed as an
existing uniform object which encodes its own type information. In the case of
uniform_create, we just fetch the uniform_t * argument, reference it, and
return it.

Where this will be useful is when we change other functions that take uniform_t
to either take the literal uniform value, or a uniform_t object.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Rearrange uniform_create arguments

Makes things more consistent with state_set_uniform, and allows us to not take
a name argument when we don't need one.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Rename UNIFORM_OBJECT to UNIFORM_CLONE

This is the more intuitive naming convention.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>