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
2017-09-27Math Lib: Add non-clamped round_* functionsCampbell Barton
Replace iroundf with round_fl_to_int, add other types
2017-09-26Add missing headerCampbell Barton
2017-09-26Fix T52901: New Depsgraph - Driver using "self" needs reloading file to workJoshua Leung
2017-08-28Make GS macro return proper IDType typeSergey Sharybin
Previously it was returning short, which was really easy to (a) compare against non-ID type value (b) forget to handle some specific value in switch statement. Both issues happened in the nearest past, so it's time to tighten some nuts here. Most of the change related on silencing strict compiler warning now, but there is also one tricky aspect: ID_NLA is not in the IDType enum. So there is still cast to short to handle that switch. If someone has better ideas how to deal with this please go ahead :)
2017-08-11Fix T52346: Alt-I (Delete Keyframes) on a NlaStrip's Extrapolate property ↵Joshua Leung
would crash
2017-08-01Cleanup: use static vars where appropriateCampbell Barton
2017-08-01Fix fcurve color assignmentCampbell Barton
2017-07-18Cleanup: use WM_event prefix for modal_tweak_exitCampbell Barton
2017-06-12Cleanup: indentation, long linesCampbell Barton
2017-05-20CMake: Use GCC7's -Wimplicit-fallthrough=5Campbell Barton
Use to avoid accidental missing break statements, use ATTR_FALLTHROUGH to suppress.
2017-03-11Cleanup: code style & cmakeCampbell Barton
2017-03-10Fix T50904: Imprecise timeline frame selection using mouseJoshua Leung
The changes introduced in rB3e628eefa9f55fac7b0faaec4fd4392c2de6b20e made the non-subframe frame change behaviour less intuitive, by always truncating downwards, instead of rounding to the nearest frame instead. This made the UI a lot less forgiving of pointing precision errors (for example, as a result of hand shake, or using a tablet on a highres scren) This commit restores the old behaviour in this case only (subframe inspection isn't affected by these changes)
2017-03-01Cleanup: code-style, duplicate headerCampbell Barton
2017-02-15Motion blur investigation featureSergey Sharybin
This commit adds a way to debug Cycles motion blur issues which are usually happening due to something crazy happening in between of frames. Biggest trouble was that artists had no clue about what's happening in subframes before they render. This is at least inefficient workflow when dealing with motion blur shots with complex animation. Now there is an option in Time Line Editor which could be found in View -> Show Subframe. This option will expose current frame with it's subframe to the time line editor header and it'll allow scrubbing with a subframe precision in time line editor. Please note that none of the tools in Blender are aware of subframe, so they'll likely be using current integer frame still. This is something we don't consider a bug for now, the whole purpose for now is to give a tool for investigation. Eventually we'll likely tweak all tools to be aware of subframe. Hopefully now we can finish the movie here in the studio..
2017-02-13F-Curve normalization: Do proper curve min/max instead of handle min/maxSergey Sharybin
Would be cool to find some way to cache the results.
2017-02-10De-duplicate min/max calculation in F-Curve normalizationSergey Sharybin
2017-01-31Cleanup: use 'cb_flag', not 'cd_flag' for library_query callbacks.Bastien Montagne
`cd_flag` tends to be used for CustomData flags in mesh area, while for library_query those are rather callback flags...
2017-01-16Cleanup/refactor: move BKE_deform_flip_side_name & co to BLI_string_utilsBastien Montagne
Functions like that do not have anything to do in BKE really, even less when actually more used for bones than vgroups!
2017-01-16Cleanup/refactor: get rid of fixed name limit in BKE_deform_flip_side_name & co.Bastien Montagne
Those were forcing to use vgroup name define in bones area, or even mixing with maxbonename... ugly, and totally avoidable.
2016-12-28Fix T50184: Grease Pencil Layer synchronization between Dope Sheet and ↵Joshua Leung
Properties panel
2016-11-15Implement grouped undo option for operatorsDalai Felinto
This option makes an operator to not push a task to the undo stack if the previous stored elemen is the same operator or part of the same undo group. The main usage is for animation, so you can change frames to inspect the poses, and revert the previous pose without having to roll back tons of "change frame" operator, or even see the undo stack full. This complements rB13ee9b8e Design with help by Sergey Sharybin. Reviewers: sergey, mont29 Reviewed By: mont29, sergey Subscribers: pyc0d3r, hjalti, Severin, lowercase, brecht, monio, aligorith, hadrien, jbakker Differential Revision: https://developer.blender.org/D2330
2016-11-02Change frame for animations should not bein the UNDO stackDalai Felinto
Request from Hjalti Hjalmarsson for the animation work. Basically a common part of the workflow of animation is to change the pose, scrub back and forth a few times and roll back the changes when unsatisfied. However if you go back and forth too many times the UNDO stack would be full, and it would not be possible to bring back the previous pose. I'm leaving clip_editor change frames as it is for now. But we can probably change the behaviour there as well.
2016-10-14Fix T49571: 2d stabilize keys not visible in the Graph Editor and Dope SheetSergey Sharybin
2016-10-11Fix T49629: Graph editor normalize function doesn't work on f-curves with a ↵Sergey Sharybin
constant key value Technically it is a regression in behavior and should be 2.78a.
2016-09-28Curve pinning: Allow pinning object data without animated objectSergey Sharybin
Special case, so now we can pin tricky cases like animated camera DOF without requiring to have animation on the object level.
2016-09-22Fix non-finite normalization factor in certain casesSergey Sharybin
2016-09-21UI: Make button driver and keying set shortcuts configurableJulian Eisel
2016-09-21UI: Configurable shortcuts for keyframe operatorsJulian Eisel
Adds support for editing the shortcuts for inserting (I), deleting (Alt+I) and clearing (Alt+Shift+I) button keyframes.
2016-09-19UI Messages: Consistent spelling of term "data-block"Julian Eisel
Was using a bunch of different spellings, mostly "data-block" though, so went with that one (would have been my #1 choice anyway ;) )
2016-09-16Remove debug only codeSergey Sharybin
Thanks Severin for spotting it!
2016-09-16Tweak for pinned/always visible curves in Graph EditorSergey Sharybin
Allow such kind of pin for armature bones.
2016-09-12Fix code which was commented by accidentSergey Sharybin
Well, more like some last-minute checks which i did not see before commit. Let's increase commit ratio!
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-08-16More fixes from coverity report.Bastien Montagne
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-04Cleanup: Use BKE_gpencil prefixJulian Eisel
This is a good point to change this as grease-pencil-v2 branch was just merged, so I hope merge conflicts with other branches are minimal.
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-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-07Skip the ID part of object names when comparingCampbell Barton
Also no need to calloc arrays which are immediately filled
2016-07-07Fix T48747: Stuck in edit mode after selecting another object in the ↵Joshua Leung
animation editors
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-07Code Cleanup: Move out logic for checking if an object can be included in ↵Joshua Leung
the dopesheet
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-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-06-29Cleanup: spelling, indentationCampbell Barton
2016-06-27FCurve Auto Colours: "XYZ to RGB" works for Quaternions too nowJoshua Leung
The "W" channel will get a yellowish colour (i.e. a blend between the X/R and Y/G axis colours), while the XYZ will behave as they do for other transforms.
2016-06-27Partial fix for T48734Joshua Leung
The create drivers operator should not use the "Transform Channel" variable type when driving one transform with another on the same object/bone. Otherwise, you end up with a situation which technically results in a bit of a pseudo-dependency cycle.
2016-06-23DopeSheet: GPencil-Mode supports Circle and Lasso SelectJoshua Leung
To get this working the least effort, I've had to expose the helper functions used by the lasso and circle select keyframe-test callbacks (which are generic) and expose them for use by the GP keyframe editing code too. Hopefully in time we clean this all up and just write the code once to operate on "keyframes"
2016-06-23Dopesheet: Lasso and Circle Select tools work for selecting keyframesJoshua Leung
This only works in the Action and Dopesheet modes (which operate on FCurve keyframes). Support for Grease Pencil and Mask Keyframes though is still pending.