6 years agodoxygen: rename included files (they were ignored)
Campbell Barton [Wed, 20 May 2015 02:55:57 +0000 (12:55 +1000)]
doxygen: rename included files (they were ignored)

6 years agoBGE: Use CameCase code style for KX_WorldInfo python API.
Porteries Tristan [Tue, 19 May 2015 21:13:30 +0000 (23:13 +0200)]
BGE: Use CameCase code style for KX_WorldInfo python API.

6 years agoBGE: Fix T40555: LibLoad material caching issue
Porteries Tristan [Tue, 19 May 2015 17:24:14 +0000 (19:24 +0200)]
BGE: Fix T40555: LibLoad material caching issue

Previously we don't merge material cached list, it create dangling pointer and memory leak.
Now we merge material cache list during the scene merge, and remove material in this list during the library free.

Reviewers: agoose77, dfelinto, hg1, pgi, campbellbarton, moguri

Reviewed By: campbellbarton, moguri

Subscribers: campbellbarton, youle, kupoman

Projects: #game_engine

Differential Revision:

6 years agoSupport string metadata loading for OpenEXR files.
Antony Riakiotakis [Tue, 19 May 2015 16:32:41 +0000 (18:32 +0200)]
Support string metadata loading for OpenEXR files.

6 years agoFix part of T44768 Yet another Intel driver failing on viewport Ambient
Antony Riakiotakis [Tue, 19 May 2015 14:25:42 +0000 (16:25 +0200)]
Fix part of T44768 Yet another Intel driver failing on viewport Ambient

(Maybe we should add drivers that DO work instead, but in the future
those will be much more since Intel claims to have fixed the issue)

6 years agoClear animation list to avoid referencing freed memory.
Antony Riakiotakis [Tue, 19 May 2015 14:15:38 +0000 (16:15 +0200)]
Clear animation list to avoid referencing freed memory.

6 years agoFix T44766: Connect fails /w selected ngon edges
Campbell Barton [Tue, 19 May 2015 13:46:31 +0000 (23:46 +1000)]
Fix T44766: Connect fails /w selected ngon edges

6 years agoBMesh: calls to store selection at the list head
Campbell Barton [Tue, 19 May 2015 13:42:22 +0000 (23:42 +1000)]
BMesh: calls to store selection at the list head

6 years agoBMesh: add BM_edge_pair_share_face_by_len
Campbell Barton [Tue, 19 May 2015 13:41:13 +0000 (23:41 +1000)]
BMesh: add BM_edge_pair_share_face_by_len

6 years agoFix T44755 set_value node output in node tree not properly converted to
Antony Riakiotakis [Tue, 19 May 2015 13:35:33 +0000 (15:35 +0200)]
Fix T44755 set_value node output in node tree not properly converted to
color in GLSL

Issue here is that intermediate result was clipped as an optimization in
such nodes and thus not converted to the correct type properly. Now only
clip those values if types match.
This keeps both the optimization and the conversion. I looked at
converting uniform types always but it's more involved to compare types
at conversion time for such links because the type was getting
overridden during link duplication.

6 years agoFix T44553.
Antony Riakiotakis [Tue, 19 May 2015 09:48:05 +0000 (11:48 +0200)]
Fix T44553.

Front face option did not get the correct normals to function - area
normal would always point to the direction of the stroke

6 years agoFix T44762: Materials flicker in edit-mode
Campbell Barton [Tue, 19 May 2015 09:09:35 +0000 (19:09 +1000)]
Fix T44762: Materials flicker in edit-mode

6 years agoFix T44759: Blender has problems reading and writing 42k images to PNG
Sergey Sharybin [Tue, 19 May 2015 08:02:17 +0000 (13:02 +0500)]
Fix T44759: Blender has problems reading and writing 42k images to PNG

6 years agoObject Drawing: avoid redundant material update
Campbell Barton [Tue, 19 May 2015 07:58:24 +0000 (17:58 +1000)]
Object Drawing: avoid redundant material update

6 years agoBMesh: editmode drawing set every faces material
Campbell Barton [Tue, 19 May 2015 07:54:47 +0000 (17:54 +1000)]
BMesh: editmode drawing set every faces material

Check for changes in material (as other drawing code already does)

6 years agoCycles: Check for validity of the tiles arrays in progressive refine
Sergey Sharybin [Tue, 19 May 2015 07:31:37 +0000 (12:31 +0500)]
Cycles: Check for validity of the tiles arrays in progressive refine

In certain configurations (for example when start resolution is set to small
value for background render and progressive refine enabled) number of tiles
might change in the tile manager. This situation will confuse progressive
refine feature and likely cause crash.

We might also add some settings verification in the session constructor, but
having an assert with brief explanation about what's wrong should already be
much better than nothing.

6 years agoCycles: Check for whether update/write callbacks are set prior to calling them
Sergey Sharybin [Tue, 19 May 2015 07:28:49 +0000 (12:28 +0500)]
Cycles: Check for whether update/write callbacks are set prior to calling them

This changes the progressive refine part, regular update was already checking
for whether callbacks are set.

6 years agoSCons: install Python executable when its bundled
Campbell Barton [Tue, 19 May 2015 06:17:49 +0000 (16:17 +1000)]
SCons: install Python executable when its bundled

6 years agoCMake: install Python executable when its bundled
Campbell Barton [Tue, 19 May 2015 05:56:28 +0000 (15:56 +1000)]
CMake: install Python executable when its bundled

6 years agoPython: search for 'python' and 'python#.#'
Campbell Barton [Tue, 19 May 2015 05:55:31 +0000 (15:55 +1000)]
Python: search for 'python' and 'python#.#'

6 years agoCMake: remove temp assignment, unused vars
Campbell Barton [Tue, 19 May 2015 06:26:03 +0000 (16:26 +1000)]
CMake: remove temp assignment, unused vars

6 years agoBuilding without Python works again
Campbell Barton [Tue, 19 May 2015 01:34:52 +0000 (11:34 +1000)]
Building without Python works again

6 years agoFinal solution for Intel card Ambient Occlusion in T43987.
Antony Riakiotakis [Mon, 18 May 2015 20:05:38 +0000 (22:05 +0200)]
Final solution for Intel card Ambient Occlusion in T43987.

Forgot to account for offscreen case in addition to compositing

6 years agoFix T44708: UI label should use plural
Julian Eisel [Mon, 18 May 2015 19:29:57 +0000 (21:29 +0200)]
Fix T44708: UI label should use plural

Just to keep commit ratio up while being busy preparing for final exams

6 years agoBGE: Fix blenderplayer bad call stubs not updated.
Porteries Tristan [Mon, 18 May 2015 16:52:45 +0000 (18:52 +0200)]
BGE: Fix blenderplayer bad call stubs not updated.

Please (dfelinto) compile the bge to avoid these kind of problems.

6 years agoBGE: Set default envMap resolution to 512 pixels
Porteries Tristan [Mon, 18 May 2015 16:10:03 +0000 (18:10 +0200)]
BGE: Set default envMap resolution to 512 pixels

I propose to change  the environment map render default resolution (600) to 512 (Thanks brecht for the correction... I don't know why I said dpi) (to make it compatible with this script: ) to make cubeMap reflections easier and avoid this error:

invalid envmap size please render with CubeRes @ power of two
unable to initialize image(0) in MAMaterial, image will not be available (post 11)

Author : youle (Ulysse MARTIN)

Reviewers: hg1, agoose77, lordloki, moguri, panzergame, dfelinto

Reviewed By: panzergame, dfelinto

Subscribers: brecht

Projects: #game_engine

Differential Revision:

6 years agoMulti-View: small cleranup/refactor with RE_pass_find_by_type and RE_RenderLayerGetPass
Dalai Felinto [Mon, 18 May 2015 13:57:59 +0000 (10:57 -0300)]
Multi-View: small cleranup/refactor with RE_pass_find_by_type and RE_RenderLayerGetPass

6 years agoFix T44752: Clip Editor doesn't respect ColorSpace setting when playback after Prefetch
Sergey Sharybin [Mon, 18 May 2015 11:40:12 +0000 (16:40 +0500)]
Fix T44752: Clip Editor doesn't respect ColorSpace setting when playback after Prefetch

6 years agoSolve threading conflict related on proxy group's inverse matrix
Sergey Sharybin [Mon, 18 May 2015 09:06:46 +0000 (14:06 +0500)]
Solve threading conflict related on proxy group's inverse matrix

It was possible that two threads will start calculating proxy group's inverted
matrix and store it in the object itself. This isn't good idea because it means
some threads might be using partially written matrix.

6 years agoMake object material drivers evaluation thread safe
Sergey Sharybin [Mon, 18 May 2015 08:53:48 +0000 (13:53 +0500)]
Make object material drivers evaluation thread safe

Previously it was very easy to run into situation when two objects are sharing
the same materials with drivers which will cause threading access issues.

This actually only needed for the old depsgraph, but since it's still the one
we're using by default we'd better solve this issue.

6 years agoAttempt to make drivers more safe for threading
Sergey Sharybin [Mon, 18 May 2015 08:52:01 +0000 (13:52 +0500)]
Attempt to make drivers more safe for threading

There were some reported data race conditions in the python interpreter which
seems to be rather valid.

Surely this is not very pretty solution, but it might solve some annoying bugs
related on threading.

6 years agoCorrection to early output in the parallel range implementation
Sergey Sharybin [Mon, 18 May 2015 07:44:59 +0000 (12:44 +0500)]
Correction to early output in the parallel range implementation

The used heuristic of checking the value prior to lock is not totally safe
because assignment is not atomic and check might not give proper result.

6 years agoMake switching to threaded malloc safe to be called from threads
Sergey Sharybin [Mon, 18 May 2015 07:41:51 +0000 (12:41 +0500)]
Make switching to threaded malloc safe to be called from threads

For a long time this function was only intended to be used from the main thread,
but since out implementation of parallel range (which is currently only used by
mesh deform modifier) we might want to switch to threaded alloc from object
update thread.

Now we're using spinlock around the check, which makes the code safe to be used
from all over the place.

We might consider using a bit of atomics operations magic there, but it's not so
much important for now, this code is not used in the performance critical code

6 years agoFilebrowser: Do not intent to draw empty strings, loss of time.
Bastien Montagne [Mon, 18 May 2015 11:02:05 +0000 (13:02 +0200)]
Filebrowser: Do not intent to draw empty strings, loss of time.

Fixes assert raised in `UI_text_clip_middle_ex()` when trying to draw (empty) 'size' string
for appended/linked blender datablocks.

6 years agoFix assert in outliner regarding WM and SCR ID types...
Bastien Montagne [Mon, 18 May 2015 10:53:06 +0000 (12:53 +0200)]
Fix assert in outliner regarding WM and SCR ID types...

6 years agoFix T44553: Dyntopo ignores front-face option
Campbell Barton [Mon, 18 May 2015 08:22:31 +0000 (18:22 +1000)]
Fix T44553: Dyntopo ignores front-face option

When 'Front Faces' brush option was enabled, dyntop would still adjust detail on back-faces.

6 years agoCleanup: use const for Imbuf file types
Campbell Barton [Mon, 18 May 2015 06:26:45 +0000 (16:26 +1000)]
Cleanup: use const for Imbuf file types

6 years agoFix T44543: painted texture lost after first save
Campbell Barton [Mon, 18 May 2015 03:42:47 +0000 (13:42 +1000)]
Fix T44543: painted texture lost after first save

Fix for T36639 caused all path changes to reload (which could loose user content).

Change behavior:

- Only reload data when a flag is explicitly passed
  (currently only used by Find Files operator)
- Don't reload images which have been painted onto and not saved (dirty flag set).

6 years agoFix multi-drag & multi-select, Alt press mid-drag
Campbell Barton [Mon, 18 May 2015 01:50:36 +0000 (11:50 +1000)]
Fix multi-drag & multi-select, Alt press mid-drag

This would enable multi-value-editing in the middle of the drag action.

6 years agoFix T44707: cycles border render regression
Sv. Lockal [Mon, 18 May 2015 01:37:19 +0000 (11:37 +1000)]
Fix T44707: cycles border render regression

6 years agoUI: errors in buttons now show in info report
Campbell Barton [Sun, 17 May 2015 23:12:26 +0000 (09:12 +1000)]
UI: errors in buttons now show in info report

Mistakes in button expressions were previously only printed to the console.

6 years agoChange behavior of cycles xml to conform the spec: "Each XML document has exactly...
Martijn Berger [Sun, 17 May 2015 21:41:38 +0000 (23:41 +0200)]
Change behavior of cycles xml to conform the spec: "Each XML document has exactly one single root element"

6 years agoBGE: Fix T42244 LibLoad crash with logic brick KX_TouchSensor
Porteries Tristan [Sat, 16 May 2015 19:04:14 +0000 (21:04 +0200)]
BGE: Fix T42244 LibLoad crash with logic brick KX_TouchSensor

I remove duplicate and wrong code which treat the special case of KX_TouchSensor.
And Also the re-conversion of linked logic brick.

6 years agoFix Node Editor using wrong snap element menu when called from shortcut
Julian Eisel [Sun, 17 May 2015 17:46:56 +0000 (19:46 +0200)]
Fix Node Editor using wrong snap element menu when called from shortcut

Kudos to @kopias for notifying me :)

6 years agoCycles: Enable advanced shading on AMD / OpenCL.
Thomas Dinges [Sun, 17 May 2015 17:29:33 +0000 (19:29 +0200)]
Cycles: Enable advanced shading on AMD / OpenCL.

That is needed for Motion Blur and Render Passes to work properly.
I hope there are no nasty side effects, but we need to test this.

6 years agoCycles / OpenCL: Enable Camera Motion and Hair for AMD.
Thomas Dinges [Sun, 17 May 2015 16:46:25 +0000 (18:46 +0200)]
Cycles / OpenCL: Enable Camera Motion and Hair for AMD.

Only enabled for the Experimental kernel though, so the feature set must
be changed in the UI to use the features.

6 years agoCleanup: Typos, typos everywhere. :D
Thomas Dinges [Sun, 17 May 2015 16:32:31 +0000 (18:32 +0200)]
Cleanup: Typos, typos everywhere. :D

6 years agoFix T44713: GLSL and BI inconsistency converting color to float node socket.
Brecht Van Lommel [Sun, 17 May 2015 16:18:04 +0000 (18:18 +0200)]
Fix T44713: GLSL and BI inconsistency converting color to float node socket.

6 years agoFix T44718: Cycles GLSL not working for NURBS objects.
Brecht Van Lommel [Sun, 17 May 2015 15:25:57 +0000 (17:25 +0200)]
Fix T44718: Cycles GLSL not working for NURBS objects.

6 years agoFix T44739: OS X RMB emulation giving wrong mouse button release event.
Brecht Van Lommel [Sun, 17 May 2015 13:43:42 +0000 (15:43 +0200)]
Fix T44739: OS X RMB emulation giving wrong mouse button release event.

6 years agoUV editor: make Ctrl+E menu with mark/clear seam, instead of always marking.
Brecht Van Lommel [Sun, 17 May 2015 13:37:42 +0000 (15:37 +0200)]
UV editor: make Ctrl+E menu with mark/clear seam, instead of always marking.

6 years agoBuildbot: Make sure files are readable by www group
Sergey Sharybin [Sun, 17 May 2015 14:27:48 +0000 (19:27 +0500)]
Buildbot: Make sure files are readable by www group

6 years agoFix T44084 - Cursor gets reset after MMB scrolling in another area while in GPencil...
Joshua Leung [Sun, 17 May 2015 14:25:32 +0000 (02:25 +1200)]
Fix T44084 - Cursor gets reset after MMB scrolling in another area while in GPencil Continous Draw Mode

6 years agoFix T44685 - In grease pencil stroke editing, selecting points is offset by a few...
Joshua Leung [Sun, 17 May 2015 14:03:15 +0000 (02:03 +1200)]
Fix T44685 - In grease pencil stroke editing, selecting points is offset by a few pixels

The problem was that it was aborting too early after stumbling across a point which
might fit within the bounds required. This commit improves the logic here to solve
this and a few other little bugs like that.

Disclaimer: There are still a few cases where it randomly ends up picking something
way off. However, this only seems to occur very sporadically, so it's hard to say
how bad the problem may be.

6 years agoBMesh: don't check winding for uv-vert-map
Campbell Barton [Sun, 17 May 2015 13:04:34 +0000 (23:04 +1000)]
BMesh: don't check winding for uv-vert-map

Made link-select separate front/back with projected UV's

6 years agoFix T44715: crash compositing with undefined node due to re-save in older version
Brecht Van Lommel [Sun, 17 May 2015 11:43:48 +0000 (13:43 +0200)]
Fix T44715: crash compositing with undefined node due to re-save in older version

6 years agoBGE: Fix T43761 No re-creation of display list after a mesh modification.
Porteries Tristan [Sat, 16 May 2015 22:41:31 +0000 (00:41 +0200)]
BGE: Fix T43761 No re-creation of display list after a mesh modification.

I also removed unused flags in RAS_ListRasterizer.cpp.

6 years agoFix T44737: Missing 'Spin' op entry in surface (NURBS) tools/menu.
Bastien Montagne [Sun, 17 May 2015 10:44:18 +0000 (12:44 +0200)]
Fix T44737: Missing 'Spin' op entry in surface (NURBS) tools/menu.

6 years agoCycles Standalone: Expose various light settings.
Thomas Dinges [Sun, 17 May 2015 10:35:58 +0000 (12:35 +0200)]
Cycles Standalone: Expose various light settings.

6 years agoNumeric Input for Pose Breakdowner/Slide/Push Tools
Joshua Leung [Sun, 17 May 2015 07:45:59 +0000 (19:45 +1200)]
Numeric Input for Pose Breakdowner/Slide/Push Tools

6 years agoCycles Standalone: Update help screen.
Thomas Dinges [Sun, 17 May 2015 10:09:43 +0000 (12:09 +0200)]
Cycles Standalone: Update help screen.

6 years agoFix own error deleting previews
Campbell Barton [Sun, 17 May 2015 07:17:02 +0000 (17:17 +1000)]
Fix own error deleting previews

6 years agoCleanup: pep8
Campbell Barton [Sun, 17 May 2015 07:17:31 +0000 (17:17 +1000)]
Cleanup: pep8

6 years agoCleanup: indentation
Campbell Barton [Sun, 17 May 2015 06:47:44 +0000 (16:47 +1000)]
Cleanup: indentation

6 years agoCleanup: typos
Campbell Barton [Sun, 17 May 2015 06:09:32 +0000 (16:09 +1000)]
Cleanup: typos

6 years agoCMake: correct file listing
Campbell Barton [Sun, 17 May 2015 06:09:15 +0000 (16:09 +1000)]
CMake: correct file listing

6 years agoCMake: fixes for own checking script
Campbell Barton [Sun, 17 May 2015 06:05:38 +0000 (16:05 +1000)]
CMake: fixes for own checking script

don't error if generated files are missing.

6 years agoYet another attempt to fix Intel case for T43987
Antony Riakiotakis [Sat, 16 May 2015 21:08:40 +0000 (23:08 +0200)]
Yet another attempt to fix Intel case for T43987

6 years agoFreestyle: Fix for stroke rendering performed with multi-views enabled.
Tamito Kajiyama [Sat, 16 May 2015 14:57:37 +0000 (23:57 +0900)]
Freestyle: Fix for stroke rendering performed with multi-views enabled.

Per-view Freestyle stroke rendering needs to be done without multi-views.

6 years agoFix T44691 Freestyle render crashes when Views is on (Blender Internal).
Tamito Kajiyama [Sat, 16 May 2015 14:55:45 +0000 (23:55 +0900)]
Fix T44691 Freestyle render crashes when Views is on (Blender Internal).

In pipeline.c the function add_freestyle() was supposed to be called once
per frame, but after the Multi-view merge the function are called as many
as the number of views.  There were however a few Freestyle parameters
that have to be initialized per frame, and initializing one of the
parameters for each view was causing double freeing of allocated memory
which was enough to result in a crash.

6 years agosetting some RNA defaults for nodes
Ines Almeida [Sat, 16 May 2015 12:04:40 +0000 (13:04 +0100)]
setting some RNA defaults for nodes

6 years agoBMesh: link-select-pick now supports redo
Campbell Barton [Sat, 16 May 2015 10:53:35 +0000 (20:53 +1000)]
BMesh: link-select-pick now supports redo

Without this you can't change delimiter options without editing the keymap.

6 years agoBMesh: add UV delimit for select-linked, dissolve
Campbell Barton [Sat, 16 May 2015 02:21:31 +0000 (12:21 +1000)]
BMesh: add UV delimit for select-linked, dissolve

6 years agoBMesh: add sharp edge delimiter
Campbell Barton [Sat, 16 May 2015 00:18:38 +0000 (10:18 +1000)]
BMesh: add sharp edge delimiter

6 years agoBMesh: select linked, support other delimiters
Campbell Barton [Sat, 16 May 2015 00:15:48 +0000 (10:15 +1000)]
BMesh: select linked, support other delimiters

Use same options as limited dissolve (adds material & winding)

6 years agoSelect linked seam limit, now works for picking
Campbell Barton [Fri, 15 May 2015 23:35:35 +0000 (09:35 +1000)]
Select linked seam limit, now works for picking

Second half of fix for also T42510

6 years agoCleanup: use define for playback frame limiter
Campbell Barton [Fri, 15 May 2015 22:34:36 +0000 (08:34 +1000)]
Cleanup: use define for playback frame limiter

6 years agoOnly initialize icons in background mode.
Campbell Barton [Fri, 15 May 2015 20:18:04 +0000 (06:18 +1000)]
Only initialize icons in background mode.

Also enable this for headless builds too.

Calling UI_icons_init would initialize matcaps, brushes etc...

6 years agoFix new 'custom previews/icons' py feature crashing in background mode.
Bastien Montagne [Fri, 15 May 2015 18:12:25 +0000 (20:12 +0200)]
Fix new 'custom previews/icons' py feature crashing in background mode.

We want this even without UI, some scripts may use it in a background processing
mode to avoid too heavy process in actual 'user' blender...

6 years agoFix T44724: missing menu entries for 'view fit' (F) in clip/image editors.
Bastien Montagne [Fri, 15 May 2015 17:49:00 +0000 (19:49 +0200)]
Fix T44724: missing menu entries for 'view fit' (F) in clip/image editors.

6 years agoFix crasher in new lazy-rebuild outliner's treehash.
Bastien Montagne [Fri, 15 May 2015 13:52:24 +0000 (15:52 +0200)]
Fix crasher in new lazy-rebuild outliner's treehash.

treehash must always been checked before used!

Reported on irc by sebastian_k and investigated by sergey, thanks!

6 years agoBGE: Fix T41299 Group API for child object in dupli instance group.
Porteries Tristan [Fri, 15 May 2015 17:05:08 +0000 (19:05 +0200)]
BGE: Fix T41299 Group API for child object in dupli instance group.

6 years agoScene audio naming cleanup:
Antony Riakiotakis [Fri, 15 May 2015 14:51:17 +0000 (16:51 +0200)]
Scene audio naming cleanup:

Remane sound_scene_handle to playback handle.
sound_scene_handle was a part of scene so we could see code like scene-
often in the same function.

If I understand things correctly, in audaspace lingo, the
playback_handle corresponds to a Reader while the scene_sound
corresponds to a Factory.

More cleanups will be done here later, but changing this now because my
brain hurts trying to remember which is which...

6 years agoBGE: Fix stupid typo error in DupliGroupRecurse
Porteries Tristan [Fri, 15 May 2015 14:25:45 +0000 (16:25 +0200)]
BGE: Fix stupid typo error in DupliGroupRecurse

6 years agoBGE: Cleanup : merge 3 loop in 1 in function DupliGroupRecurse.
Porteries Tristan [Fri, 15 May 2015 14:17:18 +0000 (16:17 +0200)]
BGE: Cleanup : merge 3 loop in 1 in function DupliGroupRecurse.

6 years agoAdd really simple memory reduction scheme for internal animation player.
Antony Riakiotakis [Fri, 15 May 2015 14:00:36 +0000 (16:00 +0200)]
Add really simple memory reduction scheme for internal animation player.

Holds 30 frames in memory. Could make it check memory instead but that
should suffice for now to make sure blender does not crash on me with
movie files.

Previously the system would load eveything in memory so something like
playing caminandes in player would swap after 30 seconds in local

6 years agoCleanup: style, spelling
Campbell Barton [Fri, 15 May 2015 13:38:53 +0000 (23:38 +1000)]
Cleanup: style, spelling

6 years agoBGE: Fix T44700 mesh without material in blenderplayer.
Porteries Tristan [Fri, 15 May 2015 12:50:46 +0000 (14:50 +0200)]
BGE: Fix T44700 mesh without material in blenderplayer.

If a mesh doesn't have a material we don't initialize the mSavedData in KX_BlenderMaterial to avoid crash.

6 years agoCycles: Make animated seed a builtin feature.
Thomas Dinges [Fri, 15 May 2015 11:49:17 +0000 (13:49 +0200)]
Cycles: Make animated seed a builtin feature.

For animations, you often want an animated render seed (noise pattern).

This could be done by e.g. setting a driver on the seed value.
Now it's a little checkbox, that can be enabled.

The animated seed is based on the current Blender frame and
the seed value itself. Simply enabling it, will already result in an animated
seed (different on each Blender frame), but it can be randomized further
by setting a different seed value.

Disabled per default, so no backward compatibility break.

Differential Revision:

6 years agoZoom to frame options, requested by the Hwoozeberry (dutch translation)
Antony Riakiotakis [Wed, 13 May 2015 18:30:53 +0000 (20:30 +0200)]
Zoom to frame options, requested by the Hwoozeberry (dutch translation)

There are 3 options here:

1) Keep range (previous behaviour)
2) Seconds - allows a specified offset in seconds around current frame
3) keyframes - zoom to include a number of keyframes around the cursor

Options 2 and 3 have their own properties to tweak the behaviour and all
options can be found in User Preferences->Interface under the 2D
viewports section.

Number 3 will probably need some refinement so commiting here for the
hwoozeberry team to test first.

6 years agoCycles: Enable CMJ for Intel/NVidia experimental split kernels
Sergey Sharybin [Fri, 15 May 2015 07:53:50 +0000 (12:53 +0500)]
Cycles: Enable CMJ for Intel/NVidia experimental split kernels

It is still disabled for AMD devices since can't test if it works fine
on this hardware.

6 years agoCycles: Pass __KERNEL_EXPERIMENTAL__ to OpenCL split kernels
Sergey Sharybin [Fri, 15 May 2015 07:49:25 +0000 (12:49 +0500)]
Cycles: Pass __KERNEL_EXPERIMENTAL__ to OpenCL split kernels

Experimental feature set id currently unavailable for megakernel, it'll
require some changes to the cache system to distinguish cached regular
kernels from cached experimental kernels.

Currently unused, but some features will be enabled soon.

6 years agoCycles: Make experimental kernel build option more generic
Sergey Sharybin [Fri, 15 May 2015 07:45:41 +0000 (12:45 +0500)]
Cycles: Make experimental kernel build option more generic

Previously it was explicitly mentioning it's NVidia kernel related option,
but in fact it's also handy for the OpenCL kernel.

6 years agoCycles: Disable bake OpenCL kernel for NVidia devices prior to sm_30
Sergey Sharybin [Fri, 15 May 2015 07:30:04 +0000 (12:30 +0500)]
Cycles: Disable bake OpenCL kernel for NVidia devices prior to sm_30

Driver fails to compile kernel in reasonable time for those devices here,
so for easier testing of the OpenCL split kernel work disabling bake kernel
for now.

6 years agoCycles: Pass device compute capabilities to kernel via build options
Sergey Sharybin [Fri, 15 May 2015 07:12:10 +0000 (12:12 +0500)]
Cycles: Pass device compute capabilities to kernel via build options

This way it's possible to do device-selective feature disabling/enabling.
Currently only supported for NVidia devices via OpenCL extension.

6 years agoOpenCL wrangler: Add some of the extension defines
Sergey Sharybin [Fri, 15 May 2015 07:05:28 +0000 (12:05 +0500)]
OpenCL wrangler: Add some of the extension defines

6 years agoCycles: Cleanup, move build options string calculation into the device class
Sergey Sharybin [Fri, 15 May 2015 07:03:08 +0000 (12:03 +0500)]
Cycles: Cleanup, move build options string calculation into the device class

This way it's easier to access platform name, device ID and other stuff which
might be needed to define build options.

6 years agoFix T42510: Limit by seams fails in edge/vert mode
Campbell Barton [Fri, 15 May 2015 07:08:27 +0000 (17:08 +1000)]
Fix T42510: Limit by seams fails in edge/vert mode

6 years agoBMesh: add loop-shell walker
Campbell Barton [Fri, 15 May 2015 07:07:57 +0000 (17:07 +1000)]
BMesh: add loop-shell walker

6 years agoCorrect recent cleanup
Campbell Barton [Fri, 15 May 2015 01:29:34 +0000 (11:29 +1000)]
Correct recent cleanup

Removed call which was still needed