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-10-14Fix T49571: 2d stabilize keys not visible in the Graph Editor and Dope SheetSergey Sharybin
2016-10-07Collision: skip expensive BVH update if the collider doesn't move.Alexander Gavrilov
Since the collision modifier cannot be disabled, it causes a constant hit on the viewport animation playback FPS. Most of this overhead can be automatically removed in the case when the collider is static. The updates are only skipped when the collider was stationary during the preceding update as well, so the state is stored in a field. Knowing that the collider is static can also be used to disable similar BVH updates for substeps in the actual cloth simulation code. Differential Revision: https://developer.blender.org/D2277
2016-09-24Viewport smoke: add options to draw velocity vectors.Kévin Dietrich
This basically exposes to the UI a function that was only available through a debug macro ; the purpose is obviously to help debugging simulations. It adds ways to draw the vectors either as colored needles or as arrows showing the direction of the vectors. The colors are based on the magnitude of the underlying vectors. Reviewers: plasmasolutions, gottfried Differential Revision: https://developer.blender.org/D1733
2016-09-24Viewport smoke: add support for axis aligned slicing.Kévin Dietrich
Current approach uses view aligned slicing to generate polygons for GL texturing such that the generated polygons are always facing the view plane. Now it is also possible to use object aligned slicing, which creates polygons by slicing the object perpendicular to whichever axis is facing the most the view plane. It is also possible to create a single slice for inspecting the volume, or for 2D rendering effects. Settings for this, along with a density multiplier setting, are to be found in a newly added "Smoke Display Settings" panel in the smoke domain properties tab. Reviewers: plasmasolutions, gottfried Differential Revision: https://developer.blender.org/D1733
2016-09-22UI: Theme options for vertex/edge bevel weight colorsPhilipp Oeser
Drawing used colors for select (TH_EDGE_SELECT/TH_VERTEX_SELECT) which was inconsistent with crease, seam, sharp, .. (which all had their own them color -- also was a bit hard to read). NOTE: UI team usually doesn't allow adding more theme options, this is an exception. Differential Revision: https://developer.blender.org/D2234
2016-09-21FFmpeg interface improvementsSybren A. Stüvel
This patch changes a couple of things in the video output encoding. {F362527} - Clearer separation between container and codec. No more "format", as this is too ambiguous. As a result, codecs were removed from the container list. - Added FFmpeg speed presets, so the user can choosen from the range "Very slow" to "Ultra fast". By default no preset is used. - Added Constant Rate Factor (CRF) mode, which allows changing the bit-rate depending on the desired quality and the input. This generally produces the best quality videos, at the expense of not knowing the exact bit-rate and file size. - Added optional maximum of non-B-frames between B-frames (`max_b_frames`). - Presets were adjusted for these changes, and new presets added. One of the new presets is [recommended](https://trac.ffmpeg.org/wiki/Encode/VFX#H.264) for reviewing videos, as it allows players to scrub through it easily. Might be nice in weeklies. This preset also requires control over the `max_b_frames` setting. GUI-only changes: - Renamed "MPEG" in the output file format menu with "FFmpeg", as this is more accurate. After all, FFmpeg is used when this option is chosen, which can also output non-MPEG files. - Certain parts of the GUI are disabled when not in use: - bit rate options are not used when a constant rate factor is given. - audio bitrate & volume are not used when no audio is exported. Note that I did not touch `BKE_ffmpeg_preset_set()`. There are currently two preset systems for FFmpeg (`BKE_ffmpeg_preset_set()` and the Python preset system). Before we do more work on `BKE_ffmpeg_preset_set()`, I think it's a good idea to determine whether we want to keep it at all. After this patch has been accepted, I'd be happy to go through the code and remove any then-obsolete bits, such as the handling of "XVID" as a container format. Reviewers: sergey, mont29, brecht Subscribers: mpan3, Blendify, brecht, fsiddi Tags: #bf_blender Differential Revision: https://developer.blender.org/D2242
2016-09-12Graph editor: Add channel option to make it persistent on displaySergey Sharybin
The idea is to allow certain animation channels to be always visible in animation editors. So, for example, one can pin Camera animation to the editor so it is always possible to refine/tweak camera animation when animating something else in the scene. There is probably some more polishing required, and some current limitations could be solved in the future but should be a good starting point already. Currently only works for object without recursing into deeper datablock (so for example, it's not possible to pin object material animation). Studio request by Colin Levy.
2016-09-07GPencil: New interpolate strokes operatorsAntonioya
Two new modal operators to create a grease pencil interpolate drawing for one frame or a complete sequence between two frames. For drawing the temporary strokes in the viewport, two drawing handlers have been added to manage 3D and 2D stuff. Video: https://youtu.be/qxYwO5sSg5Y The operator shortcuts are Ctrl+E and Ctrl+Shift+E. During the modal operator, the interpolation can be adjusted using the mouse (moving left/right) or the wheel mouse.
2016-09-01D2184 Stamp: Make drawing stamp labels optional.Sybren A. Stüvel
When using metadata stamping, it's often handy to have "Camera" in front of the camera name, "Marker" in front of the marker text, etc., but sometimes those get in the way. This patch allows an artist to turn those labels on/off. Reviewed by: sergey, mont29, venomgfx
2016-08-26Fix over creation of cache files handles (leading to memory leaks).Kévin Dietrich
Multiple threads could create multiple handles for the same cache file, so protect handle creation with a mutex, to make sure only one is created.
2016-08-18Fix T48913: cycles viewport render stuck in loop due to non-unique dupli ID.Brecht Van Lommel
2016-08-162D stabilizer: Revert majority of UI changeSergey Sharybin
For now simply reshuffle option so they keep proper dependency flow. Benefits: - Has an ability to hide tracks lists to work with other sliders around. Could be really handy to quickly get rid of lenghty lists. - From a feedback seems to be fitting workflow better. Things to doublecheck on: - Feels a bit misordered: first you define whether one want to have rotation stabilized, then have tracks, then scale options. While this follows dependency flow (which is really good and which we should not violate) it has weird feeling on whether things are really where they have to be. - Autoscale controls visibility of max-scale, can we just make it active/inactive instead? - Autoscale replaces slider with label. Can it be disabled slider instead to reduce visual jumping (disabled slider prevents user input) Hopefully we'll still want to have collapsable box after re-iterating over this points, so we don't waste bits in DNA.
2016-08-162D stabilization: Modify interface so dependency goes strictly from top to ↵Sergey Sharybin
bottom
2016-08-16Rework 2D stabilizatorIchthyostega
See this page for motivation and description of concepts: https://github.com/Ichthyostega/blender/wiki See this video for UI explanation and demonstration of usage http://vimeo.com/blenderHack/stabilizerdemo This proposal attempts to improve usability of Blender's image stabilization feature for real-world footage esp. with moving and panning camera. It builds upon the feature tracking to get a measurement of 2D image movement. - Use a weighted average of movement contributions (instead of a median). - Allow for rotation compensation and zoom (image scale) compensation. - Allow to pick a different set of tracks for translation and for rotation/zoom. - Treat translation / rotation / zoom contributions systematically in a similar way. - Improve handling of partial tracking data with gaps and varying start / end points. - Have a user definable anchor frame and interpolate / extrapolate data to avoid jumping back to "neutral" position when no tracking data is available. - Support for travelling and panning shots by including an //intended// position/rotation/zoom ("target position"). The idea is for these parameters to be //animated// by the user, in order to supply an smooth, intended camera movement. This way, we can keep the image content roughly in frame even when moving completely away from the initial view. A known shortcoming is that the pivot point for rotation compensation is set to the translation compensated image center. This can produce spurious rotation on travelling shots, which needs to be compensated manually (by animating the target rotation parameter). There are several possible ways to address that problem, yet all of them are considered beyond the scope of this improvement proposal for now. Own modifications: - Restrict line length, it's really handy for split-view editing - In motion tracking we prefer fully human-readable comments, meaning we don't use doxygen with it's weird markup and comments are supposed to start with capital and end with a full stop, - Add explicit comparison of pointer to NULL. Reviewers: sergey Subscribers: kusi, kdawg, forest-house, mardy, Samoth, plasmasolutions, willolis, sebastian_k, hype, enetheru, sunboy, jta, leon_cheung Maniphest Tasks: T49036 Differential Revision: https://developer.blender.org/D583
2016-08-13GPencil: Cleanup codeAntonioya
2016-08-13Add DNA_struct_find (useful for version patching)Julian Eisel
2016-08-08Fix ID types DAG update tagging.Kévin Dietrich
The first character of the ID type was used to tag IDs for updates which is weak since different IDs can have the same first character (for example meshes, materials and metaballs), causing unnecessary updates of unrelated IDs. Now we use a unique index per ID type to tag for updates, unifying IDs arrays indexing along the way. Reviewers: sergey, mont29 Differential Revision: https://developer.blender.org/D2139
2016-08-07GPencil: Add option to draw new strokes on back of layerAntonioya
For artist point of view is very useful to have an option to draw by default the new strokes on back of all strokes in the layer.
2016-08-06Basic Alembic supportKévin Dietrich
All in all, this patch adds an Alembic importer, an Alembic exporter, and a new CacheFile data block which, for now, wraps around an Alembic archive. This data block is made available through a new modifier ("Mesh Sequence Cache") as well as a new constraint ("Transform Cache") to somewhat properly support respectively geometric and transformation data streaming from alembic caches. A more in-depth documentation is to be found on the wiki, as well as a guide to compile alembic: https://wiki.blender.org/index.php/ User:Kevindietrich/AlembicBasicIo. Many thanks to everyone involved in this little project, and huge shout out to "cgstrive" for the thorough testings with Maya, 3ds Max, Houdini and Realflow as well as @fjuhec, @jensverwiebe and @jasperge for the custom builds and compile fixes. Reviewers: sergey, campbellbarton, mont29 Reviewed By: sergey, campbellbarton, mont29 Differential Revision: https://developer.blender.org/D2060
2016-08-04Grease Pencil v2 BranchAntonio Vazquez
Improve current Grease Pencil in order to get a better 2D animation tool. More info in WIKI pages: https://wiki.blender.org/index.php/User:Antoniov Reviewed By: Severin, aligorith, campbellbarton Patch by @antoniov, with edits by @Severin. Differential Revision: https://developer.blender.org/D2115
2016-08-01Support Auto-Clamped Handle for Curve-MappingCampbell Barton
This patch supports auto-clamped handles for curves, useful since without this it can be difficult to have 'flat' sections of a curve.
2016-07-31Support limiting collisions by group for softbody and particlesAlexander Gavrilov
This feature is extremely useful for layering multiple cloth objects, and there is no reason there shouldn't be the same kind of feature for softbody.
2016-07-30Py-Driver: add 'self' optionCampbell Barton
Drivers can use this to refer to the data which the driver is applied to, useful for objects, bones, to avoid having to create a variable pointing to its self.
2016-07-30Cloth Simulation: add time scale propertyCampbell Barton
This setting can also be animated, to create a "time warp" effect. D2122 by @LucaRood
2016-07-28Make ID types typed enum, to easily spot missing ones in core switches of ↵Bastien Montagne
library.c Note that all deprecated/non-real ID types are kept as defines.
2016-07-28Add comments on behavior of spacedata and regionbase listsJulian Eisel
2016-07-25Curve Drawing: Add option to use new refit methodCampbell Barton
2016-07-21Cleanup: warningsCampbell Barton
2016-07-21Cleanup: use const, move comments to enumCampbell Barton
2016-07-21Cleanup: unused brush DNACampbell Barton
2016-07-19Cleanup: style, spellingCampbell Barton
2016-07-18Additional Waveform Drawing ModeSergey Sharybin
This diff adds a 6th drawing mode to the Waveform Scope. The new mode shows the RGB colour channels overlaid as a "Full colour" waveform. The old "Red Green Blue" mode is renamed "Parade" which is the standard industry term for RGB channels shown side-by-side. This full colour style of waveform is very much more useful for colour grading than the Parade mode and is the default waveform for many artists. Files from older Blender versions which show scopes open as expected. Patch by John Cox (johnedwardcox), thanks! Reviewers: sergey Reviewed By: sergey Subscribers: campbellbarton, tmw, Blendify Differential Revision: https://developer.blender.org/D1936
2016-07-16Cleanup: spellingCampbell Barton
2016-07-14CMake: per-target CFLAG & CXXFLAG supportCampbell Barton
Applying cflags globally can be problematic especially with extern, intern libs. Now flags from target named will be used when defined, allowing for developers to define flags for modules they maintain. Convention is CMAKE_CFLAGS_${UPPERCASE_TARGET_NAME}, (CXXFLAGS for C++). eg: CMAKE_CFLAGS_BF_BLENDER, CMAKE_CFLAGS_MAKESDNA, CMAKE_CXXFLAGS_CYCLES_KERNEL On Linux run `make help` for full list of names, MSVC shows these in the solution.
2016-07-14Cleanup: styleCampbell Barton
2016-07-14Use BLI_endian_switch in dna_genfileCampbell Barton
2016-07-13Boolean Modifier: Add back BMesh optionCampbell Barton
There are still issues with overlapping geometry, however some of the issues reported are are causing problems, or fail entirely with Carve too.
2016-07-12writefile: reuse SDNA between writesCampbell Barton
Avoids decoding the SDNA string every undo step.
2016-07-12readfile: report SDNA decoding errors on file readCampbell Barton
This was printed to the stdout, however the error case wasn't checked or well supported. Also, errors decoding SDNA would sometimes call exit(1).
2016-07-12writefile: remove SDNA last-hit, optimize DNA reconstructCampbell Barton
- Move last-hit index out of SDNA struct (allows for access by multiple threads). - Replace O(n^2) search with hash lookup in DNA reconstruction.
2016-07-07Cleanup: spelling, styleCampbell Barton
2016-07-07Dopesheet: Added "Moving Hold" as a keyframe typeJoshua Leung
Currently "long keyframes" are only useful for indicating where stationary holds occur. If however you try to create a "moving hold" (where the values are slightly different, but in terms of overall effect, it's still a hold) then it could get tricky to keep track of where these occur. Now it's possible to tag such keyframes (using the keyframe types - RKEY) as being part of a moving hold. These will not only be drawn differently from normal keyframes, but they will also result in a "long keyframe" being drawn between each pair of them, just like if they had been completely stationary instead. Currently the theming/styling of these is a bit rough. They reuse the existing theme colours for long keyframes.
2016-07-07Animation Editors: Object datablocks are now sorted alphabetically by defaultJoshua Leung
A long requested feature has been to have objects appear in alphabetical order in the animation editors, so that it is easier to find where they occur. This commit implements support for this. The main sticking point has been the performance impact of having this sorting happening all the time (as the actual list of "bases" cannot be modified, as the old depsgraph still needs random-looking unsorted order of objects for scheduling updates). However, it recently occurred to me that perhaps by restricting it to the one case where the ordering actually matters (i.e. when we're getting the channel list for drawing all channels, vs operating on them), and adding a toggle to turn the sorting off in heavy scenes when it might bog down things, that it will probably be acceptable enough in general. Furthermore, if things get really bad, we can investigate putting in place some sort of caching scheme for this too - though hopefully the new depsgraph will make that unnecessary (i.e. it doesn't sort the bases directly anymore).
2016-07-07Dopesheet: Keyframe size can be adjusted as part of theme settingsJoshua Leung
This commit introduces a scale factor setting for scaling all keyframe indicators in the Dopesheet Editor up/down, in order to make them easier to select. It is perhaps most useful for keyframe types which are usually indicated using smaller keyframes (e.g. breakdown), which may get tricky to quickly select.
2016-07-07NLA: Indicate position of action-local markers on stripsJoshua Leung
To make it easier to synchronise timing across multiple strips, if you add markers locally to an action, these will show up in the NLA strip in the NLA Editor. These markings can then be used to line up the start/end of another strip, or even to make sure that the markers from two different strips end up lining up. By default, this is turned on, but it can be disabled (via the View menu) if it adds too much visual noise.
2016-07-07Outliner: Match search length w/ id name lengthCampbell Barton
2016-07-06writefile: avoid adding SDNA to every undo stepCampbell Barton
Since SDNA was allocated for each undo step, the new address meant it was considered different and included again. Add an option not to duplicate the DNA string when calling DNA_sdna_from_data, as well as avoiding a redundant copy, it writes the same address each time.
2016-07-06Replace of (id->lib != NULL) check by meaningful macro.Bastien Montagne
Idea is to replace hard-to-track (id->lib != NULL) 'is linked datablock' check everywhere in Blender by a macro doing the same thing. This will allow to easily spot those checks in future, and more importantly, to easily change it (see work done in asset-engine branch). Note: did not touch to readfile.c, since there most of the time 'id->lib' check actually concerns the pointer, and not a check whether ID is linked or not. Will have a closer look at it later. Reviewers: campbellbarton, brecht, sergey Differential Revision: https://developer.blender.org/D2082
2016-07-04Environment lighting for the GLSL modeAlexander Romanov
Environment lighting (aka ambient) is a key component of any renderer. It's implemented like the Environment lighting of BI render for Approximate Gather mode. It support "Sky Color" and "White" Environment lighting modes. It would be great if the user could see actual lighting conditions right in the Blender viewport instead of waiting for the renderer to complete the final image, exporting for external renderer or for a game engine. Before: {F113921} After: {F113922} Example file: {F319013} Original author: valentin_b4w Alexander (Blend4Web Team) Reviewers: valentin_b4w, campbellbarton, merwin, brecht Reviewed By: brecht Subscribers: panzergame, youle, duarteframos, AlexKowel, yurikovelenov, dingto, Evgeny_Rodygin Projects: #rendering, #opengl_gfx Differential Revision: https://developer.blender.org/D810
2016-06-28writefile: replace most struct lookups /w constantsCampbell Barton
Removes many hash lookups per file-save and undo-step.