Hi,
You could use a float array...
Type color4f
Field rgba#[4]
End Type
...and pass that directly...
glLightfv GL_LIGHT0, GL_AMBIENT, ambient.rgba
However, OpenGL is intrinsicly low level anyway and I'd be inclined to stick with what you've got. You'll find out pretty quickly if you move something and break it!
You could use a float array...
Type color4f
Field rgba#[4]
End Type
...and pass that directly...
glLightfv GL_LIGHT0, GL_AMBIENT, ambient.rgba
However, OpenGL is intrinsicly low level anyway and I'd be inclined to stick with what you've got. You'll find out pretty quickly if you move something and break it!