Error in user YAML: (<unknown>): did not find expected key while parsing a block mapping at line 1 column 1
import bpy
def clear_scene():
bpy.ops.object.select_all(action="SELECT")
bpy.ops.object.delete()
def create_ball():
bpy.ops.mesh.primitive_ico_sphere_add()
ball = bpy.context.object
bpy.ops.object.modifier_add(type='SUBSURF')
ball.name = "ball"
ball.scale = (10,10,10)
ball.rotation_euler = (0.0, 3.071779489517212, -1.0297441482543945)
ball.keyframe_insert(data_path="rotation_euler", frame=0)
bpy.context.object.rotation_euler[0] = 17.0519
ball.keyframe_insert(data_path="rotation_euler", frame=150)
def create_rainbow_material():
# 创建材质并命名
material = bpy.data.materials.new(name="RainbowMaterial")
material.use_nodes = True
nodes = material.node_tree.nodes
links = material.node_tree.links
# 删除所有材质节点
for node in nodes:
nodes.remove(node)
# 创建新的材质节点
texture_coord = nodes.new(type='ShaderNodeTexCoord')
mapping = nodes.new(type='ShaderNodeMapping')
separate_xyz = nodes.new(type='ShaderNodeSeparateXYZ')
color_ramp = nodes.new(type='ShaderNodeValToRGB')
principled_bsdf = nodes.new(type='ShaderNodeBsdfPrincipled')
material_output = nodes.new(type='ShaderNodeOutputMaterial')
# 设置节点位置
texture_coord.location = (-800, 0)
mapping.location = (-600, 0)
separate_xyz.location = (-400, 0)
color_ramp.location = (-200, 0)
principled_bsdf.location = (0, 0)
material_output.location = (200, 0)
# 创建连接
links.new(texture_coord.outputs['Generated'], mapping.inputs['Vector'])
links.new(mapping.outputs['Vector'], separate_xyz.inputs['Vector'])
links.new(separate_xyz.outputs['Z'], color_ramp.inputs['Fac'])
links.new(color_ramp.outputs['Color'], principled_bsdf.inputs['Base Color'])
links.new(principled_bsdf.outputs['BSDF'], material_output.inputs['Surface'])
# 配置颜色渐变节点
color_ramp.color_ramp.interpolation = 'EASE'
# 添加新的颜色渐变元素
element2 = color_ramp.color_ramp.elements.new(0.5)
# 设置颜色渐变元素
color_ramp.color_ramp.elements[0].color = (0.794, 0.363, 0.395, 1)
color_ramp.color_ramp.elements[0].position = 0.0
element2.color = (0.630, 1.0, 0.441, 1)
element2.position = 0.5
color_ramp.color_ramp.elements[2].color = (0.479, 0.735, 0.960, 1)
color_ramp.color_ramp.elements[2].position = 1.0
# 判断激活物体存在
if bpy.context.object:
# 替换为彩虹材质
obj = bpy.context.object
if obj.data.materials:
obj.data.materials[0] = material
else:
obj.data.materials.append(material)
def create_torus():
bpy.ops.mesh.primitive_torus_add()
torus = bpy.context.object
torus.name = "torus"
mat = bpy.data.materials.new('color')
color = (0.803592, 0.70071, 0.0675094, 1)
mat.diffuse_color = color
torus.data.materials.append(mat)
torus.scale = (15,15,2)
torus.rotation_euler = (-0.21212656795978546, -0.23622387647628784, 0.020109739154577255)
torus.location = (0,0,0)
torus.keyframe_insert(data_path="rotation_euler", frame=0)
torus.rotation_euler = (-0.21212656795978546, -0.23622387647628784, 26.75855255126953)
torus.keyframe_insert(data_path="rotation_euler", frame=150)
def create_head():
bpy.ops.mesh.primitive_ico_sphere_add()
head = bpy.context.object
bpy.ops.object.modifier_add(type='SUBSURF')
head.name = "head"
mat = bpy.data.materials.new('color')
color = (0.8, 0.8, 0.8, 1)
mat.diffuse_color = color
head.data.materials.append(mat)
head.scale = (1,1,1)
head.location = (-2.1824724674224854, 0.7955342531204224, 12.523728370666504)
def create_body():
bpy.ops.mesh.primitive_cone_add()
body = bpy.context.object
body.name = "body"
mat = bpy.data.materials.new('color')
color = (0.474279, 0.228282, 1, 1)
mat.diffuse_color = color
body.data.materials.append(mat)
body.location = (-2.6806893348693848, 1.1509487628936768, 10.596158981323242)
body.rotation_euler = (0.18971194326877594, 0.4859398603439331, -0.29056620597839355)
body.scale = ((1.0, 1.0, 1.9299999475479126))
def create_leg1():
bpy.ops.mesh.primitive_cone_add()
leg1 = bpy.context.object
leg1.name = "leg1"
mat = bpy.data.materials.new('color')
color = (0.778989, 0.793691, 0.800265, 1)
mat.diffuse_color = color
leg1.data.materials.append(mat)
leg1.scale = (0.34,0.34,1.51)
leg1.location = (-3.786320686340332, 3.3717470169067383, 8.656601905822754)
leg1.rotation_euler = (-5.2796406745910645, 0.9296567440032959, -0.32371026277542114)
leg1.keyframe_insert(data_path="location", frame=0)
leg1.keyframe_insert(data_path="rotation_euler", frame=0)
leg1.location = (-3.362586736679077, 2.960252285003662, 8.428167343139648)
leg1.rotation_euler = (-5.632828712463379, 0.8834447264671326, -0.6590287089347839)
leg1.keyframe_insert(data_path="location", frame=25)
leg1.keyframe_insert(data_path="rotation_euler", frame=25)
leg1.location = (-3.786320686340332, 3.3717470169067383, 8.656601905822754)
leg1.rotation_euler = (-5.2796406745910645, 0.9296567440032959, -0.32371026277542114)
leg1.keyframe_insert(data_path="location", frame=50)
leg1.keyframe_insert(data_path="rotation_euler", frame=50)
leg1.location = (-3.362586736679077, 2.960252285003662, 8.428167343139648)
leg1.rotation_euler = (-5.632828712463379, 0.8834447264671326, -0.6590287089347839)
leg1.keyframe_insert(data_path="location", frame=75)
leg1.keyframe_insert(data_path="rotation_euler", frame=75)
leg1.location = (-3.786320686340332, 3.3717470169067383, 8.656601905822754)
leg1.rotation_euler = (-5.2796406745910645, 0.9296567440032959, -0.32371026277542114)
leg1.keyframe_insert(data_path="location", frame=100)
leg1.keyframe_insert(data_path="rotation_euler", frame=100)
leg1.location = (-3.362586736679077, 2.960252285003662, 8.428167343139648)
leg1.rotation_euler = (-5.632828712463379, 0.8834447264671326, -0.6590287089347839)
leg1.keyframe_insert(data_path="location", frame=125)
leg1.keyframe_insert(data_path="rotation_euler", frame=125)
leg1.location = (-3.786320686340332, 3.3717470169067383, 8.656601905822754)
leg1.rotation_euler = (-5.2796406745910645, 0.9296567440032959, -0.32371026277542114)
leg1.keyframe_insert(data_path="location", frame=150)
leg1.keyframe_insert(data_path="rotation_euler", frame=150)
def create_leg2():
bpy.ops.mesh.primitive_cone_add()
leg2 = bpy.context.object
leg2.name = "leg2"
mat = bpy.data.materials.new('color')
color = (0.778989, 0.793691, 0.800265, 1)
mat.diffuse_color = color
leg2.data.materials.append(mat)
leg2.scale = (0.34,0.34,1.51)
leg2.location = (-4.535537242889404, 2.238474130630493, 8.171255111694336)
leg2.rotation_euler = (-6.326724052429199, 0.8333261013031006, -0.6152930855751038)
leg2.keyframe_insert(data_path="location", frame=0)
leg2.keyframe_insert(data_path="rotation_euler", frame=0)
leg2.location = (-4.637707233428955, 2.2374367713928223, 8.480690002441406)
leg2.rotation_euler = (-5.987146854400635, 1.2056100368499756, -0.2856062650680542)
leg2.keyframe_insert(data_path="location", frame=25)
leg2.keyframe_insert(data_path="rotation_euler", frame=25)
leg2.location = (-4.535537242889404, 2.238474130630493, 8.171255111694336)
leg2.rotation_euler = (-6.326724052429199, 0.8333261013031006, -0.6152930855751038)
leg2.keyframe_insert(data_path="location", frame=50)
leg2.keyframe_insert(data_path="rotation_euler", frame=50)
leg2.location = (-4.637707233428955, 2.2374367713928223, 8.480690002441406)
leg2.rotation_euler = (-5.987146854400635, 1.2056100368499756, -0.2856062650680542)
leg2.keyframe_insert(data_path="location", frame=75)
leg2.keyframe_insert(data_path="rotation_euler", frame=75)
leg2.location = (-4.535537242889404, 2.238474130630493, 8.171255111694336)
leg2.rotation_euler = (-6.326724052429199, 0.8333261013031006, -0.6152930855751038)
leg2.keyframe_insert(data_path="location", frame=100)
leg2.keyframe_insert(data_path="rotation_euler", frame=100)
leg2.location = (-4.637707233428955, 2.2374367713928223, 8.480690002441406)
leg2.rotation_euler = (-5.987146854400635, 1.2056100368499756, -0.2856062650680542)
leg2.keyframe_insert(data_path="location", frame=125)
leg2.keyframe_insert(data_path="rotation_euler", frame=125)
leg2.location = (-4.535537242889404, 2.238474130630493, 8.171255111694336)
leg2.rotation_euler = (-6.326724052429199, 0.8333261013031006, -0.6152930855751038)
leg2.keyframe_insert(data_path="location", frame=150)
leg2.keyframe_insert(data_path="rotation_euler", frame=150)
def create_shoe1():
bpy.ops.mesh.primitive_ico_sphere_add()
shoe1 = bpy.context.object
bpy.ops.object.modifier_add(type='SUBSURF')
shoe1.name = "shoe1"
mat = bpy.data.materials.new('color')
color = (0.031554, 0.0365808, 0.800265, 1)
mat.diffuse_color = color
shoe1.data.materials.append(mat)
shoe1.scale = (0.48,0.45,1.0)
shoe1.location = (-5.622092247009277, 2.8525948524475098, 7.4785051345825195)
shoe1.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe1.keyframe_insert(data_path="location", frame=0)
shoe1.keyframe_insert(data_path="rotation_euler", frame=0)
shoe1.location = (-5.857794284820557, 2.989253282546997, 8.156514167785645)
shoe1.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe1.keyframe_insert(data_path="location", frame=25)
shoe1.keyframe_insert(data_path="rotation_euler", frame=25)
shoe1.location = (-5.622092247009277, 2.8525948524475098, 7.4785051345825195)
shoe1.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe1.keyframe_insert(data_path="location", frame=50)
shoe1.keyframe_insert(data_path="rotation_euler", frame=50)
shoe1.location = (-5.857794284820557, 2.989253282546997, 8.156514167785645)
shoe1.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe1.keyframe_insert(data_path="location", frame=75)
shoe1.keyframe_insert(data_path="rotation_euler", frame=75)
shoe1.location = (-5.622092247009277, 2.8525948524475098, 7.4785051345825195)
shoe1.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe1.keyframe_insert(data_path="location", frame=100)
shoe1.keyframe_insert(data_path="rotation_euler", frame=100)
shoe1.location = (-5.857794284820557, 2.989253282546997, 8.156514167785645)
shoe1.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe1.keyframe_insert(data_path="location", frame=125)
shoe1.keyframe_insert(data_path="rotation_euler", frame=125)
shoe1.location = (-5.622092247009277, 2.8525948524475098, 7.4785051345825195)
shoe1.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe1.keyframe_insert(data_path="location", frame=150)
shoe1.keyframe_insert(data_path="rotation_euler", frame=150)
def create_shoe2():
bpy.ops.mesh.primitive_ico_sphere_add()
shoe2 = bpy.context.object
bpy.ops.object.modifier_add(type='SUBSURF')
shoe2.name = "shoe2"
mat = bpy.data.materials.new('color')
color = (0.031554, 0.0365808, 0.800265, 1)
mat.diffuse_color = color
shoe2.data.materials.append(mat)
shoe2.scale = (0.48,0.45,1.0)
shoe2.location = (-4.0165605545043945, 4.648410797119141, 8.40798568725586)
shoe2.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe2.keyframe_insert(data_path="location", frame=0)
shoe2.keyframe_insert(data_path="rotation_euler", frame=0)
shoe2.location = (-3.5482606887817383, 4.443490505218506, 7.866168022155762)
shoe2.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe2.keyframe_insert(data_path="location", frame=25)
shoe2.keyframe_insert(data_path="rotation_euler", frame=25)
shoe2.location = (-4.0165605545043945, 4.648410797119141, 8.40798568725586)
shoe2.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe2.keyframe_insert(data_path="location", frame=50)
shoe2.keyframe_insert(data_path="rotation_euler", frame=50)
shoe2.location = (-3.5482606887817383, 4.443490505218506, 7.866168022155762)
shoe2.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe2.keyframe_insert(data_path="location", frame=75)
shoe2.keyframe_insert(data_path="rotation_euler", frame=75)
shoe2.location = (-4.0165605545043945, 4.648410797119141, 8.40798568725586)
shoe2.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe2.keyframe_insert(data_path="location", frame=100)
shoe2.keyframe_insert(data_path="rotation_euler", frame=100)
shoe2.keyframe_insert(data_path="location", frame=125)
shoe2.keyframe_insert(data_path="rotation_euler", frame=125)
shoe2.location = (-4.0165605545043945, 4.648410797119141, 8.40798568725586)
shoe2.rotation_euler = (-0.10539751499891281, -0.0014274478890001774, 0.11227820068597794)
shoe2.keyframe_insert(data_path="location", frame=150)
shoe2.keyframe_insert(data_path="rotation_euler", frame=150)
def create_arm1():
bpy.ops.mesh.primitive_cylinder_add()
arm1 = bpy.context.object
bpy.ops.object.modifier_add(type='SUBSURF')
arm1.name = "arm1"
mat = bpy.data.materials.new('color')
color = (0.761303, 0.800273, 0.780021, 1)
mat.diffuse_color = color
arm1.data.materials.append(mat)
arm1.scale = (0.1,0.1,0.83)
arm1.location = (-2.5023751258850098, 1.848970890045166, 10.817305564880371)
arm1.rotation_euler = (0.8650566935539246, 0.2435743510723114, -3.266211748123169)
def create_arm2():
bpy.ops.mesh.primitive_cylinder_add()
arm2 = bpy.context.object
bpy.ops.object.modifier_add(type='SUBSURF')
arm2.name = "arm2"
mat = bpy.data.materials.new('color')
color = (0.761303, 0.800273, 0.780021, 1)
mat.diffuse_color = color
arm2.data.materials.append(mat)
arm2.scale = (0.1,0.1,0.83)
arm2.location = (-3.121159315109253, 1.0450042486190796, 10.811690330505371)
arm2.rotation_euler = (0.27901211380958557, -0.7315009236335754, -0.49263709783554077)
def create_hand1():
bpy.ops.mesh.primitive_ico_sphere_add()
hand1 = bpy.context.object
bpy.ops.object.modifier_add(type='SUBSURF')
hand1.name = "hand1"
mat = bpy.data.materials.new('color')
color = (0.800016, 0.369513, 0.586069, 1)
mat.diffuse_color = color
hand1.data.materials.append(mat)
hand1.scale = (0.2,0.2,0.2)
hand1.location = (-2.5351028442382812, 2.3066928386688232, 11.293924331665039)
def create_hand2():
bpy.ops.mesh.primitive_ico_sphere_add()
hand2 = bpy.context.object
bpy.ops.object.modifier_add(type='SUBSURF')
hand2.name = "hand2"
mat = bpy.data.materials.new('color')
color = (0.800016, 0.369513, 0.586069, 1)
mat.diffuse_color = color
hand2.data.materials.append(mat)
hand2.scale = (0.2,0.2,0.2)
hand2.location = (-3.5775976181030273, 1.1039562225341797, 11.371886253356934)
def create_book1():
bpy.ops.mesh.primitive_cube_add()
book1 = bpy.context.object
book1.name = "book1"
mat = bpy.data.materials.new('color')
color = (0.803432, 0.198678, 0.00338747, 1)
mat.diffuse_color = color
book1.data.materials.append(mat)
book1.scale = (0.56,0.78,0.11)
book1.location = (-3.2973697185516357, 2.0816712379455566, 11.89443588256836)
book1.rotation_euler = (-0.32395485043525696, 1.1224846839904785, -7.360164642333984)
def create_book2():
bpy.ops.mesh.primitive_cube_add()
book2 = bpy.context.object
book2.name = "book2"
mat = bpy.data.materials.new('color')
color = (0.8, 0.8, 0.8, 1)
mat.diffuse_color = color
book2.data.materials.append(mat)
book2.scale = (0.56,0.39,0.04)
book2.location = (-2.9005134105682373, 2.153853416442871, 11.959342002868652)
book2.rotation_euler = (0.05056176334619522, -1.1005312204360962, -4.286710262298584)
def create_book3():
bpy.ops.mesh.primitive_cube_add()
book3 = bpy.context.object
book3.name = "book3"
mat = bpy.data.materials.new('color')
color = (0.8, 0.8, 0.8, 1)
mat.diffuse_color = color
book3.data.materials.append(mat)
book3.scale = (0.56,0.39,0.04)
book3.location = (-3.469978094100952, 1.7269105911254883, 11.974455833435059)
book3.rotation_euler = (0.08637632429599762, -1.1539583206176758, -16.450820922851562)
def create_book4():
bpy.ops.mesh.primitive_cube_add()
book4 = bpy.context.object
book4.name = "book4"
mat = bpy.data.materials.new('color')
color = (0.8, 0.8, 0.8, 1)
mat.diffuse_color = color
book4.data.materials.append(mat)
book4.scale = (0.56,0.39,0.01)
book4.location = (-3.393622398376465, 1.6637568473815918, 11.962928771972656)
book4.rotation_euler = (3.2867865562438965, -1.1853463649749756, -16.34038734436035)
book4.keyframe_insert(data_path="location", frame=0)
book4.keyframe_insert(data_path="rotation_euler", frame=0)
book4.location = (-2.994434356689453, 1.870043396949768, 12.11796760559082)
book4.rotation_euler = (5.193765640258789, -0.9790914058685303, -16.676612854003906)
book4.keyframe_insert(data_path="location", frame=50)
book4.keyframe_insert(data_path="rotation_euler", frame=50)
book4.location = (-3.393622398376465, 1.6637568473815918, 11.962928771972656)
book4.rotation_euler = (3.2867865562438965, -1.1853463649749756, -16.34038734436035)
book4.keyframe_insert(data_path="location", frame=100)
book4.keyframe_insert(data_path="rotation_euler", frame=100)
book4.location = (-2.994434356689453, 1.870043396949768, 12.11796760559082)
book4.rotation_euler = (5.193765640258789, -0.9790914058685303, -16.676612854003906)
book4.keyframe_insert(data_path="location", frame=150)
book4.keyframe_insert(data_path="rotation_euler", frame=150)
def create_star1():
bpy.ops.mesh.primitive_ico_sphere_add()
star1 = bpy.context.object
star1.name = "star1"
mat = bpy.data.materials.new('color')
star1.data.materials.append(mat)
star1.scale = (1,1,1)
star1.location = (7.530369281768799, -3.0031063556671143, 16.034542083740234)
color = (0.0299858, 0.800023, 0.203693, 1)
mat.diffuse_color = color
def create_star2():
bpy.ops.mesh.primitive_ico_sphere_add()
star2 = bpy.context.object
star2.name = "star2"
mat = bpy.data.materials.new('color')
star2.data.materials.append(mat)
star2.scale = (3,3,3)
star2.location = (-7.230057716369629, -19.835901260375977, 19.484106063842773)
color = (0.80014, 0.0183779, 0.0137548, 1)
mat.diffuse_color = color
def create_star3():
bpy.ops.mesh.primitive_ico_sphere_add()
star3 = bpy.context.object
star3.name = "star3"
mat = bpy.data.materials.new('color')
star3.data.materials.append(mat)
star3.scale = (4,4,4)
star3.location = (6.185729026794434, 13.839183807373047, 28.012712478637695)
color = (0.800371, 0.0617733, 0.394951, 1)
mat.diffuse_color = color
def create_star4():
bpy.ops.mesh.primitive_ico_sphere_add()
star4 = bpy.context.object
star4.name = "star4"
mat = bpy.data.materials.new('color')
star4.data.materials.append(mat)
star4.scale = (1.5,1.5,1.5)
star4.location = (-7.237161636352539, -5.240462303161621, 16.994504928588867)
color = (0.614913, 0.800568, 0.0504268, 1)
mat.diffuse_color = color
def create_camera():
bpy.ops.object.camera_add()
camera = bpy.context.object
bpy.context.scene.camera = camera
camera.location = (-5.2200093269348145, -12.969734191894531, 16.407777786254883)
camera.rotation_euler = (1.1693705320358276, 2.816302639985224e-07, -0.12217206507921219)
camera.data.lens = 50
camera.keyframe_insert(data_path="rotation_euler", frame=0)
camera.data.keyframe_insert(data_path="lens", frame=0)
camera.keyframe_insert(data_path="location", frame=0)
camera.rotation_euler = (1.2880520820617676, 2.5015918936333037e-07, -0.1291535496711731)
camera.location = (-4.1207356452941895, -6.73121976852417, 14.458921432495117)
camera.data.lens = 50
camera.keyframe_insert(data_path="rotation_euler", frame=50)
camera.data.keyframe_insert(data_path="lens", frame=50)
camera.keyframe_insert(data_path="location", frame=50)
camera.location = (-24.364105224609375, 18.493362426757812, 15.19630241394043)
camera.rotation_euler = (1.4346625804901123, -1.1167462616867851e-06, -2.2200586795806885)
camera.data.lens = 50
camera.keyframe_insert(data_path="rotation_euler", frame=100)
camera.data.keyframe_insert(data_path="lens", frame=100)
camera.keyframe_insert(data_path="location", frame=100)
camera.location = (-57.32966995239258, 128.7644805908203, 43.5470085144043)
camera.rotation_euler = (1.3439054489135742, -1.157420683739474e-06, -2.7227132320404053)
camera.data.lens = 54.074764251708984
camera.keyframe_insert(data_path="rotation_euler", frame=150)
camera.data.keyframe_insert(data_path="lens", frame=150)
camera.keyframe_insert(data_path="location", frame=150)
def create_spot():
bpy.ops.object.light_add(type='SPOT')
spot = bpy.context.object
spot.location = (-25.743175506591797, -29.9029483795166, 56.33271789550781)
spot.rotation_euler = (0.40491488575935364, -8.918273692870571e-07, 2.38761305809021)
spot.data.energy = 100000
bpy.ops.object.constraint_add(type='TRACK_TO')
bpy.context.object.constraints["Track To"].track_axis = 'TRACK_NEGATIVE_Z'
bpy.context.object.constraints["Track To"].target = bpy.data.objects["head"]
bpy.context.object.constraints["Track To"].track_axis = 'TRACK_NEGATIVE_Z'
bpy.context.object.constraints["Track To"].up_axis = 'UP_X'
bpy.context.object.constraints["Track To"].use_target_z = True
def render():
bpy.context.scene.frame_end = 150
bpy.context.scene.render.resolution_x = 200
bpy.context.scene.render.resolution_y = 150
bpy.context.scene.render.resolution_percentage = 150
bpy.context.scene.render.engine = 'CYCLES'
bpy.context.scene.render.filepath = "/tmp/o"
bpy.ops.render.render(animation=True)
clear_scene()
create_ball()
create_rainbow_material()
create_torus()
create_head()
create_body()
create_leg1()
create_leg2()
create_shoe1()
create_shoe2()
create_arm1()
create_arm2()
create_hand1()
create_hand2()
create_book1()
create_book2()
create_book3()
create_book4()
create_star1()
create_star2()
create_star3()
create_star4()
create_camera()
create_spot()
render()