From 1282f019637c8d95ca7c904a4acecb0bc94adec6 Mon Sep 17 00:00:00 2001 From: fOuttaMyPaint Date: Sat, 18 Jul 2026 21:44:26 -0400 Subject: [PATCH 1/4] fix: pin turntable still to a readable three-quarter Suzanne pose (regression from #62) --- docs/gallery/assets/turntable-hero.webp | Bin 16130 -> 21236 bytes docs/gallery/turntable/index.html | 8 +++++--- examples/turntable/preview.webp | Bin 13892 -> 17990 bytes examples/turntable/turntable.py | 8 +++++--- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/docs/gallery/assets/turntable-hero.webp b/docs/gallery/assets/turntable-hero.webp index 8666547030a3a658100be271f2b0c7f67427a1e6..ca5e30bab51e2262f687f37d50613ade7fa96d46 100644 GIT binary patch literal 21236 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�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 znE7#o2c59efl8cQSource bpy.ops.wm.read_factory_settings(use_empty=True) bpy.ops.mesh.primitive_monkey_add(location=(0, 0, 1.0)) obj = bpy.context.active_object - for p in obj.data.polygons: - p.use_smooth = True + obj.data.shade_smooth() mat = bpy.data.materials.new("M"); mat.use_nodes = True b = mat.node_tree.nodes.get('Principled BSDF') b.inputs['Base Color'].default_value = (0.85, 0.35, 0.10, 1) @@ -309,7 +308,10 @@

Source

else: try: sc.eevee.taa_render_samples = 16 except Exception: pass - sc.frame_set(FRAMES // 4) + # pin the still to a deliberate pose: frame 4 is ~31 degrees of turn, a + # three-quarter view where ears and brow read instantly as Suzanne. An + # arbitrary turntable frame can land face-away and read as broken geometry. + sc.frame_set(4) sc.render.resolution_x = 1280; sc.render.resolution_y = 720 sc.render.image_settings.file_format = 'PNG'; sc.render.filepath = path # AgX would wash the copper toward beige (docs/VISUAL-STYLE.md) diff --git a/examples/turntable/preview.webp b/examples/turntable/preview.webp index c893dbf4775b552a3d4356ef63f5bc2bd80dbab9..185ac57126755f97578dc449a5e664571e041890 100644 GIT binary patch literal 17990 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 N$-|)xuoO||hydWz28RFu literal 13892 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 N95myAfOv84`lI|0Co59o4lrs~x|>|LPV57)81 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 Sd#Y6Dg{>a_MUd^_0000-!`0yc diff --git a/examples/turntable/turntable.py b/examples/turntable/turntable.py index c5f4fb7..65290ac 100644 --- a/examples/turntable/turntable.py +++ b/examples/turntable/turntable.py @@ -33,8 +33,7 @@ def build(): bpy.ops.wm.read_factory_settings(use_empty=True) bpy.ops.mesh.primitive_monkey_add(location=(0, 0, 1.0)) obj = bpy.context.active_object - for p in obj.data.polygons: - p.use_smooth = True + obj.data.shade_smooth() mat = bpy.data.materials.new("M"); mat.use_nodes = True b = mat.node_tree.nodes.get('Principled BSDF') b.inputs['Base Color'].default_value = (0.85, 0.35, 0.10, 1) @@ -107,7 +106,10 @@ def render_still(obj, path, engine): else: try: sc.eevee.taa_render_samples = 16 except Exception: pass - sc.frame_set(FRAMES // 4) + # pin the still to a deliberate pose: frame 4 is ~31 degrees of turn, a + # three-quarter view where ears and brow read instantly as Suzanne. An + # arbitrary turntable frame can land face-away and read as broken geometry. + sc.frame_set(4) sc.render.resolution_x = 1280; sc.render.resolution_y = 720 sc.render.image_settings.file_format = 'PNG'; sc.render.filepath = path # AgX would wash the copper toward beige (docs/VISUAL-STYLE.md) From 2b0c5f59f06e8afd47d2dda93802f23328c1d518 Mon Sep 17 00:00:00 2001 From: fOuttaMyPaint Date: Sat, 18 Jul 2026 21:44:27 -0400 Subject: [PATCH 2/4] fix: restage gn-sdf-remesh to the gallery visual style (incorrect PASS in #62) --- docs/gallery/assets/gn-sdf-remesh-hero.webp | Bin 26840 -> 12130 bytes docs/gallery/gn-sdf-remesh/index.html | 21 ++++++++++++-------- examples/gn-sdf-remesh/gn_sdf_remesh.py | 21 ++++++++++++-------- examples/gn-sdf-remesh/preview.webp | Bin 21766 -> 10940 bytes 4 files changed, 26 insertions(+), 16 deletions(-) diff --git a/docs/gallery/assets/gn-sdf-remesh-hero.webp b/docs/gallery/assets/gn-sdf-remesh-hero.webp index 41306513da0db1edd6d39110e24d613ac9e77f8e..558cc03658131463682d178fb2be297452b24452 100644 GIT binary patch literal 12130 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 X(F|e{h6&*veHXS8P+jR@*QoFSuxmDo diff --git a/docs/gallery/gn-sdf-remesh/index.html b/docs/gallery/gn-sdf-remesh/index.html index 3481ba5..e6e3cac 100644 --- a/docs/gallery/gn-sdf-remesh/index.html +++ b/docs/gallery/gn-sdf-remesh/index.html @@ -217,7 +217,7 @@

Source

blender --background --python gn_sdf_remesh.py -- --output r.png # also render the result blender --background --python gn_sdf_remesh.py -- --output r.png --engine cycles # GPU-less """ -import bpy, sys, os, argparse +import bpy, sys, os, math, argparse def get_eevee_engine_id(): return 'BLENDER_EEVEE' if bpy.app.version >= (5, 0, 0) else 'BLENDER_EEVEE_NEXT' @@ -267,25 +267,28 @@

Source

bm.free() fmat = bpy.data.materials.new("Studio"); fmat.use_nodes = True fb = fmat.node_tree.nodes.get('Principled BSDF') - fb.inputs['Base Color'].default_value = (0.055, 0.06, 0.07, 1) # dark graphite studio - fb.inputs['Roughness'].default_value = 0.55 + fb.inputs['Base Color'].default_value = (0.03, 0.032, 0.037, 1) # dark staged studio + fb.inputs['Roughness'].default_value = 0.7 fme.materials.append(fmat) floor = bpy.data.objects.new("Floor", fme); bpy.context.collection.objects.link(floor) wall = bpy.data.objects.new("Wall", fme.copy()); wall.location = (0, 9.0, 0) wall.rotation_euler = (1.5708, 0, 0); bpy.context.collection.objects.link(wall) w = bpy.data.worlds.new("W"); w.use_nodes = True - w.node_tree.nodes["Background"].inputs[0].default_value = (0.01, 0.011, 0.014, 1); sc.world = w + w.node_tree.nodes["Background"].inputs[0].default_value = (0.02, 0.021, 0.025, 1); sc.world = w aim = bpy.data.objects.new("Aim", None); aim.location = (0, 0, 0.55); bpy.context.collection.objects.link(aim) cam = bpy.data.objects.new("cam", bpy.data.cameras.new("cam")); cam.location = (0, -6.5, 2.2) bpy.context.collection.objects.link(cam); sc.camera = cam c = cam.constraints.new('TRACK_TO'); c.target = aim; c.track_axis = 'TRACK_NEGATIVE_Z'; c.up_axis = 'UP_Y' - # key, cool fill, warm rim - for nm, loc, en, sz, col in [("K", (-4, -5, 7), 1100, 5.0, (1.0, 0.98, 0.95)), - ("F2", (5, -4, 2), 220, 7.0, (0.85, 0.9, 1.0)), - ("R", (2.5, 6, 4), 700, 3.0, (1.0, 0.72, 0.45))]: + # shaped warm key, faint cool fill (docs/VISUAL-STYLE.md) + for nm, loc, en, sz, col in [("K", (-4, -5, 7), 650, 4.5, (1.0, 0.96, 0.9)), + ("F2", (5, -4, 2), 110, 7.0, (0.75, 0.85, 1.0))]: ld = bpy.data.lights.new(nm, 'AREA'); ld.energy = en; ld.size = sz; ld.color = col lo = bpy.data.objects.new(nm, ld); lo.location = loc; bpy.context.collection.objects.link(lo) lc = lo.constraints.new('TRACK_TO'); lc.target = aim; lc.track_axis = 'TRACK_NEGATIVE_Z'; lc.up_axis = 'UP_Y' + # warm wedge raking the back wall, aimed past the torus at the wall + wd = bpy.data.lights.new("Wedge", 'AREA'); wd.energy = 380; wd.size = 6.0; wd.color = (1.0, 0.76, 0.5) + wo = bpy.data.objects.new("Wedge", wd); wo.location = (2.5, 5.5, 4.0) + wo.rotation_euler = (math.radians(-68), 0, math.radians(190)); bpy.context.collection.objects.link(wo) sc.render.engine = 'CYCLES' if engine == 'cycles' else get_eevee_engine_id() if sc.render.engine == 'CYCLES': try: sc.cycles.samples = 32 @@ -295,6 +298,8 @@

Source

except Exception: pass sc.render.resolution_x = 1280; sc.render.resolution_y = 720 sc.render.image_settings.file_format = 'PNG'; sc.render.filepath = path + # AgX would wash the crimson toward brick (docs/VISUAL-STYLE.md) + sc.view_settings.view_transform = 'Standard' bpy.ops.render.render(write_still=True) return os.path.exists(path) and os.path.getsize(path) > 0 diff --git a/examples/gn-sdf-remesh/gn_sdf_remesh.py b/examples/gn-sdf-remesh/gn_sdf_remesh.py index 102dc9f..b315bf4 100644 --- a/examples/gn-sdf-remesh/gn_sdf_remesh.py +++ b/examples/gn-sdf-remesh/gn_sdf_remesh.py @@ -14,7 +14,7 @@ blender --background --python gn_sdf_remesh.py -- --output r.png # also render the result blender --background --python gn_sdf_remesh.py -- --output r.png --engine cycles # GPU-less """ -import bpy, sys, os, argparse +import bpy, sys, os, math, argparse def get_eevee_engine_id(): return 'BLENDER_EEVEE' if bpy.app.version >= (5, 0, 0) else 'BLENDER_EEVEE_NEXT' @@ -64,25 +64,28 @@ def render_still(obj, path, engine): bm.free() fmat = bpy.data.materials.new("Studio"); fmat.use_nodes = True fb = fmat.node_tree.nodes.get('Principled BSDF') - fb.inputs['Base Color'].default_value = (0.055, 0.06, 0.07, 1) # dark graphite studio - fb.inputs['Roughness'].default_value = 0.55 + fb.inputs['Base Color'].default_value = (0.03, 0.032, 0.037, 1) # dark staged studio + fb.inputs['Roughness'].default_value = 0.7 fme.materials.append(fmat) floor = bpy.data.objects.new("Floor", fme); bpy.context.collection.objects.link(floor) wall = bpy.data.objects.new("Wall", fme.copy()); wall.location = (0, 9.0, 0) wall.rotation_euler = (1.5708, 0, 0); bpy.context.collection.objects.link(wall) w = bpy.data.worlds.new("W"); w.use_nodes = True - w.node_tree.nodes["Background"].inputs[0].default_value = (0.01, 0.011, 0.014, 1); sc.world = w + w.node_tree.nodes["Background"].inputs[0].default_value = (0.02, 0.021, 0.025, 1); sc.world = w aim = bpy.data.objects.new("Aim", None); aim.location = (0, 0, 0.55); bpy.context.collection.objects.link(aim) cam = bpy.data.objects.new("cam", bpy.data.cameras.new("cam")); cam.location = (0, -6.5, 2.2) bpy.context.collection.objects.link(cam); sc.camera = cam c = cam.constraints.new('TRACK_TO'); c.target = aim; c.track_axis = 'TRACK_NEGATIVE_Z'; c.up_axis = 'UP_Y' - # key, cool fill, warm rim - for nm, loc, en, sz, col in [("K", (-4, -5, 7), 1100, 5.0, (1.0, 0.98, 0.95)), - ("F2", (5, -4, 2), 220, 7.0, (0.85, 0.9, 1.0)), - ("R", (2.5, 6, 4), 700, 3.0, (1.0, 0.72, 0.45))]: + # shaped warm key, faint cool fill (docs/VISUAL-STYLE.md) + for nm, loc, en, sz, col in [("K", (-4, -5, 7), 650, 4.5, (1.0, 0.96, 0.9)), + ("F2", (5, -4, 2), 110, 7.0, (0.75, 0.85, 1.0))]: ld = bpy.data.lights.new(nm, 'AREA'); ld.energy = en; ld.size = sz; ld.color = col lo = bpy.data.objects.new(nm, ld); lo.location = loc; bpy.context.collection.objects.link(lo) lc = lo.constraints.new('TRACK_TO'); lc.target = aim; lc.track_axis = 'TRACK_NEGATIVE_Z'; lc.up_axis = 'UP_Y' + # warm wedge raking the back wall, aimed past the torus at the wall + wd = bpy.data.lights.new("Wedge", 'AREA'); wd.energy = 380; wd.size = 6.0; wd.color = (1.0, 0.76, 0.5) + wo = bpy.data.objects.new("Wedge", wd); wo.location = (2.5, 5.5, 4.0) + wo.rotation_euler = (math.radians(-68), 0, math.radians(190)); bpy.context.collection.objects.link(wo) sc.render.engine = 'CYCLES' if engine == 'cycles' else get_eevee_engine_id() if sc.render.engine == 'CYCLES': try: sc.cycles.samples = 32 @@ -92,6 +95,8 @@ def render_still(obj, path, engine): except Exception: pass sc.render.resolution_x = 1280; sc.render.resolution_y = 720 sc.render.image_settings.file_format = 'PNG'; sc.render.filepath = path + # AgX would wash the crimson toward brick (docs/VISUAL-STYLE.md) + sc.view_settings.view_transform = 'Standard' bpy.ops.render.render(write_still=True) return os.path.exists(path) and os.path.getsize(path) > 0 diff --git a/examples/gn-sdf-remesh/preview.webp b/examples/gn-sdf-remesh/preview.webp index f5823e03c170acd626b36ed56e5ef05499cd34ab..aec33a9bbc33bd70a3d2333fa58a1233a38e7628 100644 GIT binary patch literal 10940 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 literal 21766 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

{kaoX|Wr#^be2%C^glLA*itLS;EL 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 From 295ec459b3668be4e88b17299d50a7c74f189cad Mon Sep 17 00:00:00 2001 From: fOuttaMyPaint Date: Sat, 18 Jul 2026 21:44:27 -0400 Subject: [PATCH 3/4] fix: restage bmesh-gear so the steel material its script specifies actually renders (incorrect PASS in #62) --- docs/gallery/assets/bmesh-gear-hero.webp | Bin 12828 -> 8818 bytes docs/gallery/bmesh-gear/index.html | 17 ++++++++++------- examples/bmesh-gear/bmesh_gear.py | 17 ++++++++++------- examples/bmesh-gear/preview.webp | Bin 11136 -> 7870 bytes 4 files changed, 20 insertions(+), 14 deletions(-) diff --git a/docs/gallery/assets/bmesh-gear-hero.webp b/docs/gallery/assets/bmesh-gear-hero.webp index 3550b1c370d72bfa6fc7a2f099ed5323f779deba..db4cf33687dad6342a60116d1888124a04bb6c48 100644 GIT binary patch literal 8818 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 cHOP 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 diff --git a/docs/gallery/bmesh-gear/index.html b/docs/gallery/bmesh-gear/index.html index 028cc4a..066d61e 100644 --- a/docs/gallery/bmesh-gear/index.html +++ b/docs/gallery/bmesh-gear/index.html @@ -315,8 +315,8 @@

Source

fmat = bpy.data.materials.new("Studio") fmat.use_nodes = True fb = fmat.node_tree.nodes["Principled BSDF"] - fb.inputs["Base Color"].default_value = (0.055, 0.06, 0.07, 1.0) - fb.inputs["Roughness"].default_value = 0.5 + fb.inputs["Base Color"].default_value = (0.03, 0.032, 0.037, 1.0) + fb.inputs["Roughness"].default_value = 0.7 floor_me.materials.append(fmat) floor = bpy.data.objects.new("Floor", floor_me) scene.collection.objects.link(floor) @@ -328,7 +328,7 @@

Source

world = bpy.data.worlds.new("World") world.use_nodes = True # metals reflect the environment: keep a faint cool ambient so flanks never go black - world.node_tree.nodes["Background"].inputs["Color"].default_value = (0.035, 0.04, 0.05, 1.0) + world.node_tree.nodes["Background"].inputs["Color"].default_value = (0.02, 0.022, 0.028, 1.0) scene.world = world def light(name, loc, energy, size, col, rot): @@ -339,10 +339,11 @@

Source

ob.rotation_euler = tuple(math.radians(a) for a in rot) scene.collection.objects.link(ob) - # metals live on reflections: big soft key, strong cool fill, warm rim kept low - light("Key", (-3.5, -4.5, 5.5), 1400.0, 7.0, (1.0, 0.98, 0.94), (48, 0, -35)) - light("Fill", (5.0, -3.5, 2.5), 600.0, 9.0, (0.8, 0.87, 1.0), (65, 0, 50)) - light("Rim", (1.5, 4.5, 2.2), 700.0, 4.0, (1.0, 0.7, 0.4), (-82, 0, 165)) + # metals live on reflections: soft warm key, restrained cool fill, and the + # warm wedge raking the back wall (docs/VISUAL-STYLE.md) + light("Key", (-3.5, -4.5, 5.5), 700.0, 6.0, (1.0, 0.96, 0.9), (48, 0, -35)) + light("Fill", (5.0, -3.5, 2.5), 160.0, 9.0, (0.75, 0.85, 1.0), (65, 0, 50)) + light("Wedge", (2.5, 5.5, 4.0), 380.0, 6.0, (1.0, 0.76, 0.5), (-68, 0, 190)) cam_data = bpy.data.cameras.new("Cam") cam_data.lens = 55.0 @@ -364,6 +365,8 @@

Source

scene.render.resolution_y = 720 scene.render.image_settings.file_format = 'PNG' scene.render.filepath = path + # AgX would flatten the steel toward chalk (docs/VISUAL-STYLE.md) + scene.view_settings.view_transform = 'Standard' bpy.ops.render.render(write_still=True) return os.path.exists(path) and os.path.getsize(path) > 0 diff --git a/examples/bmesh-gear/bmesh_gear.py b/examples/bmesh-gear/bmesh_gear.py index 3175383..982a398 100644 --- a/examples/bmesh-gear/bmesh_gear.py +++ b/examples/bmesh-gear/bmesh_gear.py @@ -113,8 +113,8 @@ def render_still(obj, path, engine): fmat = bpy.data.materials.new("Studio") fmat.use_nodes = True fb = fmat.node_tree.nodes["Principled BSDF"] - fb.inputs["Base Color"].default_value = (0.055, 0.06, 0.07, 1.0) - fb.inputs["Roughness"].default_value = 0.5 + fb.inputs["Base Color"].default_value = (0.03, 0.032, 0.037, 1.0) + fb.inputs["Roughness"].default_value = 0.7 floor_me.materials.append(fmat) floor = bpy.data.objects.new("Floor", floor_me) scene.collection.objects.link(floor) @@ -126,7 +126,7 @@ def render_still(obj, path, engine): world = bpy.data.worlds.new("World") world.use_nodes = True # metals reflect the environment: keep a faint cool ambient so flanks never go black - world.node_tree.nodes["Background"].inputs["Color"].default_value = (0.035, 0.04, 0.05, 1.0) + world.node_tree.nodes["Background"].inputs["Color"].default_value = (0.02, 0.022, 0.028, 1.0) scene.world = world def light(name, loc, energy, size, col, rot): @@ -137,10 +137,11 @@ def light(name, loc, energy, size, col, rot): ob.rotation_euler = tuple(math.radians(a) for a in rot) scene.collection.objects.link(ob) - # metals live on reflections: big soft key, strong cool fill, warm rim kept low - light("Key", (-3.5, -4.5, 5.5), 1400.0, 7.0, (1.0, 0.98, 0.94), (48, 0, -35)) - light("Fill", (5.0, -3.5, 2.5), 600.0, 9.0, (0.8, 0.87, 1.0), (65, 0, 50)) - light("Rim", (1.5, 4.5, 2.2), 700.0, 4.0, (1.0, 0.7, 0.4), (-82, 0, 165)) + # metals live on reflections: soft warm key, restrained cool fill, and the + # warm wedge raking the back wall (docs/VISUAL-STYLE.md) + light("Key", (-3.5, -4.5, 5.5), 700.0, 6.0, (1.0, 0.96, 0.9), (48, 0, -35)) + light("Fill", (5.0, -3.5, 2.5), 160.0, 9.0, (0.75, 0.85, 1.0), (65, 0, 50)) + light("Wedge", (2.5, 5.5, 4.0), 380.0, 6.0, (1.0, 0.76, 0.5), (-68, 0, 190)) cam_data = bpy.data.cameras.new("Cam") cam_data.lens = 55.0 @@ -162,6 +163,8 @@ def light(name, loc, energy, size, col, rot): scene.render.resolution_y = 720 scene.render.image_settings.file_format = 'PNG' scene.render.filepath = path + # AgX would flatten the steel toward chalk (docs/VISUAL-STYLE.md) + scene.view_settings.view_transform = 'Standard' bpy.ops.render.render(write_still=True) return os.path.exists(path) and os.path.getsize(path) > 0 diff --git a/examples/bmesh-gear/preview.webp b/examples/bmesh-gear/preview.webp index 1ea7ea3b593395127cb3bc2c874b2066a4da35a6..72b0eb84ff00d63e4086cf769290a522549f2907 100644 GIT binary patch literal 7870 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 Date: Sat, 18 Jul 2026 21:44:29 -0400 Subject: [PATCH 4/4] fix: deepen depsgraph-export base-cube contrast and tighten framing --- .../gallery/assets/depsgraph-export-hero.webp | Bin 7326 -> 7598 bytes docs/gallery/depsgraph-export/index.html | 8 ++++---- examples/depsgraph-export/depsgraph_export.py | 8 ++++---- examples/depsgraph-export/preview.webp | Bin 6696 -> 6962 bytes 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/gallery/assets/depsgraph-export-hero.webp b/docs/gallery/assets/depsgraph-export-hero.webp index 92769179b9b2c651b7f02860378f7ede719ff97a..ae7af27e38f69acd4da31c3cddd97964ed6a8a76 100644 GIT binary patch literal 7598 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 E00zY}qyPW_ diff --git a/docs/gallery/depsgraph-export/index.html b/docs/gallery/depsgraph-export/index.html index 42f0325..86522ba 100644 --- a/docs/gallery/depsgraph-export/index.html +++ b/docs/gallery/depsgraph-export/index.html @@ -291,7 +291,7 @@

Source

base_obj = bpy.data.objects.new("Base", obj.data.copy()) base_obj.location = (-1.7, 0.0, 1.0) base_obj.data.materials.append( - principled("Graphite", (0.16, 0.17, 0.19, 1.0), 0.0, 0.7)) + principled("Graphite", (0.09, 0.10, 0.12, 1.0), 0.0, 0.55)) bpy.context.collection.objects.link(base_obj) # right: the SUBSURF object — what the depsgraph evaluates and the OBJ ships. @@ -345,10 +345,10 @@

Source

light("Wedge", (2.5, 5.5, 4.0), 380.0, 6.0, (1.0, 0.76, 0.5), (-68, 0, 190)) cam_data = bpy.data.cameras.new("Cam") - cam_data.lens = 42.0 + cam_data.lens = 46.0 cam = bpy.data.objects.new("Cam", cam_data) - cam.location = (0.0, -9.0, 3.1) - cam.rotation_euler = (math.radians(76), 0.0, 0.0) + cam.location = (0.0, -8.2, 2.7) + cam.rotation_euler = (math.radians(78), 0.0, 0.0) scene.collection.objects.link(cam) scene.camera = cam diff --git a/examples/depsgraph-export/depsgraph_export.py b/examples/depsgraph-export/depsgraph_export.py index 8206c36..a6ac5ec 100644 --- a/examples/depsgraph-export/depsgraph_export.py +++ b/examples/depsgraph-export/depsgraph_export.py @@ -86,7 +86,7 @@ def render_still(obj, path, engine): base_obj = bpy.data.objects.new("Base", obj.data.copy()) base_obj.location = (-1.7, 0.0, 1.0) base_obj.data.materials.append( - principled("Graphite", (0.16, 0.17, 0.19, 1.0), 0.0, 0.7)) + principled("Graphite", (0.09, 0.10, 0.12, 1.0), 0.0, 0.55)) bpy.context.collection.objects.link(base_obj) # right: the SUBSURF object — what the depsgraph evaluates and the OBJ ships. @@ -140,10 +140,10 @@ def light(name, loc, energy, size, col, rot): light("Wedge", (2.5, 5.5, 4.0), 380.0, 6.0, (1.0, 0.76, 0.5), (-68, 0, 190)) cam_data = bpy.data.cameras.new("Cam") - cam_data.lens = 42.0 + cam_data.lens = 46.0 cam = bpy.data.objects.new("Cam", cam_data) - cam.location = (0.0, -9.0, 3.1) - cam.rotation_euler = (math.radians(76), 0.0, 0.0) + cam.location = (0.0, -8.2, 2.7) + cam.rotation_euler = (math.radians(78), 0.0, 0.0) scene.collection.objects.link(cam) scene.camera = cam diff --git a/examples/depsgraph-export/preview.webp b/examples/depsgraph-export/preview.webp index 3e1f10f8a837e3bc142fc6c78b94d59364f21c82..496294ac512b7652a079176fcfd576dd370bbb7c 100644 GIT binary patch literal 6962 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
<-ec;TPHc@~!a`kf)Un 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