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
2016-04-29Fix T48290: Hook fails after deleting geometryCampbell Barton
Now CD_SHAPEKEY_INDEX customdata is stored in edit-mode when hooks and vertex parents are used. This also fixes a bug where undo would loose key-index data. Move to structs for BM_mesh_bm_to/from_me to avoid passing many argument, which mostly aren't used.
2016-04-28Fix T47715: EXCEPTION_ACCESS_VIOLATION crash when removing modifiers or ↵Sergey Sharybin
rendering The issue was caused by missing indirect dependencies from other scenes in the current scene depsgraph, which was causing some threading conflicts. Not sure what would be ideal solution here, for now use stupid but rather robust approach to solve that. Maybe there's something better to do here tho.
2016-04-283D Text: avoid checking null character's text on pathCampbell Barton
Redundant and causes complications when improving text code.
2016-04-27Sequencer: skip text-effect rendering w/ no alphaCampbell Barton
2016-04-27Sequencer text strip color optionsCampbell Barton
D1930 by @NiKoZLaB
2016-04-27Cleanup: use const, duplicate headerCampbell Barton
2016-04-26Fix T48176: Shrinkwrap crashes when multiple objects uses same targetSergey Sharybin
Annoying bug caused by temp nature of looptri layer for CCGDM. Fixed in a similar to CCG loops by using lock when allocating and filling looptri arrays. Real fix would be to make sure this array is allocated on object evaluation using DAG's eval_flag, but that's more involved change which we'll work on later.
2016-04-26Fix missing pose bone hash table in stub poses of action constraints.Lukas Tönne
This is a follow-up fix for rBa10b2fe. The Action constraint uses a hackish stub object and pose, which doesn't have a hash table for fast lookups. This doesn't seem to be a big issue with the old depsgraph, but in the new depsgraph it creates a large number of cache misses and significant slowdown, possibly because of additional threading and less simple bone loops.
2016-04-26Support multiple tangents for BI render & viewportAlexander Romanov
Normal Map node support for GLSL mode and the internal render (multiple tangents support). The Normal Map node is a useful node which is present in the Cycles render. It makes it possible to use normal mapping without additional material node in a node tree. This patch implements Normal Map node for GLSL mode and the internal render. Previously only the active UV layer was used to calculate tangents.
2016-04-25Refactor BKE_blender into separate headersCampbell Barton
- BKE_blender_version.h (only version defines & versionstr). - BKE_blender_copybuffer.h (currently only used for view3d copy/paste). - BKE_blender_undo.h (global undo functions). - BKE_blendfile.h (high level blend file read/write API).
2016-04-25Cleanup: use boolCampbell Barton
2016-04-25Fix T48263: Armature modifier crash w/ non-armature objectsCampbell Barton
2016-04-22BLF: use float vector passing color argsCampbell Barton
2016-04-22Cleanup: warnings (double promote, string format)Campbell Barton
2016-04-20Fix image-space mask-transform crash w/o an imageCampbell Barton
2016-04-15New freehand curve drawing toolCampbell Barton
- Access with Shift-LMB or from the 'Create' toolbar tab. - Uses curve fitting for bezier curves, with error and corner angle options. - Optional tablet pressure to curve radius mapping. - Depth can use the cursor or optionally draw onto the surface, for the entire stroke or using the stroke start. - Stroke plane can optionally be perpendicular to, or aligned to the surface normal. - Optional radius tapering and for start/end points. - Supports operator redo and calling from Python.
2016-04-15Drivers Editing: Added "Copy/Paste" buttons beside "Add Variable" for ↵Joshua Leung
copying all variables from one driver to another This was a feature request from a few years back (IIRC from ZanQdo?) to make it easier to reuse one set of driver variables across several different drivers. Dev Notes: * Finally it's done! All that trouble for two little buttons. * Grr... cmake... grrr!
2016-04-12Fix T47754: Meshes glitch on cycling Viewport Shading mode with Linked GroupsSergey Sharybin
This is a regression since 4310128 which is cased by really bad logic: there might be dependencies between dupli-objects, which means _if_ we really want to ensure derived mesh on dupli creation we have to do it before any matrix is overwritten. I'm not sure if such derived mesh trick is really the only way to go without major refactor, but seems simple fix for now will do it.
2016-04-09Cleanup a bit particle distribution code.Bastien Montagne
Also do proper intial/final checks to avoid adding particle on zero-weight extreme items, instead of using cheap tricks like 'small offset'...
2016-04-09Fix T47983, Take II: Particles - Emit from Verts emits double on one vert.Bastien Montagne
Previous fix made another issue even more visible, leading to +1 particle on first vert and none on last one. This commit should fix both original and new issues.
2016-04-08Fix T48088: Reproducible crash: Edges + Array Mod + Hair Particles.Bastien Montagne
Code did not consider the possibility to have no face at all! :P
2016-04-06Fix leak w/ missing external mesh customdataCampbell Barton
2016-04-05PyDriver support for all RNA property typesCampbell Barton
Support for driver variables that don't resolve to numbers, eg: objects, bones, curves... etc. Without this, Python expressions to access this data needed to use an absolute path from `bpy.data`, however this is inconvenient, breaks easily (based on naming) and wouldn't set the dependencies correctly.
2016-04-04Cycles: Make curves modified by a taper object with modifier considered a ↵Sergey Sharybin
deform modified That might consider a bit more objects to be considered deform modified, but it covers common case of using taper object without require of doing recursive checks. In worst case it'll be just some extra synchronization time, no render time difference will happen for false-positive because of extra checks happening in Cycles.
2016-04-04Fix curve hide keeping spline activeCampbell Barton
2016-04-02Fix T47971: rigid body baking crash due to thread race condition.Brecht Van Lommel
2016-04-01Cycles: Support deformation motion blur for curves deformed by taperSergey Sharybin
2016-04-01Cleanup: style/spellingCampbell Barton
2016-04-01Generic check for string being a Py keywordCampbell Barton
Driver code used incomplete list of Py keywords
2016-03-30libquery foreach looper: in recursive case, do not bother with NULL id pointers!Bastien Montagne
2016-03-30Fix T47983: Particles - Emit from Verts emits double on one vert.Bastien Montagne
When non-random, particle distribution used a small start offset (to avoid zero-weight faces), which is fine with "continuous" entities like faces, but not for discrete ones like vertices - in that case it was generating some undesired "jump" over a few verts in case step was small enough (i.e. total number of verts/particles was big enough).
2016-03-30Partly fix (unreported) particles not updating correctly when changing settings.Bastien Montagne
Point-cached particles (those using simulations) would not update at all outside of first frame, due to PSYS_RECALC_RESET flag being ingnored in `system_step()`... For some mysterious reasons, udate is still non-fully functional outside of startframe (e.g. changing face distribution between random and jittered), but at least when choosing 'Vertices' you get particles from verts and not faces!
2016-03-30Particles: Fix broken grid distribution in some case from own recent ↵Bastien Montagne
rB201d3938622.
2016-03-29Fix T47814: VSE Scene 'Use Sequence' failsCampbell Barton
Conflict with flags between depsgraph and sequencer caused error. Now pass state of sequencer parents to avoid recursion.
2016-03-29Fix T47961: Wipe effects should have 2 inputsCampbell Barton
2016-03-29Fix T47902: Particle grid not using modifier stack, Take II.Bastien Montagne
Now only fix correct handling of use_modifier_stack for grid distribution, fixing it globally breaks all existing edited hair systems. :/
2016-03-29Revert "Fix T47902: Particle grid not using modifier stack."Bastien Montagne
This reverts commit 2bd3acf7cd27c0c3ee77b10d56b91c3b03226d39. Commit is valid in theory - but in practice, it means nearly all edited hair systems would need to be re-created from scratch... Not nice, so better revert and note in code that particle distribution is ugly and does not respect 'use modifier stack' option in most cases.
2016-03-28Fix T47972: Blender crash showing particle system.Bastien Montagne
Do same as with faces - if no orcodata is available, fill orco with current location...
2016-03-28Fix T47973: Render stamp ignores font alphaCampbell Barton
2016-03-26Fix T47935: Hair particles; The display percentage parameter breaks after a ↵Bastien Montagne
render is done. Follow same logic in `psys_render_restore` as in `psys_render_set` - if hair and display percentage is not 100%, we have to recompute particles... With regular 'emitter' particles just hiding some is fine (though using random here will not give a precise proportion...).
2016-03-26Fix own regression in rBc08924bf94f2dff - foreach ID looper was broken due ↵Bastien Montagne
to missing initialization. Quite unbelievable this could slip in... tons of shame on me :/
2016-03-26Driver Variable Name Validation: Added missing check for zero-length (i.e. ↵Joshua Leung
"blank") names
2016-03-26Fix T47902: Particle grid not using modifier stack.Bastien Montagne
Disclaimer: this is tentative fix, seems to be working but you never know with particles. If issue arise, we'll just revert this commit and hide 'use modifier stack' option for grid distribution instead. This commit also try to make choice of which dm to use during distribution more generic (deduplication of code), again hopping not to break anything. :P
2016-03-24Rework library_query foreach looper - add optional recursivity.Bastien Montagne
This commit: * Fixes bad handling of 'stop iteration' (by adding a status flag, so that we can actually stop in helper functions too, and jumping to a finalize label instead of raw return, to allow propper clean up). * Adds optional recursion into 'ID tree' - callback can also decide to exclude current id_pp from recursion. Note that this implies 'readonly', modifying IDs while recursing is not something we want to support! * Changes callback signature/expected behavior: return behavior is now handled through flags, and 'parent' ID of id_pp is also passed (since it may not always be root id anymore). Reviewers: sergey, campbellbarton Differential Revision: https://developer.blender.org/D1869
2016-03-24Cleanup: use prefix for return argsCampbell Barton
2016-03-24Driver Keyframing: Some tweaks to make inserting keyframes on Driver ↵Joshua Leung
F-Curves easier Now, when trying to insert a keyframe on a driven property (using IKEY, or with autokeying enabled), the keyframes will get created on the Driver's F-Curve (instead of creating a new FCurve that goes into the active action, but will never do anything). Furthermore, the x-value of the new keyframe will be the current result of the driver expression. Why/Motivations: This way, it becomes easier to create corrective drivers, as you can position all the targets the driver depends on, then adjust the driver value until it does what you need, and then you keyframe that value to bake it into the Driver F-Curve (in effect, "training" the computer how to behave in that case). Usage Notes: * In practice, that particular workflow is still quite clunky to achieve, due to some quirks of how the driver system and the UI widgets interact. Specifically, you'll need to disable/mute the driver before trying to edit the setting (to prevent the driver from immediately resetting the value - before even autokey fires!). However, if you're using the Graph Editor to preview/monitor/manage the keying process, you'll then want to re-enable the driver before changing the targets, so that you can see how much of a change you'll want to be applying! * The warning about editing driver values may need to be disabled or selectively knocked out. I had it disabled while testing this functionality, but it's actually harmless in its current state (if just a bit annoying).
2016-03-24Fix T47900: VSE adjustment crashes on blank frameCampbell Barton
Regression, should have been included in previous fix.
2016-03-24Fix dodgy indentationJoshua Leung
2016-03-24Drivers UI: Added name validation/linting for Driver VariablesJoshua Leung
When attempting to change a driver variable name to an "invalid" name, an indicator will now be shown beside the offending variable name. Clicking on this icon will show a popup which provides more information about why the variable name cannot be used. Reasons that it knows about are: 1) Starts with number 2) Has a dot 3) Has a space 4) Starts with or contains a special character 5) Starts with an underscore (Python does allow this, but it's bad practice, and makes checking security of drivers harder) 6) Is a reserved Python keyword
2016-03-23Fix T47900: VSE adjustment crashes on blank frameCampbell Barton