python render save blender

Renderizando y guardando imágenes a través de Blender python



save (3)

Tendrás que hacer lo siguiente. La i en la segunda línea después del bucle for es el índice de bucle del bucle de archivo.

He verificado que esto funciona mientras se ejecuta en la consola y también desde la línea de comandos. No olvide eliminar los objetos después de procesar un archivo. (El comando de eliminación no se da aquí porque no es genérico. Se necesitarán algunos argumentos específicos en ese comando si ese objeto tiene enlaces)

for area in bpy.context.screen.areas: if area.type == ''VIEW_3D'': area.spaces[0].viewport_shade = ''RENDERED'' bpy.context.scene.render.image_settings.file_format=''JPEG'' bpy.context.scene.render.filepath = ".pic%0.2d.jpg"%i bpy.ops.render.render(use_viewport = True, write_still=True)

Estoy tratando de renderizar y guardar múltiples imágenes a través del script python en blender. Sé cómo renderizar y guardar la imagen a través de la GUI de Blender, pero quiero hacerlo todo a través de mi script ya que estoy usando un conjunto de bucles anidados y necesito guardar varias imágenes. Soy capaz de renderizar la imagen y supongo que guardar la imagen con el resultado de tener éxito. Pero no estoy seguro de dónde se guarda y cuando intento editar la ruta de archivo, me da el error de que el contexto es incorrecto.


algo como esto:

import bpy bpy.context.scene.render.filepath = ''pathToOutputImage'' bpy.context.scene.render.resolution_x = w #perhaps set resolution in code bpy.context.scene.render.resolution_y = h bpy.ops.render.render()


Aquí lo que he hecho en Blender 2.63 :

bpy.data.scenes[''Scene''].render.filepath = ''/home/user/Documents/image.jpg'' bpy.ops.render.render( write_still=True )

Lo que estaba haciendo es crear un panorama VR (una serie de disparos de un objeto a su alrededor) . Y terminé con este algoritmo:

  1. Crea o carga un objeto del que vas a tomar imágenes.
  2. escalarlo y realizar una buena iluminación; compruebe la iluminación con la representación de la escena (utilice la tecla F12 )
  3. cree un nodo Empty y establezca su posición y rotación en identidad (posición: 0, 0, 0 , rotación: 0, 0, 0 )
  4. coloque la vista de su cámara en la posición de inicio (verifíquela con el renderizado, nuevamente)
  5. ejecuta el script!

Deberá terminar con step_count tomas step_count a step_count alrededor de su objeto dentro de su directorio /home/user/VR .

cam = bpy.data.objects[''Camera''] origin = bpy.data.objects[''Empty''] step_count = 32 for step in range(0, step_count): origin.rotation_euler[2] = radians(step * (360.0 / step_count)) bpy.data.scenes["Scene"].render.filepath = ''/home/user/VR/vr_shot_%d.jpg'' % step bpy.ops.render.render( write_still=True )