Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'render_povray/scenography_properties.py')
-rwxr-xr-xrender_povray/scenography_properties.py125
1 files changed, 125 insertions, 0 deletions
diff --git a/render_povray/scenography_properties.py b/render_povray/scenography_properties.py
index dd886513..97c856f6 100755
--- a/render_povray/scenography_properties.py
+++ b/render_povray/scenography_properties.py
@@ -352,6 +352,128 @@ class RenderPovSettingsWorld(PropertyGroup):
name="Index for texture_slots", default=0, update=brush_texture_update
)
+###############################################################################
+# Texture slots (World context) exported as POV texture properties.
+###############################################################################
+
+class WorldTextureSlot(PropertyGroup):
+ """Declare world texture slot level properties for UI and translated to POV."""
+
+ bl_idname = ("pov_texture_slots",)
+ bl_description = ("Texture_slots from Blender-2.79",)
+
+ # Adding a "real" texture datablock as property is not possible
+ # (or at least not easy through a dynamically populated EnumProperty).
+ # That's why we'll use a prop_search() UILayout function in texturing_gui.py.
+ # So we'll assign the name of the needed texture datablock to the below StringProperty.
+ texture: StringProperty(update=active_texture_name_from_uilist)
+ # and use another temporary StringProperty to change the linked data
+ texture_search: StringProperty(
+ name="", update=active_texture_name_from_search, description="Browse Texture to be linked"
+ )
+
+ blend_factor: FloatProperty(
+ name="Blend",
+ description="Amount texture affects color progression of the " "background",
+ soft_min=0.0,
+ soft_max=1.0,
+ default=1.0,
+ )
+
+ horizon_factor: FloatProperty(
+ name="Horizon",
+ description="Amount texture affects color of the horizon",
+ soft_min=0.0,
+ soft_max=1.0,
+ default=1.0,
+ )
+
+ object: StringProperty(
+ name="Object",
+ description="Object to use for mapping with Object texture coordinates",
+ default="",
+ )
+
+ offset: FloatVectorProperty(
+ name="Offset",
+ description=("Fine tune of the texture mapping X, Y and Z locations "),
+ precision=4,
+ step=0.1,
+ soft_min=-100.0,
+ soft_max=100.0,
+ default=(0.0, 0.0, 0.0),
+ options={"ANIMATABLE"},
+ subtype="TRANSLATION",
+ )
+
+ scale: FloatVectorProperty(
+ name="Size",
+ subtype="XYZ",
+ size=3,
+ description="Set scaling for the texture’s X, Y and Z sizes ",
+ precision=4,
+ step=0.1,
+ soft_min=-100.0,
+ soft_max=100.0,
+ default=(1.0, 1.0, 1.0),
+ options={"ANIMATABLE"},
+ )
+
+ texture_coords: EnumProperty(
+ name="Coordinates",
+ description="Texture coordinates used to map the texture onto the background",
+ items=(
+ ("VIEW", "View", "Use view vector for the texture coordinates"),
+ (
+ "GLOBAL",
+ "Global",
+ "Use global coordinates for the texture coordinates (interior mist)",
+ ),
+ (
+ "ANGMAP",
+ "AngMap",
+ "Use 360 degree angular coordinates, e.g. for spherical light probes",
+ ),
+ ("SPHERE", "Sphere", "For 360 degree panorama sky, spherical mapped, only top half"),
+ ("EQUIRECT", "Equirectangular", "For 360 degree panorama sky, equirectangular mapping"),
+ ("TUBE", "Tube", "For 360 degree panorama sky, cylindrical mapped, only top half"),
+ ("OBJECT", "Object", "Use linked object’s coordinates for texture coordinates"),
+ ),
+ default="VIEW",
+ )
+
+ use_map_blend: BoolProperty(
+ name="Blend Map", description="Affect the color progression of the background", default=True
+ )
+
+ use_map_horizon: BoolProperty(
+ name="Horizon Map", description="Affect the color of the horizon", default=False
+ )
+
+ use_map_zenith_down: BoolProperty(
+ name="", description="Affect the color of the zenith below", default=False
+ )
+
+ use_map_zenith_up: BoolProperty(
+ name="Zenith Up Map", description="Affect the color of the zenith above", default=False
+ )
+
+ zenith_down_factor: FloatProperty(
+ name="Zenith Down",
+ description="Amount texture affects color of the zenith below",
+ soft_min=0.0,
+ soft_max=1.0,
+ default=1.0,
+ )
+
+ zenith_up_factor: FloatProperty(
+ name="Zenith Up",
+ description="Amount texture affects color of the zenith above",
+ soft_min=0.0,
+ soft_max=1.0,
+ default=1.0,
+ )
+
"""
# class WORLD_TEXTURE_SLOTS_UL_layerlist(bpy.types.UIList):
@@ -371,6 +493,7 @@ classes = (
RenderPovSettingsCamera,
RenderPovSettingsLight,
RenderPovSettingsWorld,
+ WorldTextureSlot,
)
@@ -381,12 +504,14 @@ def register():
bpy.types.Camera.pov = PointerProperty(type=RenderPovSettingsCamera)
bpy.types.Light.pov = PointerProperty(type=RenderPovSettingsLight)
bpy.types.World.pov = PointerProperty(type=RenderPovSettingsWorld)
+ bpy.types.World.pov_texture_slots = CollectionProperty(type=WorldTextureSlot)
def unregister():
del bpy.types.Camera.pov
del bpy.types.Light.pov
del bpy.types.World.pov
+ del bpy.types.World.pov_texture_slots
for cls in reversed(classes):
unregister_class(cls)