vkf_light_set Interface

interface


Called by

interface~~vkf_light_set~~CalledByGraph interface~vkf_light_set vkf_light_set proc~apply_light apply_light proc~apply_light->interface~vkf_light_set proc~apply_window_light apply_window_light proc~apply_window_light->interface~vkf_light_set proc~build_light build_light proc~build_light->proc~apply_light proc~open WindowProxy%open proc~open->proc~apply_window_light proc~set_light_ambient WindowProxy%set_light_ambient proc~set_light_ambient->proc~apply_window_light proc~set_light_ambient~2 ReferenceFrame%set_light_ambient proc~set_light_ambient~2->proc~apply_light proc~set_light_diffuse WindowProxy%set_light_diffuse proc~set_light_diffuse->proc~apply_window_light proc~set_light_diffuse~2 ReferenceFrame%set_light_diffuse proc~set_light_diffuse~2->proc~apply_light proc~set_light_position WindowProxy%set_light_position proc~set_light_position->proc~apply_window_light proc~set_light_specular WindowProxy%set_light_specular proc~set_light_specular->proc~apply_window_light proc~set_light_specular~2 ReferenceFrame%set_light_specular proc~set_light_specular~2->proc~apply_light proc~realize ReferenceFrame%realize proc~realize->proc~build_light proc~realize->proc~realize proc~set_light_source_enabled ReferenceFrame%set_light_source_enabled proc~set_light_source_enabled->proc~build_light proc~add_child ReferenceFrame%add_child proc~add_child->proc~realize proc~frame WindowProxy%frame proc~frame->proc~realize proc~resize WindowProxy%resize proc~resize->proc~frame proc~run WindowProxy%run proc~run->proc~frame

public function vkf_light_set(light, ambient, diffuse, specular, position) bind(C, name="vkf_light_set")

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: light

light handle (vkf_light_create, vkf_viewer_light)

real(kind=c_float), intent(in), dimension(3) :: ambient

colors (rgb, 0 to 1)

real(kind=c_float), intent(in), dimension(3) :: diffuse

colors (rgb, 0 to 1)

real(kind=c_float), intent(in), dimension(3) :: specular

colors (rgb, 0 to 1)

real(kind=c_double), intent(in), dimension(4) :: position

OpenGL's (x, y, z, w): w = 0 for a directional light from direction (x, y, z), else a point light at (x/w, y/w, z/w)

Return Value integer(kind=c_int)

Description

Set a light's colors and position, in its node's coordinates. Returns 0 (-1 for a bad handle).