I have exactly 1 day experience of Blender so this is sure to be something really basic. I have created a scene with a light and a single cube with translucent material, when I look at the scene through the camera in the Blender UI I see this, which is what I would expect:
but when I look in the rendered PNG file I see this:
i.e. no shading or transparency. I just want the rendered image to match what I see in Blender.
One thing to note - I need to be able to render the image using code only, so telling me which menu/button to use within the UI won't help me.
My script is as follows:
import bpy import mathutils, math scene = bpy.context.scene # Lights light_data = bpy.data.lights.new('light', type='POINT') light = bpy.data.objects.new('light', light_data) light.location = mathutils.Vector((5,5,5)) bpy.context.collection.objects.link(light) # Camera cam_data = bpy.data.cameras.new('camera') cam = bpy.data.objects.new('camera', cam_data) bpy.context.collection.objects.link(cam) scene.camera = cam cam.location = mathutils.Vector((5, -5, 5)) cam.rotation_euler = (1, -0.5, 1) # Action mat = bpy.data.materials.new(name='mat') mat.diffuse_color = [1, 1, 0, 0.5] bpy.ops.mesh.primitive_cube_add() cube = bpy.context.object cube.data.materials.append(mat) scene.render.image_settings.file_format = 'PNG' scene.render.filepath = "cube.png" bpy.ops.render.render(write_still = 1)