Commit Graph

7613 Commits

Author SHA1 Message Date
Lukas Tönne
e15cdec2d4 New compositor node "Sun Beams"
This allows adding a "fake" sun beam effect, simulating crepuscular rays
from light being scattered in a medium like the atmosphere or deep water.
Such effects can be created also by renderers using volumetric lighting,
but the compositor feature is a lot cheaper and is independent from 3D
rendering. This makes it ideally suited for motion graphics.

The implementation uses am optimized accumulation method for gathering
color values along a line segment. The inner buffer loop uses fixed
offset increments to avoid unnecessary multiplications and avoids
variables by using compile-time specialization (see inline comments
for further details).
2014-07-26 12:59:29 +02:00
Antony Riakiotakis
2e50b4dc51 Minor changes:
* Changing UV map updates the UV editor.
* UV Layer -> UV Map
2014-07-25 15:27:17 +02:00
Sergey Sharybin
157fc43369 Implement option to parent object to undistorted position of 2D track 2014-07-24 21:01:19 +06:00
Antony Riakiotakis
d2cf9f0c4b Fix UI still allowing addition of slots in cycles if material did not
use nodes.
2014-07-24 15:28:02 +02:00
Antony Riakiotakis
36b6b69173 Fixes:
* Crash with image drag'n'drop
* Drag'n drop color to paint 2d canvas not working
* Change "Layers" to "Slots" to appease purists.
2014-07-24 15:18:49 +02:00
Antony Riakiotakis
6a933c858c Move stencil options to own panel under layer tab. 2014-07-24 12:41:39 +02:00
Antony Riakiotakis
a93ec34ac8 Fix minor issues from recent commits.
* Clone from layer UI not working
* Get trash color when entering texture painting for the first time
2014-07-24 12:08:23 +02:00
Antony Riakiotakis
cc40925c36 UI cleanup:
New layer in texture painting will now allow entering image parameters,
similar to new image.
2014-07-24 11:39:04 +02:00
Antony Riakiotakis
6e41b008e3 Allow renaming images from list in layers panel by double clicking.
Thanks to Sebastian Koenig for the report!
2014-07-24 11:05:37 +02:00
Tamito Kajiyama
d5d540615b Freestyle: minor revisions of Python API docstrings and comments. 2014-07-24 14:29:38 +09:00
Tamito Kajiyama
1819fa2b5a A follow-up to Patch D623: minor code updates and style cleanup. 2014-07-24 14:29:36 +09:00
Tamito Kajiyama
b408d8af31 Freestyle Python API: Updates and speedups for the parameter editor
In addition to D319, this patch updates the parameter editor, the UI of Freestyle.

Using new API functionality and experience gained in making D319, this patch
provides a quite noticable speedup for commonly-used Freestyle linestyle modifiers.

As this patch touches a lot of code (and mainly the foundations) it is likely that
mistakes are made.  The patch has been tested with a regression suite for Freestyle
(https://github.com/folkertdev/freestyle-regression-tests/tree/master), but testing
with scenes used in production is very much appreciated.

Differential revision: https://developer.blender.org/D623

Author: flokkievids (Folkert de Vries)

Reviewed by: kjym3 (Tamito Kajiyama)
2014-07-24 14:29:35 +09:00
Bastien Montagne
ffea67ca57 Updates/fixes for new UI messages. 2014-07-23 20:59:40 +02:00
Antony Riakiotakis
af162658e1 Texture painting:
Add ability to select UV layer from the layer panel.
2014-07-23 20:06:41 +02:00
Antony Riakiotakis
1134ca7420 Fix T41157
Was an issue with python interpretation error. Second part of the bug is
fixed by Campbell.
also minor UI tweak for occlusion UI.
2014-07-23 16:05:35 +02:00
Antony Riakiotakis
17021171f1 Occlusion Query based selection.
This patch creates an interface for selection mechanisms in opengl. This
makes it possible to switch between occlusion query based or select
rendermode based selection transparently.

This is really useful on graphics drivers that do not accelerate the
select rendermode path (some ATI cards are notorious for this, and the
new path is used by default there), since occlusion queries are always
hardware accelerated due to their use in games.

The option can be found under system - selection. Auto just enables
occlusion queries for ATI users while the rest of the options enforce
one of the two methods always.

There is just one known change, previous code enforced nearest bone to
always get selected, even when mouse selecting near the same position, I
couldn't replicate the behaviour though.

patch by me with edits and review by Campbell.

Thanks!
2014-07-23 15:26:08 +02:00
Antony Riakiotakis
c32a671b3a Fix T41141, can't paint texture in cycles.
The issue is actually that creating a new image in texture paint mode
will set it always as a stencil image. Internally, the code checks if
the painted image is the same as the stencil and if it is, no painting
is done.

Solution is to expose a boolena to the operator for setting the image as
a stencil (could be an enum in th future for more uses)

Stencil UI is a bit weird here, will definitely redesign.
2014-07-22 21:06:10 +02:00
Tamito Kajiyama
12720352a0 Freestyle: removed the context switch button from the Freestyle panel in the Render properties window.
The button was intended to guide new users of Freestyle, but actually that is a matter
of documentation.  The button is unlikely to be frequently used once users get familiar
with Freestyle panels in other contexts.  Now that Freestyle has been part of Blender
since a while, it seems time to clean the UI.
2014-07-22 16:39:29 +09:00
Campbell Barton
200dd87de1 Cleanup: pep8 & redundant vars 2014-07-22 12:03:15 +10:00
Campbell Barton
88f126f2eb Fix missing include 2014-07-22 11:53:24 +10:00
Antony Riakiotakis
86059f03eb Make clone tool UI slightly less horrible.
Move clone tool options as well as layer selection to the brush panel.
That should make its use more apparent and, most importantly, easy.
2014-07-21 19:24:22 +02:00
Antony Riakiotakis
f745564e4e GSOC 2013 paint
Yep, at last it's here!

There are a few minor issues remaining but development can go on in
master after discussion at blender institute.

For full list of features see:

http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.72/Painting

Thanks to Sergey and Campbell for the extensive review and to the
countless artists that have given their input and reported issues during
development.
2014-07-21 12:02:05 +02:00
Sergey Sharybin
3b2f6dbf98 Sequencer: Add gaussian blur effect
Currently this gaussian blur implementation accumulates values in the
square kernel rather that doing X direction and then Y direction because
of the lack of using multiple-staged filters.

Once we can we'll implement a way to apply filter as multiple stages we
can optimize hell of a lot in here.

Another thing we can do is to use SSE2 instructions here.
2014-07-19 22:17:22 +06:00
Lukas Tönne
cf3bb40c62 Fix T41081: Presets not working on pinned properties panels.
Preset operators should avoid using `bpy.context.object.data` as a base
path to properties. This path is not available in the buttons context
when using pinned datablocks! Instead use the specific
`bpy.context.camera` and `bpy.context.lamp.sky` paths now, which lead to
the correct datablocks in any case.
2014-07-18 11:37:57 +02:00
Sergey Sharybin
813ece7f79 Fix T41035: Scale Manipulator CTRL-ALT-S issue with maya shortcuts 2014-07-18 15:30:36 +06:00
Sergey Sharybin
e28ffaf81c Fix wrong interface flags combination in inverse kinematics panel 2014-07-18 15:14:52 +06:00
Howard Trickey
70453c578d Fix T34664: bevel face material can be set in tool and modifier.
Now the bevel tool, modifier, and internal operator have a material
slot # parameter that the user can set. If left at default of -1,
behavior is as current -- bevel face material is taken from the
closest original face (this may be ambiguous). If material slot
is >= 0, it gives the material slot index number for the material
to use.
2014-07-17 09:20:22 -04:00
gaiaclary
10da6ddbee Automatic commit by arc 2014-07-16 14:03:37 +02:00
gaiaclary
7eb539c04b Sort vertex groups by Armature Hierarchy
Sort vertex groups by Armature Hierarchy

Reviewers: mont29

Differential Revision: https://developer.blender.org/D649
2014-07-16 14:03:36 +02:00
Jorge Bernal
1bf87fa26c BGE: TrackTo actuator: increasing up & track axis options
This is related to Task T34861 to increase up & track axis options for TrackTo actuator. I've just added it to differential to facilitate an easier review.

With the patch applied you can select X, Y and Z axis for the Up axis, and X, Y, Z, -X, -Y and -Z for the track axis.

Related to the implementation I have used the algorithm from Trackto constrain placed in constrain.c but adapted to be used with MOTO library.

The wiki docs are here (http://wiki.blender.org/index.php/User:Lordloki/Doc:2.6/Manual/Game_Engine/Logic/Actuators/Edit_Object#Trackto_Actuator).

Test file is here: {F97623}

I have also uploaded 2 screenshots showing the UI modifications to the TrackTo actuator:

{F91992} {F91990}

Reviewers: moguri, dfelinto

Reviewed By: moguri

CC: Genome36

Differential Revision: https://developer.blender.org/D565
2014-07-14 18:30:27 -07:00
Campbell Barton
dd9a33dc83 Add mesh tool to split faces by wire edges (face menu)
This can be used in a similar way to the knife tool, but the edges are manually setup first.
2014-07-11 10:32:33 +10:00
Sergey Sharybin
f14e740dee Implement Start Resolution for preview render in BI
So now viewport render resolution division works exactly the same as in Cycles.
2014-07-09 19:55:40 +06:00
Lukas Tönne
06d943cfd6 Fix T40983 Particle Texture use of generated coordinates is wrong.
Particle texture eval was not taking the actual texture space for orco/
generated textures into account at all.
2014-07-08 13:44:58 +02:00
Tamito Kajiyama
7915d7277a Per-material line color settings for Freestyle.
New properties 'line_color' and 'line_priority' are added to Material ID data blocks.

The 'line_color' property allows users to specify a per-material line color that can be
used as a Freestyle line color through Material color modifiers of line style settings.

The new line color property is intended to provide a solution for line color
stylization when a proper Freestyle support for Cycles is implemented (likely
as part of the upcoming Blender 2.72 release; see Patch D632).  Materials in
Cycles are usually set up using shader nodes, and Freestyle won't be capable
of retrieving colors and other properties from node-based materials any soon.

The new line color property of materials addresses this foreseen limitation by
providing artists with an intuitive alternative mean to specify line colors on a
per-material basis independently from node trees.

The 'line_priority' property gives users a way to control line colors at material
boundaries.  When a line is drawn along a feature edge at material boundaries,
one of the two materials on both sides of the edge has to be picked up to
determine the line color.  So far there was no way to control this selection
(which was in effect at random).  Now the material with a higher line color
priority will be selected.

The new per-material line settings are shown in the new Freestyle Line tab in
the Material context of the Properties window (only when Freestyle is enabled).
2014-07-07 16:19:51 +09:00
Joshua Leung
a4c4145800 NLA/AnimEditors: Added operator to remove all "empty" AnimData blocks
It is sometimes possible to end up with a lot of datablocks which have old + unused
"AnimData" containers still attached. This most commonly happens when doing motion
graphics work (i.e. when some linked-in objects may have previously been used to develop
a set of reusable assets), and is particularly distracting in the NLA Editor.

This commit adds an operator which removes AnimData blocks (restricted to only those
which are visible in the animation editor where it is run from) which are "empty"
(i.e. that is, have no active action, drivers, and nla tracks or strips).

This operator can be found from the "Edit" menu in the NLA Editor. Although it also
works when run from the DopeSheet or Graph Editors, it is of less use there since
those won't show these empty AnimData blocks by default (since by definition, such
AnimData blocks necesarily have no keyframes or drivers that can be shown), hence
there will be no feedback if the operator fails or succeeds.
2014-07-06 19:35:24 +12:00
Sergey Sharybin
ef801eb1ff Fix T40941: Bevel factor in Text
Bevel factor is not supported by text, hide it from the interface.
2014-07-04 15:12:20 +06:00
Bastien Montagne
17f6d8337d Usual UI messages fixes. 2014-06-30 20:48:02 +02:00
Bastien Montagne
2e64b8354b Fix T40885: "Reset Curve" is backwards on Custom Falloff Curves (Lights).
Add ability to define negative slope by default to curvemapping template...
2014-06-30 16:23:47 +02:00
Bastien Montagne
78cdc707ab Add render result caching.
Simply add an option to render settings to save an EXR cache,
just when the render is finished. Also changed RE_ReadRenderResult() to read
cache instead of temp sample files (those are fully volatile now anyway).

Path to save cached render results is an UserPreferences setting.

Also added 'Reload render' feature to the Image Editor (so one can now re-open a blend,
and in an Image Editor hit ctrl-R to (try to) reload last render from cache).

Reviewers: campbellbarton, sergey

Differential Revision: https://developer.blender.org/D553
2014-06-28 19:23:34 +02:00
Sergey Sharybin
04683a769e Updating submodule to point to v2.71
Now for real!
2014-06-26 00:53:49 +06:00
Tamito Kajiyama
dd96be356d Freestyle: Fix for a couple of missing names in freestyle.chainingiterators.__all__. 2014-06-24 17:25:02 +09:00
Tamito Kajiyama
ce729677db D319: Freestyle Python scripts update.
This revision is meant to update Freestyle's Python scripts to make full usage
of the new features of Python and Freestyle's Python API.

Freestyle's Python scripts are pretty old already, and were never given much
attention. With the 2.7x generation of Blender coming up, this is an excellent
time to update Freestyle's Python scripts, hopefully adding some new features
and achieving some speed improvements on the way.

Main goals:
* use for loops where possible
* general cleanup, making use of more recent python features (generators,
  ternary operator, ect.)
* update the documentation on the way (it's lacking atm)


Differential revision: https://developer.blender.org/D319

Author: flokkievids (Folkert de Vries)

Reviewed by: kjym3 (Tamito Kajiyama)
2014-06-24 13:53:14 +09:00
Lukas Tönne
647870bc6a Use toolbar tabs for node categories instead of just a long list of
panels.

Patch by @Severin (with minor modifications by me). As discussed in
{D535} the node editor does not have real modal operator tools like the
3D view or image editors for instance, so it makes sense to utilise it
this way. Tabs really help in this area due to the large amount of node
types and categories. Further tweaks could be made later if the need
arises.
2014-06-23 16:37:41 +02:00
Antony Riakiotakis
95da8ba64b add brush icons from paint branch to make diff more manageable for arcanist 2014-06-22 17:48:08 +03:00
Campbell Barton
98af262260 Replace hard-coded version for release log url 2014-06-20 20:49:50 +10:00
Thomas Dinges
155a6106d0 Update Readme and Release Log link for 2.71.
This should be backported.
2014-06-20 12:31:34 +02:00
Campbell Barton
2dce13d213 Python: Remove deprecated uses of os.popen
T40415 by Lawrence D'Oliveiro
2014-06-20 02:00:46 +10:00
Sergey Sharybin
6601136aaa Enable texture preview even when Cycles is active 2014-06-19 13:11:58 +06:00
Bastien Montagne
f94b87bbb8 New python API for units handling.
Exposes all supported unit systems & types, and to_value()/to_string() functions.

Reviewed and enhanced by CampbellBarton, many thanks!

Differential Revision: https://developer.blender.org/D416
2014-06-17 16:03:40 +02:00
Campbell Barton
f1fb5dad95 Correct menu name 2014-06-17 15:28:32 +10:00