blender/source/gameengine/PyDoc/KX_Scene.py
Campbell Barton 6c7c38a4e4 BGE Py API
* Made GameLogic.addActiveActuator(actu, bool) to raise an error if the actuator is not in the list. Before it would allow any value as the actuator and fail silently (makes debugging scripts more difficult).

* Allow the actuator to be a string which is convenient if you dont want to change the settings of the actuator.
* Added activate/deactivate functions to the controller, this is more logical since the GameLogic.addActiveActuator() function is running through the controller anyway.

GameLogic.addActiveActuator(controller.getActuator("SomeAct"), True)
...can be replaced with...
controller.activate("SomeAct")
2009-02-24 05:50:45 +00:00

73 lines
1.9 KiB
Python

# $Id$
# Documentation for KX_Scene.py
class KX_Scene:
"""
Scene.
The activity culling stuff is supposed to disable logic bricks when their owner gets too far
from the active camera. It was taken from some code lurking at the back of KX_Scene - who knows
what it does!
Example::
import GameLogic
# get the scene
scene = GameLogic.getCurrentScene()
# print all the objects in the scene
for obj in scene.getObjectList():
print obj.getName()
# get an object named 'Cube'
obj = scene.getObjectList()["OBCube"]
# get the first object in the scene.
obj = scene.getObjectList()[0]
Example::
# Get the depth of an object in the camera view.
import GameLogic
obj = GameLogic.getCurrentController().getOwner()
cam = GameLogic.getCurrentScene().active_camera
# Depth is negative and decreasing further from the camera
depth = obj.position[0]*cam.world_to_camera[2][0] + obj.position[1]*cam.world_to_camera[2][1] + obj.position[2]*cam.world_to_camera[2][2] + cam.world_to_camera[2][3]
@bug: All attributes are read only at the moment.
@ivar name: The scene's name
@type name: string
@type objects: A list of objects in the scene.
@type objects: list [L{KX_GameObject}]
@ivar active_camera: The current active camera
@type active_camera: L{KX_Camera}
@ivar suspended: True if the scene is suspended.
@type suspended: boolean
@ivar activity_culling: True if the scene is activity culling
@type activity_culling: boolean
@ivar activity_culling_radius: The distance outside which to do activity culling. Measured in manhattan distance.
@type activity_culling_radius: float
"""
def getLightList():
"""
Returns the list of lights in the scene.
@rtype: list [L{KX_Light}]
"""
def getObjectList():
"""
Returns the list of objects in the scene.
@rtype: list [L{KX_GameObject}]
"""
def getName():
"""
Returns the name of the scene.
@rtype: string
"""