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
path: root/source
AgeCommit message (Collapse)Author
2016-06-16Use a Scope concept for avoiding codegen for existing nodes.Lukas Tönne
Rather than a single socket value map, use a "scope" to keep track of which nodes are already generated. This reintroduces the "block" idea from earlier versions, but at the later codegen stage rather than the node graph. Describing scope on the level of nodes becomes quite clumsy and ambiguous, and moves nodes further away from the UI representation. The compiler can handle this more elegantly without requiring persistent data. Scopes can be nested. This is not used yet, but will allow scoped variables later on, where the variables being used for a node path depend on its scope.
2016-06-12Removed/Disabled some deprecated code.Lukas Tönne
2016-06-10Disabled compiling and eval of broken BVM functions, to simplify debugging ↵Lukas Tönne
until they can be reimplemented.
2016-06-09Use persistent pass managers for optimization, rather than creating them ↵Lukas Tönne
every time.
2016-06-09Set a target triple and data layout for modules.Lukas Tönne
According to the site below, this is necessary for proper optimization. http://llvm.org/docs/Frontend/PerformanceTips.html
2016-06-09Generalized code generation for nodes to support more complex control flow ↵Lukas Tönne
in the future. The basic idea is that a node represents a function F, without assuming anything about how the input expressions are evaluated: F = F() In most common case this function can be decomposed and defined in terms of concrete values, which are given by the input expressions: F = F'(G1(), G2(), ...), where Gn are the respective inputs of the node This is a first *very* naive implementation. It would rely heavily on common-subexpression- elimination (CSE) to avoid generating the same code paths over and over again. There should probably be some initial optimization on the BVM node level instead of relying just on LLVM passes. The purpose of this generalization is to allow more complicated control flow inside node functions. Nodes would then also be able to take additional variable arguments (e.g. an index), which can be modified before being used as internal arguments for input expressions.
2016-06-08Merge branch 'master' into object_nodesLukas Tönne
2016-06-08Basic Gabor noise implementation for BLI_noise and blenvm.Lukas Tönne
This is just the very basic version of the sparse convolution noise with a Gabor kernel. It does not yet have derivatives or anisotropic filtering. The only frequency spectrum implemented atm is isotropic band-limited noise.
2016-06-08Correct assertCampbell Barton
2016-06-08GPU: fix/workaround basic shader font-colorCampbell Barton
All text was displaying black. BLF uses alpha-only textures which aren't supported by the basic-shader, Workaround this by using texture swizzle so the RGB components of the texture are set to 1.
2016-06-08Cleanup: Add comment on behavior of tweak eventsJulian Eisel
It's not obvious that they use the mouse coordinate of the initial key-press event (behavior since rBf1f33ba7be2d), so added comment. Also corrected other comments.
2016-06-07Fix T48600: VSE strip 'side selection' fails in 'Both' case.Bastien Montagne
Looks like a line was forgotten in the 'BOTH' case in code...
2016-06-07Cleanup - size_t is unsigned, so always >= 0!Bastien Montagne
2016-06-07GPU: Fix triple buffer w/ basic glsl shaderCampbell Barton
Needed to add GL_TEXTURE_RECTANGLE support to basic-shader.
2016-06-07GPU: Fix for glDrawPixels drawing w/ glsl shaderCampbell Barton
The basic shader needs to be temporarily disabled in this case. Add macros for temp store/restoring the state.
2016-06-07GPU: make using the glsl basic-shader a flagCampbell Barton
This allows for it to be more easily tested.
2016-06-07Fix T48589: Compositor Backdrop crashes BlenderSergey Sharybin
2016-06-07Fix (unreported) EditNormal modifier: broken 'flip poly' feature.Bastien Montagne
Newly computed custom normals were forgotten during poly flipping, leading to wrong custom normals being assigned to wrong loop... Dead simple, but was tough to track down this one!
2016-06-07Cleanup: warningCampbell Barton
2016-06-07World space switch for BI nodes.Alexander Romanov
At the moment light shading in Blender is produced in viewspace. Apparently, that's why shader nodes work with normals in camera space. But it is not convenient for artists. The more convenient approach is implemented in Cycles where normals are represented in world space. Blend4Web Team designed the engine keeping in mind shader parameters readability, so normals are interpreted in world space as well. And now our users have to use some tweaks, like empty node group with the name "Replace", which is replacing one input by another on the engine side (replacing working configuration in Blender Viewport by the configuration that has the same behavior in the engine). This patch adds the ability to switch to world space for normals and lamp vector in BI and Viewport. This patch is very important to us and we crave to see this patch in Blender 2.7 because it will significantly simplify Blend4Web material creation workflow. {F315547} {F315548} Reviewers: campbellbarton, brecht Reviewed By: brecht Subscribers: homyachetser, Evgeny_Rodygin, AlexKowel, yurikovelenov Differential Revision: https://developer.blender.org/D2046
2016-06-07readfile: optimization for undoCampbell Barton
Was using O(n^2) lookup on ID's with undo. This caused undo to hang with 1000's of data-blocks (especially with heavy scenes & outliner-space, which doesn't even need to be visible to cause a slow-down). Internally this uses a ghash per id-type, which is lazy-initialized. Each key uses the name and library since there may be name collisions between libraries. Developer Notes: - Adds small `BKE_main_idmap_*` API. - Needed to change linking order for this to build.
2016-06-07BLO_idcode: Move ID_ID lastCampbell Barton
This lets us use MAX_LIBARRAY to loop over id-codes in Main.
2016-06-07readfile: avoid library lookups for every id on undoCampbell Barton
Instead index libraries, makes minor speedup when using many libraries.
2016-06-06EditNormal modifier: add some 'maximum angle' limit.Bastien Montagne
Allows to avoid generating flipped faces when using extreme normal modifications. Related to T48576.
2016-06-06Added P key toggle to allow mouse movement to control bevel profile (modal).Howard Trickey
The Shift key can be held while adjusting profile to make finer changes to the profile (just as it already does when adjusting offset).
2016-06-06Cleanup: remove unused Library.idblockCampbell Barton
2016-06-06Cleanup: warningCampbell Barton
2016-06-06Fix T48582: Rigidbody simulation issue with new depsgraphSergey Sharybin
Being granular means we need to re-build depsgraph a bit more often.. The issue was caused by rigidbody requiring some special nodes to handle physics which were not created with just tagging object for update.
2016-06-06Fix T48550: Imperfections when Bake displacement map to plane if camera is ↵Sergey Sharybin
not in front The issue was caused by non-watertight nature of intersection, which is now addressed. Hopefully it doesn't cause any regression caused by uninitialized precalculated storage.
2016-06-06Depsgraph: Russian electric tape bodge to have multiple proxies workSergey Sharybin
Makes behavior of proxy_from backlink working similar to the old dependency graph. it's nasty, but needed here in the studio to get proxies fixes ASAP.
2016-06-06readfile: add assert to check libmap isn't sortedCampbell Barton
2016-06-06readfile: minor optimization, no need to count flagsCampbell Barton
in this case we only need to check if any id's need to be read.
2016-06-06Cleanup: use const for old member in OldNew structCampbell Barton
2016-06-06Cleanup: rename flag -> tagCampbell Barton
ID's have a flag member too, best avoid confusion here.
2016-06-06RNA: disable animating object dimensionsCampbell Barton
2016-06-04CMake, minor changes to make Visual studio 2015 use a compatible numpy andMartijn Berger
the standard cmake CUDA/NVCC arguments flag allowing 2015 build to use msvc 2013 for cuda
2016-06-04Cleanup: avoid temp string editCampbell Barton
2016-06-03changed use_connect from bool to a 3 state value (-1,0,1)Gaia Clary
2016-06-03fix T48389 (wip) added warning for loops that define holes (polygons with ↵Gaia Clary
holes not supported)
2016-06-03Workaround MSVC errorCampbell Barton
2016-06-03Fix T48234: Glitch w/ action constraints sharing an actionCampbell Barton
FCurve evaluation depended on FCurve.curval, which isn't threadsafe. Now only use this value for debug display, and pass the value instead of storing in the FCurve for all but debug-display.
2016-06-03Fix PlayercompileJens Verwiebe
2016-06-03Make playback invoked form animation editors more usableSergey Sharybin
This covers the following workflow. Animator will disable Update All 3D views in order to get quick playback in a particular 3D editor. However, it also handy to see playback in all editors and image editors to see comparison of animation and reference footage. So the idea here is to refresh reasonable editors when playback is invoked from animation editors. Commit to make Hjalti happy.
2016-06-03Cleanup & simplify snapping functionsGermano Cavalcante
- the name of the enumerator `SNAP_NOT_OBEDIT` was changed to `SNAP_NOT_ACTIVE`. - the parameter `snap_to_flag` was moved to outside `SnapObjectParams`. - the member `use_object_edit` was renamed to `use_object_edit_cage`. - added the arg `params` in `ED_transform_snap_object_project_ray`. - simplifications in the loop of the function `snapObjectsRay`.
2016-06-03Fix possible uninitialized variable in snappingGermano Cavalcante
Introduced in 0b5a0d84, thanks to Brecht for spotting.
2016-06-03Fix T48111: Auto-run fails w/ empty pathsCampbell Barton
Enabling auto-run, then excluding a path but leaving it set to a blank value would ignore all paths.
2016-06-03Fix T48575: Particle crash using 'Parting' settingCampbell Barton
2016-06-02Support for image sampling in the LLVM backend.Lukas Tönne
This reintroduces the "globals" concept for mapping ID datablocks with a consistent permanent identifier key.
2016-06-02Fix T48456: 2x pixel size clamps min brush sizeCampbell Barton
Using double pixel size prevented 1px brushes D2044 by @jeske
2016-06-02Fix T47637: Multiple multires objects in Sculpt mode make blender crash.Bastien Montagne
That was a nice and funny hunt, albeit rather time consumming! To summarize, so far code was using a static global gpu_buffer for pbvh vbo drawing of 'grid' types (multires mostly?). There were two issues here: 1) Global gpu buffer was assigned to GPU_PBVH_Buffers->index_buf, but then nearly no check was done when freeing that buffer, to ensure we were not freeing the global one (not totally sure this one was actually causing any issue, but was bad and unsafe anyway). Was solved by adding a flag to GPU_PBVH_Buffers to indicate when we are using some 'common' buffer here, which freeing is handled separately. 2) Main issue: if several multires objects in sculpt mode with different grid size were present simultaneously, the global gpu buffer had to be resized for each object draw (i.e., freed and re-allocated), but then the pbvh nodes from other objects storing freed reference to that global buffer had no way to know that it had been freed, which was causing the segfault & crash. Was solved by getting rid of that global buffer, and instead allocating one 'grid_commmon_gpu_buffer' per pbvh. Told ya baby, globals are *PURE EVIL*!