blender/source/gameengine/PyDoc/KX_Scene.py

86 lines
2.4 KiB
Python
Raw Normal View History

2004-06-07 11:03:12 +00:00
# $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.objects:
print obj.name
2004-06-07 11:03:12 +00:00
# get an object named 'Cube'
obj = scene.objects["OBCube"]
2004-06-07 11:03:12 +00:00
# get the first object in the scene.
obj = scene.objects[0]
2004-06-07 11:03:12 +00:00
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.
2004-06-07 11:03:12 +00:00
@ivar name: The scene's name
@type name: string
@ivar objects: A list of objects in the scene.
@type objects: L{CListValue<CListValue.CListValue>} of L{KX_GameObject<KX_GameObject.KX_GameObject>}
2004-06-07 11:03:12 +00:00
@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_LightObject}]
2004-06-07 11:03:12 +00:00
"""
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
"""
def addObject(object, other, time=0):
"""
Adds an object to the scene like the Add Object Actuator would, and returns the created object.
@param object: The object to add
@type object: L{KX_GameObject} or string
@param other: The object's center to use when adding the object
@type other: L{KX_GameObject} or string
@param time: The lifetime of the added object, in frames. A time of 0 means the object will last forever.
@type time: int
@rtype: L{KX_GameObject}
"""