LightAttrib

from panda3d.core import LightAttrib
class LightAttrib

Bases:

Bases: RenderAttrib

Indicates which set of lights should be considered “on” to illuminate geometry at this level and below. A LightAttrib can either add lights or remove lights from the total set of “on” lights.

Inheritance diagram

Inheritance diagram of LightAttrib

enum Operation

This is the old, deprecated interface to LightAttrib. Do not use any of these methods for new code; these methods will be removed soon.

enumerator O_set = 0
enumerator O_add = 1
enumerator O_remove = 2
add_light(light: Light) RenderAttrib

Returns a new LightAttrib, just like this one, but with the indicated light added to the list of lights.

Deprecated: Use add_on_light() or add_off_light() instead.

add_off_light(light: NodePath) RenderAttrib

Returns a new LightAttrib, just like this one, but with the indicated light added to the list of lights turned off by this attrib.

add_on_light(light: NodePath) RenderAttrib

Returns a new LightAttrib, just like this one, but with the indicated light added to the list of lights turned on by this attrib.

property class_slot int
get_ambient_contribution() LColor

Returns the total contribution of all the ambient lights.

static get_class_slot() int
static get_class_type() TypeHandle
get_light(n: int) Light

Returns the nth light listed in the attribute.

Deprecated: LightAttribs nowadays have a separate list of on_lights and

off_lights, so this method no longer makes sense. Query the lists independently.

get_most_important_light() NodePath

Returns the most important light (that is, the light with the highest priority) in the LightAttrib, excluding any ambient lights. Returns an empty NodePath if no non-ambient lights are found.

get_num_lights() int

Returns the number of lights listed in the attribute.

Deprecated: LightAttribs nowadays have a separate list of on_lights and

off_lights, so this method no longer makes sense. Query the lists independently.

get_num_non_ambient_lights() int

Returns the number of non-ambient lights that are turned on by this attribute.

get_num_off_lights() int

Returns the number of lights that are turned off by the attribute.

get_num_on_lights() int

Returns the number of lights that are turned on by the attribute.

get_off_light(n: int) NodePath

Returns the nth light turned off by the attribute, sorted in arbitrary (pointer) order.

get_off_lights() list
get_on_light(n: int) NodePath

Returns the nth light turned on by the attribute, sorted in render order.

get_on_lights() list
get_operation() Operation

Returns the basic operation type of the LightAttrib. If this is O_set, the lights listed here completely replace any lights that were already on. If this is O_add, the lights here are added to the set of lights that were already on, and if O_remove, the lights here are removed from the set of lights that were on.

Deprecated: LightAttribs nowadays have a separate list of on_lights and

off_lights, so this method no longer makes sense. Query the lists independently.

has_all_off() bool

Returns true if this attrib turns off all lights (although it may also turn some on).

has_any_on_light() bool

Returns true if any light is turned on by the attrib, false otherwise.

has_light(light: Light) bool

Returns true if the indicated light is listed in the attrib, false otherwise.

Deprecated: LightAttribs nowadays have a separate list of on_lights and

off_lights, so this method no longer makes sense. Query the lists independently.

has_off_light(light: NodePath) bool

Returns true if the indicated light is turned off by the attrib, false otherwise.

has_on_light(light: NodePath) bool

Returns true if the indicated light is turned on by the attrib, false otherwise.

is_identity() bool

Returns true if this is an identity attrib: it does not change the set of lights in use.

static make() RenderAttrib

The following is the new, more general interface to the LightAttrib.

static make(op: Operation, light: Light) RenderAttrib

Constructs a new LightAttrib object that turns on (or off, according to op) the indicated light(s).

Deprecated: Use add_on_light() or add_off_light() instead.

static make(op: Operation, light1: Light, light2: Light) RenderAttrib

Constructs a new LightAttrib object that turns on (or off, according to op) the indicate light(s).

Deprecated: Use add_on_light() or add_off_light() instead.

static make(op: Operation, light1: Light, light2: Light, light3: Light) RenderAttrib

Constructs a new LightAttrib object that turns on (or off, according to op) the indicate light(s).

Deprecated: Use add_on_light() or add_off_light() instead.

static make(op: Operation, light1: Light, light2: Light, light3: Light, light4: Light) RenderAttrib

Constructs a new LightAttrib object that turns on (or off, according to op) the indicate light(s).

Deprecated: Use add_on_light() or add_off_light() instead.

static make_all_off() RenderAttrib

Constructs a new LightAttrib object that turns off all lights (and hence disables lighting).

static make_default() RenderAttrib

Returns a RenderAttrib that corresponds to whatever the standard default properties for render attributes of this type ought to be.

property off_lights Sequence[NodePath]

Returns the nth light turned off by the attribute, sorted in arbitrary (pointer) order.

property on_lights Sequence[NodePath]

Returns the nth light turned on by the attribute, sorted in render order.

remove_light(light: Light) RenderAttrib

Returns a new LightAttrib, just like this one, but with the indicated light removed from the list of lights.

Deprecated: Use remove_on_light() or remove_off_light() instead.

remove_off_light(light: NodePath) RenderAttrib

Returns a new LightAttrib, just like this one, but with the indicated light removed from the list of lights turned off by this attrib.

remove_on_light(light: NodePath) RenderAttrib

Returns a new LightAttrib, just like this one, but with the indicated light removed from the list of lights turned on by this attrib.

replace_off_light(source: NodePath, dest: NodePath) RenderAttrib

Returns a new LightAttrib, just like this one, but with the indicated light replaced with the given other light.

replace_on_light(source: NodePath, dest: NodePath) RenderAttrib

Returns a new LightAttrib, just like this one, but with the indicated light replaced with the given other light.