Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-12-12Cleanup: use colon separator after parameterCampbell Barton
Helps separate variable names from descriptive text. Was already used in some parts of the code, double space and dashes were used elsewhere.
2018-11-30Cleanup: name macros w/ matching BEGIN/ENDCampbell Barton
2018-11-14Cleanup: comment block tabsCampbell Barton
2018-10-24Fix (unreported) bad halding of ID usercounts when fully copying a scene.Bastien Montagne
2018-07-30Use Ctrl Snap to seconds w/ play-head dragCampbell Barton
D3056 by @alourenco
2018-06-17Cleanup: trailing space for blenkernelCampbell Barton
2018-06-13Cleanup: get rid of last G.main in BMesh code.Bastien Montagne
2018-06-12Cleanup: BKE_scene_free should not have to worry about cleaning its usages.Bastien Montagne
This is supposed to be handled by calling code! Henceforce, no need to call BKE_sequencer_clear_scene_in_allseqs() here, and... no need for that ugly G.main case. ;)
2018-06-11Cleanup: Moar G.main removal of Hell.Bastien Montagne
This commit actually adds some G.main... but at much, much higher level than the ones it removes, so should still be better ;)
2018-06-05Cleanup: use new accessors to blendfile path (Main.name).Bastien Montagne
2018-06-01Cleanup: trailing whitespace (comment blocks)Campbell Barton
Strip unindented comment blocks - mainly headers to avoid conflicts.
2018-05-31Cleanup: get rid of last G.main usages in BKE library code.Bastien Montagne
2018-05-11Fix (unreported) broken freeing code for Sequencer.Bastien Montagne
Freeing sequencer would always do usercount, which is now forbidden when called from main ID freeing code. Annoying in 2.7x, much more critical issue in 2.8! Also, moved RNA sequencer API functions to proper rna_scene_api.c file.
2018-03-20Remove debug only code from previous commitSergey Sharybin
2018-03-20Memory allocator: Clarify consistency check functionSergey Sharybin
Also make it to return truth when everything is good and false otherwise.
2018-02-28De-duplicate tool settings copy and make tool settings freeing reusableSergey Sharybin
2018-02-21Depsgraph: Split debug flagsSergey Sharybin
Now it's possible to have debug messages for following things: - Graph construction - Graph evaluation - Graph tagging
2018-02-21Depsgraph: Fix crash using --debug-depsgraph and --debug-depsgraph-no-threadsSergey Sharybin
Was accessing past the array boundaries. Should be safe for 2.79a.
2018-02-19Fix T54098: Crash existing /w dyntopo sculptCampbell Barton
Optionally don't remap indices for objects. Checking all objects parent's would reference a freed pointer while freeing all objects. In the case of dynamic topology there is no use in keeping track of hook/vertex-parent indices. Also disable this when creating meshes for undo storage since adding an undo step shouldn't be modifying other objects.
2018-01-18Fix T53808: VSE doesn't show scene strip markersCampbell Barton
2018-01-18Fix weight particle brush versioningCampbell Barton
2018-01-16Cleanup: Naming of depsgraphSergey Sharybin
2017-12-15Move ID recalc flags into dedicated field in IDSergey Sharybin
Currently this is a no-visible-changes change, but the idea is to use this dedicated flag to tell which exact components of ID changed, make it more granular than just OBJECT and OBJECT_DATA. Allow setting this field based on what components new dependency graph flushed on evaluation.
2017-10-19Add note about handling of root nodetree in ID copydata.Bastien Montagne
OUr beloved root nodetrees... Had to check again the code to undersand why we copy them with bmain even though they are not in bmain, so this is worth a comment. ;)
2017-10-12Fix T53052: ID decrement error when deleting a scene, either python or GUI.Bastien Montagne
User count of scenes was inconsistant, screens only have 'user_one' kind of owning over scenes, which means they shall never increment or decrement their real user count. And usually, scenes have no real user at all.
2017-10-06Cleanup: styleCampbell Barton
2017-09-27Vertex/Weight Paint: Use PBVH for paintingCampbell Barton
2016 GSOC project by @nathanvollmer, see D2150 - Mirrored painting and radial symmetry, like in sculpt mode. - Volume based splash prevention, which avoids painting vertices far away from the 3D brush location. - Normal based splash prevention, which avoids painting vertices with normals opposite the normal at the 3D brush location. - Blur mode now uses a nearest neighbor average. - Average mode, which averages the color/weight of the vertices within the brush - Smudge mode, which pulls the colors/weights along the direction of the brush - RGB^2 color blending, which gives a more accurate blend between two colors - multithreading support. (PBVH leaves are painted in parallel.) - Foreground/background color picker in vertex paint
2017-09-23Remove remaining qtcodecdataAaron Carlisle
This fixes a mistake in rBefd5e3c25401b43cbd7f909418835bb570db1ab3
2017-09-22Remove quicktime supportAaron Carlisle
It has been deprecated since at least macOS 10.9 and fully removed in 10.12. I am unsure if we should remove it only in 2.8. But you cannot build blender with it supported when using a modern xcode version anyway so I would tend towards just removing it also for 2.79 if that ever happens. Reviewers: mont29, dfelinto, juicyfruit, brecht Reviewed By: mont29, brecht Subscribers: Blendify, brecht Maniphest Tasks: T52807 Differential Revision: https://developer.blender.org/D2333
2017-09-14Fix T52749: New Depsgraph - Render View Mask is not initialized correctlySergey Sharybin
2017-08-15Cycles/BI: Add a pixel size option for speeding up viewport renderingLukas Stockner
This patch adds "Pixel Size" to the performance options, which allows to render in a smaller resolution, which is especially useful for displays with high DPI. Reviewers: Severin, dingto, sergey, brecht Reviewed By: brecht Subscribers: Severin, venomgfx, eyecandy, brecht Differential Revision: https://developer.blender.org/D1619
2017-08-11iFix T52050: Empty VSE preview for scene strips with OpenGL preview + ↵Bastien Montagne
Rendered settings. 'OpenGL Preview' checkbox was redundant now, just use seq_prev_type value only. Might be OK for 2.79, but should be double-checked first...
2017-08-07Refactor ID copying (and to some extent, ID freeing).Bastien Montagne
This will allow much finer controll over how we copy data-blocks, from full copy in Main database, to "lighter" ones (out of Main, inside an already allocated datablock, etc.). This commit also transfers a llot of what was previously handled by per-ID-type custom code to generic ID handling code in BKE_library. Hopefully will avoid in future inconsistencies and missing bits we had all over the codebase in the past. It also adds missing copying handling for a few types, most notably Scene (which where using a fully customized handling previously). Note that the type of allocation used during copying (regular in Main, allocated but outside of Main, or not allocated by ID handling code at all) is stored in ID's, which allows to handle them correctly when freeing. This needs to be taken care of with caution when doing 'weird' unusual things with ID copying and/or allocation! As a final note, while rather noisy, this commit will hopefully not break too much existing branches, old 'API' has been kept for the main part, as a wrapper around new code. Cleaning it up will happen later. Design task : T51804 Phab Diff: D2714
2017-07-10Fix (unreported) broken uvsculpt in Scene's toolsettings' copying.Bastien Montagne
This was serious bug actually, probably a crasher in case you free original or copy after duplication...
2017-07-10Fix (unreported) Scene's copying toolsettings' clone and canvas, and ↵Bastien Montagne
particles' scene and object pointers. imapaint's clone and canvas are refcounting Image usages. And particle's editsettings' object and scene seem to be pure runtime data (they are reset to NULL in readcode), so resetting them to NULL here as well.
2017-07-10Fix strict compiler warningSergey Sharybin
2017-07-10Fix (unreported) Scene copying doing very stupid things with World and ↵Bastien Montagne
LineStyle usercounts. Really, really, really need to get rid of this usercount handling everywhere, hopefully incomming ID copying rewrite will help sanitize that mess. But fix was needed for 2.79 release!
2017-06-02Cleanup: styleCampbell Barton
2017-05-04Fix use after free of new render layer ID properites after copying sceneSergey Sharybin
2017-05-04Fix memory leak of ID properties after recent render passes commitSergey Sharybin
2017-05-03Render API/Cycles: Identify Render Passes by their name instead of a type flagLukas Stockner
Previously, every RenderPass would have a bitfield that specified its type. That limits the number of passes to 32, which was reached a while ago. However, most of the code already supported arbitrary RenderPasses since they were also used to store Multilayer EXR images. Therefore, this commit completely removes the passflag from RenderPass and changes all code to use the unique pass name for identification. Since Blender Internal relies on hardcoded passes and to preserve compatibility, 32 pass names are reserved for the old hardcoded passes. To support these arbitrary passes, the Render Result compositor node now adds dynamic sockets. For compatibility, the old hardcoded sockets are always stored and just hidden when the corresponding pass isn't available. To use these changes, the Render Engine API now includes a function that allows render engines to add arbitrary passes to the render result. To be able to add options for these passes, addons can now add their own properties to SceneRenderLayers. To keep the compositor input node updated, render engine plugins have to implement a callback that registers all the passes that will be generated. From a user perspective, nothing should change with this commit. Differential Revision: https://developer.blender.org/D2443 Differential Revision: https://developer.blender.org/D2444
2017-03-07Task scheduler: Remove per-pool threads limitSergey Sharybin
This feature was adding extra complexity to task scheduling which required yet extra variables to be worried about to be modified in atomic manner, which resulted in following issues: - More complex code to maintain, which increases risks of something going wrong when we modify the code. - Extra barriers and/or locks during task scheduling, which causes extra threading overhead. - Unable to use some other implementation (such as TBB) even for the comparison tests. Notes about other changes. There are two places where we really had to use that limit. One of them is the single threaded dependency graph. This will now construct a single-threaded scheduler at evaluation time. This shouldn't be a problem because it only happens when using debugging command line arguments and the code simply don't run in regular Blender operation. The code seems a bit duplicated here across old and new depsgraph, but think it's OK since the old depsgraph is already gone in 2.8 branch and i don't see where else we might want to use such a single-threaded scheduler. When/if we'll want to do so, we can move it to a centralized single-threaded scheduler in threads.c. OpenGL render was a bit more tricky to port, but basically we are using conditional variables to wait background thread to do all the job.
2017-03-01Task scheduler: Remove query for the pool's number of threadsSergey Sharybin
Not really happy of per-pool threads limit, need to find better approach to that. But at least it's possible to get rid of half of the nastyness here by removing getter which was only used in an assert statement. That piece of code was already well-tested and this code becomes obsolete in the new depsgraph and does no longer exists in blender 2.8 branch.
2017-01-26Fix unfreed memory after cleaning render layersDalai Felinto
The freestyle data was never freed when removing a renderlayer. ``` blender -b --factory-startup --debug-memory --python-expr "import bpy;bpy.ops.scene.render_layer_add();bpy.context.scene.render.layers.active_index=0;bpy.ops.scene.render_layer_remove()" ```
2017-01-18GP Interpolate Sequence: Tool settings for controlling the shape of ↵Joshua Leung
interpolation This commit introduces the ability to use the Robert Penner easing equations or a Custom Curve to control the way that the "Interpolate Sequence" operator interpolates between keyframes. Previously, it was only possible to get linear interpolation between the gp frames. Workflow: 1) Place current frame between a pair of GP keyframes 2) Open the "Interpolate" panel in the Toolshelf 3) Choose the interpolation type (under "Sequence Options") 4) Adjust settings (e.g. if you're using "Custom Curve", use the curvemap widget to define the way that the interpolation proceeds) 5) Click "Sequence" to interpolate 6) Play back/scrub the animation to see if you've got the result you want 7) If you need to make some tweaks, undo, or delete the generated keyframes, then repeat the process again from step 4 until you've got the desired result.
2017-01-16Cleanup/refactor: Add new BLI_string_util.Bastien Montagne
Things like `BLI_uniquename` had nothing, but really nothing to do in BLI_path_util files! Also, got rid of length limitation in `BLI_uniquename_cb`, we can use alloca here to avoid overhead of malloc while keeping free size (within reasonable limits of course).
2016-12-12Cleanup: Get rid of ntreeSwitchID(_ex) functions, use generic ↵Bastien Montagne
BKE_libblock_relink_ex instead.
2016-11-30Cleanup id->newid usage, initial work.Bastien Montagne
This aims at always ensuring that ID.newid (and relevant LIB_TAG_NEW) stay in clean (i.e. cleared) state by default. To achieve this, instead of clearing after all id copy call (would be horribly noisy, and bad for performances), we try to completely remove the setting of id->newid by default when copying a new ID. This implies that areas actually needing that info (mainly, object editing area (make single user...) and make local area) have to ensure they set it themselves as needed. This is far from simple change, many complex code paths to consider, so will need some serious testing. :/
2016-10-11Make console message more clear for --scene argumentSergey Sharybin
2016-09-26Fix Scene datablocks being created with a real user while never having any ↵Bastien Montagne
real datablock user. Now using new system dedicated to that kind of cases, id_ensure_real_user(), instead. That way, usercount of Scenes is handled correctly at deletion time. Reported by @sergey over IRC, thanks.