[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [4137] trunk/py/scripts/addons: Changes for recent image alpha rework.

Sergey Sharybin sergey.vfx at gmail.com
Fri Jan 4 08:57:27 CET 2013


Revision: 4137
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=4137
Author:   nazgul
Date:     2013-01-04 07:57:26 +0000 (Fri, 04 Jan 2013)
Log Message:
-----------
Changes for recent image alpha rework.

Addons maintainers please double check the changes.

Modified Paths:
--------------
    trunk/py/scripts/addons/io_import_gimp_image_to_scene.py
    trunk/py/scripts/addons/texture_paint_layer_manager.py

Modified: trunk/py/scripts/addons/io_import_gimp_image_to_scene.py
===================================================================
--- trunk/py/scripts/addons/io_import_gimp_image_to_scene.py	2013-01-04 07:56:42 UTC (rev 4136)
+++ trunk/py/scripts/addons/io_import_gimp_image_to_scene.py	2013-01-04 07:57:26 UTC (rev 4137)
@@ -35,7 +35,7 @@
 """
 
 def main(File, Path, LayerViewers, MixerViewers, LayerOffset,
-         LayerScale, OpacityMode, PremulAlpha, ShadelessMats,
+         LayerScale, OpacityMode, AlphaMode, ShadelessMats,
          SetCamera, SetupCompo, GroupUntagged, Ext):
     
     #-------------------------------------------------
@@ -238,7 +238,7 @@
         Render.resolution_x = ResX
         Render.resolution_y = ResY
         Render.resolution_percentage = 100
-    if PremulAlpha: Render.alpha_mode = 'PREMUL'
+    Render.alpha_mode = 'TRANSPARENT'
     
     #-------------------------------------------------
     # 3D VIEW SETTINGS
@@ -347,7 +347,7 @@
             
             Img = bpy.data.images.new(NameShort, 128, 128)
             Img.source = 'FILE'
-            if PremulAlpha: Img.use_premultiply = True
+            Img.alpha_mode = AlphaMode
             Img.filepath = '%s%s%s' % (PathSaveRaw, Name, ExtSave)
             
             UVFace = Active.data.uv_textures[0].data[0]
@@ -391,7 +391,7 @@
                 
                 Img = bpy.data.images.new(NameShort+'_A', 128, 128)
                 Img.source = 'FILE'
-                if PremulAlpha: Img.use_premultiply = True
+                Img.alpha_mode = AlphaMode
                 Img.filepath = '%s%s_A%s' % (PathSaveRaw, Name, ExtSave)
                 
                 Tex.image = Img
@@ -560,9 +560,12 @@
         description="Add Viewer nodes to each Mix node",
         default=True)
     
-    PremulAlpha = BoolProperty(name="Premuliply Alpha",
-        description="Set Image and Render settings to premultiplied alpha",
-        default=True)
+    AlphaMode = EnumProperty(name="Alpha Mode",
+        description="Representation of alpha information in the RGBA pixels",
+        items=(
+            ('STRAIGHT', 'Texture Alpha Factor', 'Transparent RGB and alpha pixels are unmodified'),
+            ('PREMUL', 'Material Alpha Value', 'Transparent RGB pixels are multiplied by the alpha channel')),
+        default='STRAIGHT')
 
     ShadelessMats = BoolProperty(name="Shadeless Material",
         description="Set Materials as Shadeless",
@@ -608,7 +611,7 @@
         box.prop(self, 'OpacityMode', icon='GHOST')
         if self.OpacityMode == 'COMPO' and self.SetupCompo == False:
             box.label('Tip: Enable Node Compositing', icon='INFO')
-        box.prop(self, 'PremulAlpha', icon='IMAGE_RGB_ALPHA')
+        box.prop(self, 'AlphaMode', icon='IMAGE_RGB_ALPHA')
         box.prop(self, 'ShadelessMats', icon='SOLID')
         box.prop(self, 'LayerOffset')
         box.prop(self, 'LayerScale')
@@ -630,7 +633,7 @@
         LayerViewers = self.LayerViewers
         MixerViewers = self.MixerViewers
         OpacityMode = self.OpacityMode
-        PremulAlpha = self.PremulAlpha
+        AlphaMode = self.AlphaMode
         ShadelessMats = self.ShadelessMats
         SetCamera = self.SetCamera
         SetupCompo = self.SetupCompo
@@ -645,7 +648,7 @@
         # Call Main Function
         if Ext:
             main(filename, directory, LayerViewers, MixerViewers, LayerOffset,
-                 LayerScale, OpacityMode, PremulAlpha, ShadelessMats,
+                 LayerScale, OpacityMode, AlphaMode, ShadelessMats,
                  SetCamera, SetupCompo, GroupUntagged, Ext)
         else:
             self.report({'ERROR'},"Selected file wasn't valid, try .xcf or .xjt")

Modified: trunk/py/scripts/addons/texture_paint_layer_manager.py
===================================================================
--- trunk/py/scripts/addons/texture_paint_layer_manager.py	2013-01-04 07:56:42 UTC (rev 4136)
+++ trunk/py/scripts/addons/texture_paint_layer_manager.py	2013-01-04 07:57:26 UTC (rev 4137)
@@ -568,7 +568,6 @@
                         else:
                             i.filepath = fp
                         i.name = name
-                        i.use_premultiply = True
                     except:
                         print("something wrong with", fp)
     #THAT'S THE GENERATED FILES saved, pathed and reloaded



More information about the Bf-extensions-cvs mailing list