1 # gpl: author meta-androcto
4 from bpy
.types
import Operator
7 class add_texture_scene(Operator
):
8 bl_idname
= "objects_texture.add_scene"
9 bl_label
= "Create test scene"
10 bl_description
= "Cycles renderer Scene: Camera aligned to a plane"
11 bl_options
= {'REGISTER', 'UNDO'}
13 def execute(self
, context
):
15 blend_data
= context
.blend_data
18 bpy
.ops
.scene
.new(type="NEW")
19 scene
= bpy
.context
.scene
20 bpy
.context
.scene
.render
.engine
= 'CYCLES'
21 scene
.name
= "scene_texture_cycles"
25 render
.resolution_x
= 1080
26 render
.resolution_y
= 1080
27 render
.resolution_percentage
= 100
30 world
= bpy
.data
.worlds
.new("Cycles_Textures_World")
32 world
.use_sky_blend
= True
33 world
.use_sky_paper
= True
34 world
.horizon_color
= (0.004393, 0.02121, 0.050)
35 world
.zenith_color
= (0.03335, 0.227, 0.359)
36 world
.light_settings
.use_ambient_occlusion
= True
37 world
.light_settings
.ao_factor
= 0.5
40 bpy
.ops
.view3d
.viewnumpad(type='TOP')
41 bpy
.ops
.object.camera_add(
42 location
=(0, 0, 2.1850), rotation
=(0, 0, 0), view_align
=True
44 cam
= bpy
.context
.active_object
.data
49 bpy
.ops
.mesh
.primitive_plane_add(enter_editmode
=True, location
=(0, 0, 0))
50 bpy
.ops
.mesh
.subdivide(number_cuts
=10, smoothness
=0)
51 bpy
.ops
.uv
.unwrap(method
='CONFORMAL', margin
=0.001)
52 bpy
.ops
.object.editmode_toggle()
53 plane
= bpy
.context
.active_object
56 planeMaterial
= blend_data
.materials
.new("Cycles_Plane_Material")
57 bpy
.ops
.object.material_slot_add()
58 plane
.material_slots
[0].material
= planeMaterial
60 planeMaterial
.preview_render_type
= "FLAT"
61 planeMaterial
.diffuse_color
= (0.2, 0.2, 0.2)
63 planeMaterial
.use_nodes
= True
66 sc
= bpy
.context
.scene
67 bpy
.ops
.view3d
.viewnumpad(type='CAMERA')
69 except Exception as e
:
70 self
.report({'WARNING'},
71 "Some operations could not be performed (See Console for more info)")
73 print("\n[Add Advanced Objects]\nOperator: "
74 "objects_texture.add_scene\nError: {}".format(e
))