[Bf-extensions-cvs] [58b07185] master: render_shots: remove?: unsupported T63750
meta-androcto
noreply at git.blender.org
Sun Sep 15 05:27:18 CEST 2019
Commit: 58b071854eb85d7b09abac081d69c3e32ec25c8a
Author: meta-androcto
Date: Sun Sep 15 13:27:01 2019 +1000
Branches: master
https://developer.blender.org/rBAC58b071854eb85d7b09abac081d69c3e32ec25c8a
render_shots: remove?: unsupported T63750
===================================================================
D render_shots.py
===================================================================
diff --git a/render_shots.py b/render_shots.py
deleted file mode 100644
index f9e8f71d..00000000
--- a/render_shots.py
+++ /dev/null
@@ -1,726 +0,0 @@
-# ***** BEGIN GPL LICENSE BLOCK *****
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-#
-# ***** END GPL LICENCE BLOCK *****
-
-
-bl_info = {
- "name": "Render Shots",
- "author": "Aaron Symons",
- "version": (0, 3, 2),
- "blender": (2, 76, 0),
- "location": "Properties > Render > Render Shots",
- "description": "Render an image or animation from different camera views",
- "warning": "",
- "wiki_url": "http://wiki.blender.org/index.php?title=Extensions:2.6/Py"\
- "/Scripts/Render/Render_Shots",
- "tracker_url": "https://developer.blender.org/maniphest/task/edit/form/2/",
- "category": "Render"}
-
-
-import bpy
-from bpy.props import BoolProperty, IntProperty, StringProperty
-from bpy.app.handlers import persistent
-import os, shutil
-
-
-#####################################
-# Update Functions
-#####################################
-def shape_nav(self, context):
- nav = self.rs_shotshape_nav
-
- if self.rs_shotshape_shape != "":
- shapeVerts = bpy.data.objects[self.rs_shotshape_shape].data.vertices
- max = len(shapeVerts)-1
- min = max - (max+max)
-
- if nav > max or nav < min:
- nav = 0
-
- v = shapeVerts[nav].co
- self.location = (v[0], v[1], v[2])
- return None
-
-
-def is_new_object(ob):
- try:
- isNew = ob["rs_shotshape_use_frames"]
- except:
- isNew = None
-
- return True if isNew is None else False
-
-
-def update_shot_list(scn):
- scn.rs_is_updating = True
- if hasattr(scn, 'rs_create_folders'):
- scn.rs_create_folders = False
-
- for ob in bpy.data.objects:
- if ob.type == 'CAMERA':
- if is_new_object(ob):
- ob["rs_shot_include"] = True
- ob["rs_shot_start"] = scn.frame_start
- ob["rs_shot_end"] = scn.frame_end
- ob["rs_shot_output"] = ""
- ob["rs_toggle_panel"] = True
- ob["rs_settings_use"] = False
- ob["rs_resolution_x"] = scn.render.resolution_x
- ob["rs_resolution_y"] = scn.render.resolution_y
- ob["rs_cycles_samples"] = 10
- ob["rs_shotshape_use"] = False
- ob["rs_shotshape_shape"] = ""
- ob["rs_shotshape_nav"] = 0
- ob["rs_shotshape_nav_start"] = False
- ob["rs_shotshape_offset"] = 1
- ob["rs_shotshape_use_frames"] = False
- else:
- ob["rs_shot_include"]
- ob["rs_shot_start"]
- ob["rs_shot_end"]
- ob["rs_shot_output"]
- ob["rs_toggle_panel"]
- ob["rs_settings_use"]
- ob["rs_resolution_x"]
- ob["rs_resolution_y"]
- ob["rs_cycles_samples"]
- ob["rs_shotshape_use"]
- ob["rs_shotshape_shape"]
- ob["rs_shotshape_nav"]
- ob["rs_shotshape_nav_start"]
- ob["rs_shotshape_offset"]
- ob["rs_shotshape_use_frames"]
-
- scn.rs_is_updating = False
-
-
-#####################################
-# Initialisation
-#####################################
-def init_props():
- object = bpy.types.Object
- scene = bpy.types.Scene
-
- # Camera properties
- object.rs_shot_include = BoolProperty(name="",
- description="Include this shot during render", default=True)
-
- object.rs_shot_start = IntProperty(name="Start",
- description="First frame in this shot",
- default=0, min=0, max=300000)
-
- object.rs_shot_end = IntProperty(name="End",
- description="Last frame in this shot",
- default=0, min=0, max=300000)
-
- object.rs_shot_output = StringProperty(name="",
- description="Directory/name to save to", subtype='DIR_PATH')
-
- object.rs_toggle_panel = BoolProperty(name="",
- description="Show/hide options for this shot", default=True)
-
- # Render settings
- object.rs_settings_use = BoolProperty(name = "", default=False,
- description = "Use specific render settings for this shot")
-
- object.rs_resolution_x = IntProperty(name="X",
- description="Number of horizontal pixels in the rendered image",
- default=2000, min=4, max=10000)
-
- object.rs_resolution_y = IntProperty(name="Y",
- description = "Number of vertical pixels in the rendered image",
- default=2000, min=4, max=10000)
-
- object.rs_cycles_samples = IntProperty(name="Samples",
- description = "Number of samples to render for each pixel",
- default=10, min=1, max=2147483647)
-
- # Shot shapes
- object.rs_shotshape_use = BoolProperty(name="", default=False,
- description="Use a shape to set a series of shots for this camera")
-
- object.rs_shotshape_shape = StringProperty(name="Shape:",
- description="Select an object")
-
- object.rs_shotshape_nav = IntProperty(name="Navigate",
- description="Navigate through this shape's vertices (0 = first vertex)",
- default=0, update=shape_nav)
-
- object.rs_shotshape_nav_start = BoolProperty(name="Start from here",
- default=False,
- description="Start from this vertex (skips previous vertices)")
-
- object.rs_shotshape_offset = IntProperty(name="Offset",
- description="Offset between frames (defines animation length)",
- default=1, min=1, max=200)
-
- object.rs_shotshape_use_frames = BoolProperty(name="Use frame range",
- description="Use the shot's frame range instead of the object's vertex"\
- " count", default=False)
-
- # Internal
- scene.rs_is_updating = BoolProperty(name="", description="", default=False)
-
- scene.rs_create_folders = BoolProperty(name="", description="", default=False)
-
- scene.rs_main_folder = StringProperty(name="Main Folder",
- subtype='DIR_PATH', default="",
- description="Main folder in which to create the sub folders")
-
- scene.rs_overwrite_folders = BoolProperty(name="Overwrite", default=False,
- description="Overwrite existing folders (this will delete all"\
- " files inside any existing folders)")
-
-
-
-#####################################
-# Operators and Functions
-#####################################
-RENDER_DONE = True
-RENDER_SETTINGS_HELP = False
-TIMELINE = {"start": 1, "end": 250, "current": 1}
-RENDER_SETTINGS = {"cycles_samples": 10, "res_x": 1920, "res_y": 1080}
-
-
- at persistent
-def render_finished(unused):
- global RENDER_DONE
- RENDER_DONE = True
-
-
-def using_cycles(scn):
- return True if scn.render.engine == 'CYCLES' else False
-
-
-def timeline_handler(scn, mode):
- global TIMELINE
-
- if mode == 'GET':
- TIMELINE["start"] = scn.frame_start
- TIMELINE["end"] = scn.frame_end
- TIMELINE["current"] = scn.frame_current
-
- elif mode == 'SET':
- scn.frame_start = TIMELINE["start"]
- scn.frame_end = TIMELINE["end"]
- scn.frame_current = TIMELINE["current"]
-
-
-def render_settings_handler(scn, mode, cycles_on, ob):
- global RENDER_SETTINGS
-
- if mode == 'GET':
- RENDER_SETTINGS["cycles_samples"] = scn.cycles.samples
- RENDER_SETTINGS["res_x"] = scn.render.resolution_x
- RENDER_SETTINGS["res_y"] = scn.render.resolution_y
-
- elif mode == 'SET':
- if cycles_on:
- scn.cycles.samples = ob["rs_cycles_samples"]
- scn.render.resolution_x = ob["rs_resolution_x"]
- scn.render.resolution_y = ob["rs_resolution_y"]
-
- elif mode == 'REVERT':
- if cycles_on:
- scn.cycles.samples = RENDER_SETTINGS["cycles_samples"]
- scn.render.resolution_x = RENDER_SETTINGS["res_x"]
- scn.render.resolution_y = RENDER_SETTINGS["res_y"]
-
-
-def frames_from_verts(ob, end, shape, mode):
- start = ob.rs_shot_start
- frame_range = (end - start)+1
- verts = len(shape.data.vertices)
-
- if frame_range % verts != 0:
- end += 1
- return create_frames_from_verts(ob, end, shape, mode)
- else:
- if mode == 'OFFSET':
- return frame_range / verts
- elif mode == 'END':
- return end
-
-
-def keyframes_handler(scn, ob, shape, mode):
- bpy.ops.object.select_all(action='DESELECT')
- ob.select_set(True)
-
- start = ob.rs_shotshape_nav if ob.rs_shotshape_nav_start else 0
-
- if ob.rs_shotshape_use_frames and shape is not None:
- firstframe = ob.rs_shot_start
- offset = frames_from_verts(ob, ob.rs_shot_end, shape, 'OFFSET')
- else:
- firstframe = 1
- offset = ob.rs_shotshape_offset
-
- if mode == 'SET':
- scn.frame_current = firstframe
- for vert in shape.data.vertices:
- if vert.index >= start:
- ob.location = vert.co
- bpy.ops.anim.keyframe_insert_menu(type='Location')
- scn.frame_current += offset
- return (len(shape.data.vertices) - start) * offset
-
- elif mode == 'WIPE':
- ob.animation_data_clear()
-
-
-class RENDER_OT_RenderShots_create_folders(bpy.types.Operator):
- ''' Create the output folders for all cameras '''
- bl_idname = "render.rendershots_create_folders"
- bl_label = "Create Folders"
-
- mode = IntProperty()
-
- def execute(self, context):
- scn = con
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list