Class KX_BlenderMaterial -- Blender Game Engine 2.49b
|
getMaterialIndex
getMaterialIndex()
Returns whether or not the material has a material index.
Return Type: bool
True (1) or False
(0)
Note:
For a material to have a
material index, either Blender GLSL Materials or Blender MultiTexture
Materials must be
checked.
Sample
Code
# define the main part of the program
def main():
# get the current scene
scene = GameLogic.getCurrentScene()
# get a list of the objects in the scene
objList = scene.objects
# get object named Cube
objCube = objList["OBCube"]
# only one mesh on this cube
mesh = objCube.meshes[0]
# only one material on this mesh
mat = mesh.materials[0]
# Using Blender GLSL Materials or Blender Multitexture
Materials?
if hasattr(mat, "getMaterialIndex") == True:
# get shader envelope
shader = mat.getShader()
# did it get the shader envelope?
if shader != None:
# set the source and use it
shader.setSource(VertexProgram,FragmentProgram, True)
####### end of main program def
# Import OpenGL code as a string
VertexProgram = """
void main()
{
// OpenGL glsl
gl_Position = ftransform();
}
"""
# Import OpenGL code as a string
FragmentProgram = """
void main()
{
// Set color to green
gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0);
}
"""
# run the program
main()
|
Game developers
can use the game engine to create casual video games,
first and third person shooters, role playing games, racing simulations
and more. The game engine can be used to make both 2D games and 3D
games. Beginning game developers will only need basic knowledge
of
game design and programming to create rich and complex game models with
photo realistic textures to add detail to the graphics of the video
game. Today's games need more than good looking low polygon game
models. Use normal maps and photo realistic textures to create
high
quality game models.