a Use Alpha option again. This makes the case where you enabled Premultiply on the
image and disabled Use Alpha on the texture work again.
That's mostly useful when you have a straight alpha image file which has no useful
RGB colors in zero alpha regions (e.g. renders). Then sometimes you don't want to
use the alpha for the texture stack mixing, but you still want to multiply it into
the RGB channels to avoid a blocky transition into zero alpha regions.
This also removes the version patch that copied image datablocks because it's not
reliable and might be causing bug #34434. This does mean we are no longer backwards
compatible for cases where two different texture datablocks with Use Alpha enabled
and disabled where using the same image.
Made Texture compositor input node single-threaded since
texture trees are not thread-safe.
Also fixed texture being flipped horizontally and vertically.
Why nobody noticed this for 3 releases already??
Should go to 2.66a
Image Sequence texture now allows to animate "Offset" again with fcurves.
This was disabled for 2.65, it only works for fcurve key inserting (not
for drivers), but too many people have been using to animate character
textures already...
Fix for 2.66a
""We can't pass the results of canvas->GetViewPort() directly because canvas->SetViewPort() does some extra math""
Bug introduced during 2.65 series in the refactor to use canvas->SetViewPort instead of direct opengl calls for viewport
(53305, 53392, 53393)
Fix for 2.66a
With help from Daniel Stokes and Mitchell Stokes.
This bug always existed in OSX, but started showing up in Windows and Linux on review (54745 + 54747)
[the patch to enable alpha buffer for all OSs]
A better fix would be to use RAS_IRasterizer::SetAlphaBlend(GPU_BLEND_SOLID);
but I think gpu_verify_alpha_blend() is not switching to SOLID because
GTS.alphablend is GPU_BLEND_SOLID (even though GL_ALPHA_TEST is enabled).
Anyways, this is not something worth tackling now, since in terms of functionality it shouldn't matter.
Instead of flagging the rigid body world for frame update just call
BKE_rigidbody_do_simulation() recursively for all scenes.
This avoids having to constantly check if the simulation needs to be
updated.
The rigid body world could be rebuilt on start frame and one frame after
start frame. The latter was necessary sice animation playback usually
doesn't start at start frame.
This lead to different simulations depending on which frame the
simulaton was rebuilt when animation was involved.
Now we only rebuild the world on start frame.
This is actually tricky to do since, as mentioned above, animation
playback starts on second frame. To work around this we rebuild the
world before the actual update.
The alternative would be to rebuld the world on every simulation change
(like the other simulations do it) but this is an expensive operation
and would be too slow.
to support more than 2 UV maps. This code indirectly depended on the order of
OpenGL attribute ID's assigned by the OpenGL driver being the same as the
attributes being declared in the GLSL shader code, which is not always the case.
Fix for 2.66a
Screencast could be started twice in a row, but it then also added two handlers
for drawing an overlay circle around mouse cursor. After ending the screencast,
this circle then kept being drawn.
Added compatibility option "Straight Alpha Output" to image input node
When this option is enabled, image input node will convert float buffer
to straight alpha.
This is not what you'll usually want with new alpha pipeline, nit this
is needed to preserve compatibility with older files saved in 2.65.
In that version byte image are resulting with straight alpha passing
to the compositor and alpha-overing required extra premultiplication
of inputs.
So, that's why Straight Alpha Output is needed -- it's set in versioning
code for byte node images so they'll still output straight alpha.
This option is currently only available in N-panel.
Additional change: added Alpha Mode for image input node to N-panel.
- optional, select between name/keybinding.
- when key input can't be parsed, alert red to give the user some feedback.
- key shortcut parsing could be improved or swapped out for button which grabs shortcut.