Blender Git Loki
Git Commits -> Revision 005dabb
Revision 005dabb by Lukas Toenne (master) April 25, 2014, 10:05 (GMT) |
Fix T39799: Backdrop (compositor) ignores alpha. This issue is because of a somewhat "special" behavior in old code, which got lost during rB09874df: There was a variant of the `relinkConnections` function which would leave the socket completely unconnected. This is not a valid state really (given that each unconnected input must otherwise connected to a constant `Set` type node), but was used as a way to distinguish connected alpha/depth sockets in composite and viewer output nodes. https://developer.blender.org/diffusion/B/browse/master/source/blender/compositor/intern/COM_InputSocket.cpp;28a829893c702918afc5ac1945a06eaefa611594$69 After the large cleanup patch ({D309}) every socket is now automatically connected to a constant, such that `getInputSocketReader` will never return a NULL pointer. This breaks the previous test method, which needs to be replaced by more explicit flags. Luckily this was done only for very few output nodes (Composite, Viewer, Output-File). These now use the regular SetValueOperation default in case "use alpha" is disabled, but set this to an explicit 1.0 value instead of mapping to the node socket. |
Commit Details:
Full Hash: 005dabbd9ad51b75aef260168c81d5a826d4eb4f
Parent Commit: 1eb1351
Lines Changed: +87, -46
12 Modified Paths:
/source/blender/compositor/intern/COM_NodeConverter.cpp (+27, -0) (Diff)
/source/blender/compositor/intern/COM_NodeConverter.h (+7, -0) (Diff)
/source/blender/compositor/intern/COM_NodeOperationBuilder.cpp (+5, -1) (Diff)
/source/blender/compositor/nodes/COM_CompositorNode.cpp (+8, -2) (Diff)
/source/blender/compositor/nodes/COM_OutputFileNode.cpp (+2, -1) (Diff)
/source/blender/compositor/nodes/COM_ViewerNode.cpp (+8, -2) (Diff)
/source/blender/compositor/operations/COM_CompositorOperation.cpp (+5, -12) (Diff)
/source/blender/compositor/operations/COM_CompositorOperation.h (+2, -2) (Diff)
/source/blender/compositor/operations/COM_OutputFileOperation.cpp (+9, -8) (Diff)
/source/blender/compositor/operations/COM_OutputFileOperation.h (+6, -3) (Diff)
/source/blender/compositor/operations/COM_ViewerOperation.cpp (+6, -13) (Diff)
/source/blender/compositor/operations/COM_ViewerOperation.h (+2, -2) (Diff)
/source/blender/compositor/intern/COM_NodeConverter.h (+7, -0) (Diff)
/source/blender/compositor/intern/COM_NodeOperationBuilder.cpp (+5, -1) (Diff)
/source/blender/compositor/nodes/COM_CompositorNode.cpp (+8, -2) (Diff)
/source/blender/compositor/nodes/COM_OutputFileNode.cpp (+2, -1) (Diff)
/source/blender/compositor/nodes/COM_ViewerNode.cpp (+8, -2) (Diff)
/source/blender/compositor/operations/COM_CompositorOperation.cpp (+5, -12) (Diff)
/source/blender/compositor/operations/COM_CompositorOperation.h (+2, -2) (Diff)
/source/blender/compositor/operations/COM_OutputFileOperation.cpp (+9, -8) (Diff)
/source/blender/compositor/operations/COM_OutputFileOperation.h (+6, -3) (Diff)
/source/blender/compositor/operations/COM_ViewerOperation.cpp (+6, -13) (Diff)
/source/blender/compositor/operations/COM_ViewerOperation.h (+2, -2) (Diff)