forked from bartvdbraak/blender
976e3a1824
Added Actuator documentation.
110 lines
2.2 KiB
Python
110 lines
2.2 KiB
Python
# $Id$
|
|
"""
|
|
Documentation for the Rasterizer module.
|
|
|
|
Example Uses an L{SCA_MouseSensor}, and two L{KX_ObjectActuator}s to implement MouseLook::
|
|
# To use a mouse movement sensor "Mouse" and a
|
|
# motion actuator to mouse look:
|
|
import Rasterizer
|
|
import GameLogic
|
|
|
|
# SCALE sets the speed of motion
|
|
SCALE=[1, 0.5]
|
|
|
|
co = GameLogic.getCurrentController()
|
|
obj = co.getOwner()
|
|
mouse = co.getSensor("Mouse")
|
|
lmotion = co.getActuator("LMove")
|
|
wmotion = co.getActuator("WMove")
|
|
|
|
# Transform the mouse coordinates to see how far the mouse has moved.
|
|
def mousePos():
|
|
x = (Rasterizer.getWindowWidth()/2 - mouse.getXPosition())*SCALE[0]
|
|
y = (Rasterizer.getWindowHeight()/2 - mouse.getYPosition())*SCALE[1]
|
|
return (x, y)
|
|
|
|
pos = mousePos()
|
|
|
|
# Set the amount of motion: X is applied in world coordinates...
|
|
lmotion.setTorque(0.0, 0.0, pos[0], False)
|
|
# ...Y is applied in local coordinates
|
|
wmotion.setTorque(-pos[1], 0.0, 0.0, True)
|
|
|
|
# Activate both actuators
|
|
GameLogic.addActiveActuator(lmotion, True)
|
|
GameLogic.addActiveActuator(wmotion, True)
|
|
|
|
# Centre the mouse
|
|
Rasterizer.setMousePosition(Rasterizer.getWindowWidth()/2, Rasterizer.getWindowHeight()/2)
|
|
|
|
|
|
"""
|
|
|
|
def getWindowWidth():
|
|
"""
|
|
Gets the width of the window (in pixels)
|
|
|
|
@rtype: integer
|
|
"""
|
|
def getWindowHeight():
|
|
"""
|
|
Gets the height of the window (in pixels)
|
|
|
|
@rtype: integer
|
|
"""
|
|
def makeScreenshot(filename):
|
|
"""
|
|
Writes a screenshot to the given filename.
|
|
|
|
@type filename: string
|
|
"""
|
|
|
|
def enableVisibility(visible):
|
|
"""
|
|
Doesn't really do anything...
|
|
"""
|
|
|
|
def showMouse(visible):
|
|
"""
|
|
Enables or disables the operating system mouse cursor.
|
|
|
|
@type visible: boolean
|
|
"""
|
|
|
|
def setMousePosition(x, y):
|
|
"""
|
|
Sets the mouse cursor position.
|
|
|
|
@type x, y: integer
|
|
"""
|
|
|
|
def setBackgroundColor(rgba):
|
|
"""
|
|
Sets the window background colour.
|
|
|
|
@type rgba: list [r, g, b, a]
|
|
"""
|
|
|
|
def setMistColor(rgb):
|
|
"""
|
|
Sets the mist colour.
|
|
|
|
@type rgb: list [r, g, b]
|
|
"""
|
|
|
|
def setMistStart(start):
|
|
"""
|
|
Sets the mist start value. Objects further away than start will have mist applied to them.
|
|
|
|
@type start: float
|
|
"""
|
|
|
|
def setMistEnd(end):
|
|
"""
|
|
Sets the mist end value. Objects further away from this will be coloured solid with
|
|
the colour set by setMistColor().
|
|
|
|
@type end: float
|
|
"""
|
|
|