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-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-05Fix UV-Editor crashes w/ over SHRT_MAX UV'sCampbell 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
2016-03-22Cleanup: styleCampbell Barton
2016-03-22Mesh API: add BKE_mesh_vert_edge_vert_map_createCampbell Barton
Handy when you need to reference connected verts directly.
2016-03-19BLI_kdopbvh: Pass center to to range callbackCampbell Barton
Useful when BLI_bvhtree_range_query callback calculates a new position to measure from.
2016-03-15Fix T47577: Movie clip uses too much memory with still image sequencesSergey Sharybin
2016-03-15movieclip: Cleanup around cacheSergey Sharybin
Should be no functional changes.
2016-03-14Better fix for T47787 - remove extra user due to 'user_one' as soon as we ↵Bastien Montagne
increase 'real' user count. This has several benefits: * User count remains coherent, regardless of the order in which you use 'user_one' & real refcounting users (i.e. if you add to group, and then link in scene, or the reverse, you now always get same final user count). * Avoids the need to check for potential 'user_one' extra user in count in several places in code (e.g. when making IDs single users...). * Users won't wonder why they cannot make 'single user' and ID even though its user count shows '2'! * readfile.c now always uses code from BKE's library.c when modifying id->us. Which means we can consider (asside from assignment during initialization) that id->us is read-only outside of library.c context. Note that this commit reverts previous one (rB6b1d77a8052b) - please **do not** backport this one in 2.77.
2016-03-14Support mdisps for Mesh.flip_normals()Campbell Barton
2016-03-14Cleanup: move MDisps flipping to own functionCampbell Barton
2016-03-14Cleanup: style/spellingCampbell Barton
2016-03-13Fix T47773: Particle System with Boids Crash.Bastien Montagne
Problem was, during initialization of boids particles in `dynamics_step()`, psys of target objects was not obtained with generic `psys_get_target_system()` as later in code, which could lead to some uninitialized `psys->tree` usage... Think it's safe enough for 2.77, though not a regression.
2016-03-13Full Inverse-Quadratic-Equation Lamp FalloffJack Andersen
This patch adds a new `falloff_type` ('Inverse Coefficients') for Lamps in Blender-Internal and GLSL. The current falloff modes use a formula like this inverse-square one: `I = E × (D^2 / (D^2 + Q × r^2))` While such a formula is simple for 3D-artists to use, it's algebraically cumbersome to work with. Game-designers authoring their own shaders could benefit much more by having direct control of falloff-coefficients: `I = E × (1.0 / (coefC + coefL × r + coefQ × r^2))` In this mode, the `distance` parameter is unused (except for 'Sphere' mode); instead relying on the designer to mathematically-model the falloff-behavior. The UI has been patched like so: {F153843} Reviewers: brecht, psy-fi Reviewed By: psy-fi Subscribers: brita_, antidote, campbellbarton, psy-fi Differential Revision: https://developer.blender.org/D1194
2016-03-12Increase node max width to 700pxJulian Eisel
Opened and collapsed nodes now have a max width of 700px. Animation nodes add-on needs this.
2016-03-12Fix T47763: 2.77 RC2 (Fluid) Particle Baking slower compared to 2.67b.Bastien Montagne
Static schedule was responsible here... Also, made a minor optimization in case adaptative (auto) subframes are enabled, gives a few percent of speedup here.
2016-03-10Text Editor: Auto indent for backspace/deleteCampbell Barton
Editing with spaces + auto-indent didn't delete indentation as expected.
2016-03-10Multi-View: Cycles - Spherical Stereo support (VR Panoramas)Dalai Felinto
This is a new option for panorama cameras to render stereo that can be used in virtual reality devices The option is available under the camera panel when Multi-View is enabled (Views option in the Render Layers panel) Known limitations: ------------------ * Parallel convergence is not supported (you need to set a convergence distance really high to simulate this effect). * Pivot was not supposed to affect the render but it does, this has to be looked at, but for now set it to CENTER * Derivatives in perspective camera need to be pre-computed or we shuld get rid of kcam->dx/dy (Sergey words, I don't fully grasp the implication shere) * This works in perspective mode and in panorama mode. However, for fully benefit from this effect in perspective mode you need to render a cube map. (there is an addon for this, developed separately, perhaps we could include it in master). * We have no support for "neck distance" at the moment. This is supposed to help with objects at short distances. * We have no support to rotate the "Up Axis" of the stereo plane. Meaning, we hardcode 0,0,1 as UP, and create the stereo pair related to that. (although we could take the camera local UP when rendering panoramas, this wouldn't work for perspective cameras. * We have no support for interocular distance attenuation based on the proximity of the poles (which helps to reduce the pole rotation effect/artifact). THIS NEEDS DOCS - both in 2.78 release log and the Blender manual. Meanwhile you can read about it here: http://code.blender.org/2015/03/1451 This patch specifically dates from March 2015, as you can see in the code.blender.org post. Many thanks to all the reviewers, testers and minor sponsors who helped me maintain spherical-stereo for 1 year. All that said, have fun with this. This feature was what got me started with Multi-View development (at the time what I was looking for was Fulldome stereo support, but the implementation is the same). In order to make this into Blender I had to make it aiming at a less-specic user-case Thus Multi-View started. (this was December 2012, during Siggraph Asia and a chat I had with Paul Bourke during the conference). I don't have the original patch anymore, but you can find a re-based version of it from March 2013, right before I start with the Multi-View project https://developer.blender.org/P332 Reviewers: sergey, dingto Subscribers: #cycles Differential Revision: https://developer.blender.org/D1223
2016-03-09Cleanup: style, spellingCampbell Barton