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
2012-09-04code cleanup: move file string defines into BLI_path_utils.h, ↵Campbell Barton
BKE_utildefines is now unused but keep incase we want to add defines there later.
2012-08-18style cleanup: also correct some doxy commentsCampbell Barton
2012-08-12replace ELEM8(gs, ID_ME, ID_CU, ID_MB, ID_LT, ID_LA, ID_CA, ID_TXT, ID_SPK) ↵Campbell Barton
with macro: OB_DATA_SUPPORT_ID()
2012-08-03fix/edits to vector font handlingCampbell Barton
- don't overwrite the font path with "<builtin>" when the font file cant be found, it caused bad problems when loading files on someone elses systems when paths couldn't be found blender would silently clobber paths (tsk tsk). - when fonts are freed their temp data is now freed too. - assigning a new filepath to a font now refreshes the object data.
2012-07-22Bugfix [#32017] Infinite recursion in depsgraph material/node driver handlingJoshua Leung
When initially coding this functionality, I was aware of the potential for infinite recursion here, just not how frequently such setups are actually used/created out in the wild (nodetree.ma_node -> ma -> ma.nodetree is all too common, and often even with several levels of indirection!). However, the best fix for these problems was not immediately clear. Alternatives considered included... 1) checking for common recursive cases. This was the solution employed for one of the early patches committed to try and get around this. However, it's all too easy to defeat these measures (with all the possible combinations of indirection node groups bring). 2) arbitrarily restricting recursion to only go down 2/3 levels? Has the risk of missing some deeply chained/nested drivers, but at least we're guaranteed to not get too bad. (Plus, who creates such setups anyway ;) *3) using the generic LIB_DOIT flag (check for tagged items and not recurse down there). Not as future-proof if some new code suddenly decides to start adding these tags to materials along the way, but is easiest to add, and should be flexible enough to catch most cases, since we only care that at some point those drivers will be evaluated if they're attached to stuff we're interested in. 4) introducing a separate flag for Materials indicating they've been checked already. Similar to 3) and solves the future-proofing, but this leads to... 5) why bother with remembering to clear flags before traversing for drivers to evaluate, when they should be tagged for evaluation like everything else? Downside - requires depsgraph refactor so that we can actually track the fact that there are dependencies to/from the material datablock, and not just to the object using said material. (i.e. Currently infeasible)
2012-07-12Fix for metaballs used as dupli-object for particleSergey Sharybin
It used to be a dependency cycle which lead to incorrect or missed tesselation on some circumstances. Seems to be introduced in rev41627. This commit seems to behaving properly on simple cases, probably could fail in some other cases, so need to be checked further. Discovered when was looking into: #32034: Metaball used as render object(group) for particle will display wire only.
2012-07-11Style cleanupSergey Sharybin
2012-07-08style cleanupCampbell Barton
2012-07-07style cleanup: use c style comments in C codeCampbell Barton
2012-07-06Fix for bug 32017.Chris Want
There was some bad recursion introduced recently that caused crashes when a Material node is the same material as the material itself (e.g., if Material.001 has a node with Material.001). This commit attempt to correct this by keeping track of the material at the root of the node tree, and doesn't recurse further if it encounters it again within the nodetree. Joshua, please review!
2012-07-04Bugfix Smoke / DynamicPaint: Missing update call from depsgraph was missing ↵Daniel Genrich
when force fields were used.
2012-07-03More spell and typo fixes (mostly visualise->visualize, grey->gray, ↵Bastien Montagne
normalise->normalize).
2012-07-03Check for nullpointers.Jeroen Bakker
The ID of group nodes are not always filled.
2012-07-03Bugfix: Fix crashes with empty material slotsJoshua Leung
2012-07-03Followup for r.48515Joshua Leung
* Removed material driver creation hack. However, the textures one remains, as texture eval isn't ready yet * Shuffled some code
2012-07-03Bugfix [#31834] Cycles materials cannot be manipulated using driversJoshua Leung
Until now, there was never any code for making drivers on materials get recalculated when their dependencies were changed. However, since changing material colors with drivers is something that is quite common, a workaround was introduced to ensure that materials could still be driven (albeit with the relevant drivers rooted at object level). This worked well enough so far with traditional materials - though it was sometimes clunky and confusing for some users - and would have been ok to tide us over until the depsgraph refactor. The introduction of Cycles changed this, as it has in many other ways. Now that people use Cycles to render, they'll need to drive the material colors through the nested nodetree (and other things nested deeply within that). However, this is much more difficult to generate hacks to create the relevant paths needed to work around the problem. == This Commit... == * Adds a recursive driver calculation step to the BKE_object_handle_update() (which gets called whenever the depsgraph has finished tagging object datablocks for updates), which goes through calculating the drivers attached to the object (and the materials/nodetrees attached to that). This case gets handled everytime the object is tagged as needing updates to its "data" (OB_RECALC_DATA) * When building the depsgraph, every dependency that the drivers there have are treated as if they were attached to object.data instead. This should trick the depsgraph into tagging OB_RECALC_DATA to force recalculation of drivers, at the expense perhaps of modifiers getting recalculated again. == Todo == * The old workarounds noted are still in place (will be commented out in the next commit). This fix renders at least the material case redundant, although the textures case still needs a bit more work. * Check on whether similar hacks can be done for other datablock combinations * So far, only simple test cases have been tested. There is probably some performance penalty for heavy setups still (due to need to traverse down all parts of material/node hierarchy to find things that need updates). If there really is a problem here, we could try introducing some tags to limit this traversal (which get added at depsgraph build time). <--- USER TESTING NEEDED!!!
2012-06-06recalc animated mask deformations on load.Campbell Barton
2012-06-04mask mode for clip editor developed by Sergey Sharybin, Pete Larabell and ↵Campbell Barton
myself. see: http://wiki.blender.org/index.php/User:Nazg-gul/MaskEditor note - mask editing tools need continued development, feather option is not working 100%
2012-05-27style cleanupCampbell Barton
2012-05-19code cleanup: use TRUE/FALSE rather then 1/0 for better readability, also ↵Campbell Barton
replace do prefix with do_ for bool vars.
2012-05-18style cleanup: function definitionsCampbell Barton
2012-05-17style cleanup: block commentsCampbell Barton
2012-05-16Code cleanup: simplify standard GHash creation.Nicholas Bishop
Added four new functions as shortcuts to creating GHashes that use the standard ptr/str/int/pair hash and compare functions. GHash *BLI_ghash_ptr_new(const char *info); GHash *BLI_ghash_str_new(const char *info); GHash *BLI_ghash_int_new(const char *info); GHash *BLI_ghash_pair_new(const char *info); Replaced almost all occurrences of BLI_ghash_new() with one of the above functions.
2012-05-12style cleanup: blenkernelCampbell Barton
2012-05-07Style cleanup: rename BKE_metaball* to BKE_mball -- mball is more commonly ↵Sergey Sharybin
used term in Blender
2012-05-06style cleanup: blenkernelCampbell Barton
2012-05-05code cleanup: naming - pose/armature/image Campbell Barton
also use ..._find_name(..., name) rather then ..._find_named(..., name) --- both were used.
2012-05-05code cleanup: function naming, use BKE_*type* prefix.Campbell Barton
2012-05-04Camera tracking: switch dopesheet information to lazy calculationSergey Sharybin
All operators which changes tracking data now just tags dopsheet as outdated, actual re-calculaiton of happens only when this information is actually needed (like on dopesheet draw). This makes things a bit faster when there's no dopesheet visible in current screen and also makes it much easier to update dopesheet using dependency graph. Also renamed dopesheet_sort_order to dopesheet_sort_method in rna and internal stuff which makes much more sense and also correlated with naming in file browser.
2012-04-29style cleanup: function calls & whitespace.Campbell Barton
2012-04-29style cleanup: whitespace / commasCampbell Barton
2012-04-28Code and style cleanup in own modules in BKE and also mball moduleSergey Sharybin
- Make sure functions are named in way BKE_<object>_<action> (same way as RNA callbacks) - Make functions which are used by mball.c only static and remove their prototypes from public header file. Further cleanup is coming.
2012-04-28style cleanup: changes to brace placement / newlines - for/while/if/switchCampbell Barton
2012-04-23code cleanup: comment unused functions (removed one which isnt useful anymore).Campbell Barton
2012-04-22style cleanup: commentsCampbell Barton
2012-04-21style cleanupCampbell Barton
2012-04-15code cleanup: dont include BLI_winstuff.h on non windows systems, also ↵Campbell Barton
cleanup some defines/includes for windows.
2012-04-12fix [#30907] Inset tool with Select Outer disabled does not allow ↵Campbell Barton
translation of new faces inset with select-inner faces gave invalid selection. also correct spelling in some comments.
2012-03-31move debug flag into its own global var (G.debug), split up debug options.Campbell Barton
--debug --debug-ffmpeg --debug-python --debug-events --debug-wm This makes debug output easier to read - event debug prints would flood output too much before. For convenience: --debug-all turns all debug flags on (works as --debug did before). also removed some redundant whitespace in debug prints and prefix some prints with __func__ to give some context.
2012-03-27fix [#30651] bpy.ops.object.mode_set(...) editmode removes faces.Campbell Barton
problem was that BMesh had tessellation call when undo pushes were called. if python called an operator with no undo push, tessfaces would not be created. fix this by making it the responsibility of each editmesh operator to re-tessellate, as it is with notifiers and depsgraph. added EDBM_update_generic() function to add notifier, tag for depsgraph update and optionally re-tessellate.
2012-03-24style cleanup: follow style guide for/with/if spacingCampbell Barton
2012-03-24style cleanup: follow style guide for formatting of if/for/while loops, and ↵Campbell Barton
else if's
2012-03-09style cleanup: comment blocksCampbell Barton
2012-03-09style cleanup: spelling.Campbell Barton
also remove large, duplicate comments from sunsky.h
2012-03-06quiet some warnings and fix build error with strict casting rules.Campbell Barton
2012-03-06Fixed typo in tracking-related tweaks for depsgraph resulting with crashSergey Sharybin
in special cases (like setting camera's constraint clip if scene's clip is not set)
2012-03-01Spelling CleanupCampbell Barton
2012-02-27style cleanup (mostly whitespace)Campbell Barton
2012-02-21Fix part of #30272: cycles preview render not updating when changing particleBrecht Van Lommel
emission from with instanced objects.
2012-02-07Fix #30094: Subdivision Surfaces Modifier corrupts Copy LocationSergey Sharybin
Issue was caused because of missed MDeformVert layer on subdivided cube. If regular object is constrained to mesh object, extra customdata mask is adding to such target. But armature bones are handling separately and there was no such thing happens. Ideally this code should be deduplicated to avoid such kind of issues, but better not to do it so close before release.