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-11-06Rename ID_IS_LINKED_DATABLOCK to ID_IS_LINKED.Bastien Montagne
This makes code closer to id_override/assent-engine ones, which introduce a new type of linked data, and hence reserve ID_IS_LINKED_DATABLOCK to real linked datablocks.
2017-11-01Implement a new automatic handle algorithm to produce smooth F-Curves.Alexander Gavrilov
The legacy algorithm only considers two adjacent points when computing the bezier handles, which cannot produce satisfactory results. Animators are often forced to manually adjust all curves. The new approach instead solves a system of equations to trace a cubic spline with continuous second derivative through the whole segment of auto points, delimited at ends by keyframes with handles set by other requirements. This algorithm also adjusts Vector handles that face ordinary bezier keyframes to achieve zero acceleration at the Vector keyframe, instead of simply pointing it at the adjacent point. Original idea and implementation by Benoit Bolsee <benoit.bolsee@online.be>; code mostly rewritten to improve code clarity and extensibility. Reviewers: aligorith Differential Revision: https://developer.blender.org/D2884
2017-11-01Fix for T48988 - Enabling bbone easing for posemodeJoshua Leung
This fix enables the usage of bbones easing parameters for edit and pose mode seperately. This allows animators to take advantage of the functionality and may eliminate confusion as the parameters now behave similar to other bbone parameters. Note that splitting the parameters between the modes effectively creates a new parameter set. Blend files of previous versions do not contain this information and will have the values set to 0 on load. As it broke backwards compatibility for pose mode values anyway, I also took the liberty to rename the easing parameters in some places for consistency (which breaks edit mode values). Reviewers: aligorith Subscribers: aligorith Tags: #animation Differential Revision: https://developer.blender.org/D2796
2017-10-30Curve Decimate: new tool to simplify bezier curvesCampbell Barton
Access from the curve clean-up menu
2017-10-29Alembic: added frame offset propertySybren A. Stüvel
The offset is subtracted, so that it's intuitive (dragging slider pushes the animation further that way on the timeline).
2017-10-29Include file for DNA_DEPRECATED macroSybren A. Stüvel
2017-10-20Cleanup: replace gpencil tri vars w/ arrayCampbell Barton
2017-10-18Cleanup: Use const for RNA EnumPropertyItem argsCampbell Barton
Practically all access to enum data is read-only.
2017-10-17Make auto handle placement aware of cyclic extrapolation.Alexander Gavrilov
Cyclic extrapolation is implemented as an f-curve modifier, so this technically violates abstraction separation and is something of a hack. However without such behavior achieving smooth looping with cyclic extrapolation is extremely cumbersome. The new behavior is applied when the first modifier is Cyclic extrapolation in Repeat or Repeat with Offset mode without using influence, repeat count or range restrictions. This change in behavior means that curve handles have to be updated when the modifier is added, removed or its options change. Due to the way code is structured, it seems it requires a helper link to the containing curve from the modifier object. Reviewers: aligorith Differential Revision: https://developer.blender.org/D2783
2017-10-17Cleanup: use 'e' prefix for enum typedefsCampbell Barton
Convention was only followed loosely, apply to DNA where changes aren't likely to conflict. (Skipped ModifierType for eg).
2017-10-06Vertex Paint: move normal falloff into the brushCampbell Barton
All related settings are already in the brush, so it's inconvenient to switch panels to change this one option.
2017-10-06Vertex Paint: use brush front-face settingCampbell Barton
Follow sculpt mode more closely by using the brush front-face option.
2017-10-05Sculpt Mode: 2D falloff optionCampbell Barton
This makes brush influence into a tube instead of a sphere. It can be used along the outline of a mesh to adjust it's silhouette. Note that all this takes advantage of changes from vertex paint, from testing this seems useful so exposing from the brush options.
2017-10-03Vertex Paint: remove accumulate (soc-2017-vertex_paint)Campbell Barton
This secondary accumulation option accumulated brush falloff. The same option in image painting accumulates color as vertex paiht 'Spray' does. Giving this option different behavior for vertex paint seems strange. Also this is basically increasing falloff over time. Remove the new code, expose existing 'Spray' as 'Accumulate' to match other paint modes.
2017-10-02Vertex Paint: projection optionsCampbell Barton
This makes vertex paint match image painting more closely. - Add falloff shape option sphere/circle where sphere uses a 3D radius around the cursor and circle uses a 2D radius (projected), like previous releases. - Add normal angle option so you can control the falloff. - Add Cull option, to paint onto faces pointing away. Disabling normals, culling and using circle falloff allows you to paint through the mesh.
2017-09-29Vertex Paint: Alpha SupportCampbell Barton
GSOC 2017 by Darshan Kadu, see: D2859. This is a partial merge of some of the features from the soc-2017-vertex_paint branch. - Alpha painting & drawing. - 10 new color blending modes. - Support for vertex select in vertex paint mode.
2017-09-27Vertex/Weight Paint: Use PBVH for paintingCampbell Barton
2016 GSOC project by @nathanvollmer, see D2150 - Mirrored painting and radial symmetry, like in sculpt mode. - Volume based splash prevention, which avoids painting vertices far away from the 3D brush location. - Normal based splash prevention, which avoids painting vertices with normals opposite the normal at the 3D brush location. - Blur mode now uses a nearest neighbor average. - Average mode, which averages the color/weight of the vertices within the brush - Smudge mode, which pulls the colors/weights along the direction of the brush - RGB^2 color blending, which gives a more accurate blend between two colors - multithreading support. (PBVH leaves are painted in parallel.) - Foreground/background color picker in vertex paint
2017-09-26Cleanup: remove bounds runtime data from sceneCampbell Barton
2017-09-25Mirror Modifier: option to offset UV'sCampbell Barton
Useful for baking, so UV's can be moved outside the image and not used to bake pixels (but still used for display). D2801 by @Zuorion
2017-09-22Remove quicktime supportAaron Carlisle
It has been deprecated since at least macOS 10.9 and fully removed in 10.12. I am unsure if we should remove it only in 2.8. But you cannot build blender with it supported when using a modern xcode version anyway so I would tend towards just removing it also for 2.79 if that ever happens. Reviewers: mont29, dfelinto, juicyfruit, brecht Reviewed By: mont29, brecht Subscribers: Blendify, brecht Maniphest Tasks: T52807 Differential Revision: https://developer.blender.org/D2333
2017-09-19Boolean Modifier: add debug optionsCampbell Barton
Only show & use when running in debug mode.
2017-09-06Node UI: Add square and diamond socked draw stylesCampbell Barton
Currently not used by Blender's node trees D2814 by @charlie
2017-09-06Screw Modifier: remove doubles optionCampbell Barton
Vertices on the axis can be optionally merged, nice for creating objects which close at the end-points.
2017-09-06View3D Remap: skip defmaterialCampbell Barton
This isn't library data.
2017-08-31Increase max/min frame range to over a millionDalai Felinto
For some specific pipelines (e.g., holographic rendering) you can easily need over a million frames (1k * 1k view angles). It seems a corner case, but there is no real reason not to allow users doing that. That said we do loose subframe precision in the highest frame range. Which can affect motionblur. The current maximum sub-frame precision we have is 16. While the previous limit of 500k frames has a precision of 32. Thanks to Campbell Barton for the help here. To be backported to 2.79
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-15Cycles/BI: Add a pixel size option for speeding up viewport renderingLukas Stockner
This patch adds "Pixel Size" to the performance options, which allows to render in a smaller resolution, which is especially useful for displays with high DPI. Reviewers: Severin, dingto, sergey, brecht Reviewed By: brecht Subscribers: Severin, venomgfx, eyecandy, brecht Differential Revision: https://developer.blender.org/D1619
2017-08-11iFix T52050: Empty VSE preview for scene strips with OpenGL preview + ↵Bastien Montagne
Rendered settings. 'OpenGL Preview' checkbox was redundant now, just use seq_prev_type value only. Might be OK for 2.79, but should be double-checked first...
2017-08-11Fix T52327: Entering/Exiting NLA Tweakmode disables Scene -> Only Keyframes ↵Joshua Leung
from Selected Channels The tweakmode flag and the selected-channels flag accidentally used the same value, due to confusion over where these flags were supposed to be set. The selected-channels flag has now been moved to use a different value, so that there shouldn't be any further conflicts. To be ported to 2.79.
2017-08-10DPI: add back option to control line width, tweak default width.Brecht Van Lommel
Adds thin/default/thick modes to add -1/0/1 to the auto detected line width, while leaving the overall UI scale unchanged. Also tweaks the default line width threshold, so thicker lines start from slightly high UI scales. Differential Revision: https://developer.blender.org/D2778
2017-08-07Refactor ID copying (and to some extent, ID freeing).Bastien Montagne
This will allow much finer controll over how we copy data-blocks, from full copy in Main database, to "lighter" ones (out of Main, inside an already allocated datablock, etc.). This commit also transfers a llot of what was previously handled by per-ID-type custom code to generic ID handling code in BKE_library. Hopefully will avoid in future inconsistencies and missing bits we had all over the codebase in the past. It also adds missing copying handling for a few types, most notably Scene (which where using a fully customized handling previously). Note that the type of allocation used during copying (regular in Main, allocated but outside of Main, or not allocated by ID handling code at all) is stored in ID's, which allows to handle them correctly when freeing. This needs to be taken care of with caution when doing 'weird' unusual things with ID copying and/or allocation! As a final note, while rather noisy, this commit will hopefully not break too much existing branches, old 'API' has been kept for the main part, as a wrapper around new code. Cleaning it up will happen later. Design task : T51804 Phab Diff: D2714
2017-07-29Cleanup: quiet picky ubsan warningsCampbell Barton
2017-07-28Replace magic numbers with deprecated namesCampbell Barton
The names aren't meaningful but means it wont accidentally use valid names. Also remove textured-font setting
2017-07-28Cleanup: clear deprecated UI flagsCampbell Barton
Also adds cursor-lock flag, to be used in next commit.
2017-07-03Fix T51523: Lattice modifier affecting particles even when disabledLuca Rood
Particles were ignoring the lattice modifier visibility, and "influence" property.
2017-05-15Fix T51348: Node highlighting is brokenSergey Sharybin
This feature was disabled in the code but not in the interface. Removing the code, since it needs full re-implementation anyway.
2017-05-07Remove unused node socket flag that was added in the render pass commitLukas Stockner
2017-05-03Render API/Cycles: Identify Render Passes by their name instead of a type flagLukas Stockner
Previously, every RenderPass would have a bitfield that specified its type. That limits the number of passes to 32, which was reached a while ago. However, most of the code already supported arbitrary RenderPasses since they were also used to store Multilayer EXR images. Therefore, this commit completely removes the passflag from RenderPass and changes all code to use the unique pass name for identification. Since Blender Internal relies on hardcoded passes and to preserve compatibility, 32 pass names are reserved for the old hardcoded passes. To support these arbitrary passes, the Render Result compositor node now adds dynamic sockets. For compatibility, the old hardcoded sockets are always stored and just hidden when the corresponding pass isn't available. To use these changes, the Render Engine API now includes a function that allows render engines to add arbitrary passes to the render result. To be able to add options for these passes, addons can now add their own properties to SceneRenderLayers. To keep the compositor input node updated, render engine plugins have to implement a callback that registers all the passes that will be generated. From a user perspective, nothing should change with this commit. Differential Revision: https://developer.blender.org/D2443 Differential Revision: https://developer.blender.org/D2444
2017-04-26Avoid platform dependant PATH_MAXCampbell Barton
2017-04-26Alembic: shortened CacheFile.filepath to 1024 bytes againSybren A. Stüvel
As per discussion on 3128600a8ab2badd9ea39c80133f15f766794ec6
2017-04-25Fix T51262: Blender CRASH with alembic fileSybren A. Stüvel
Also added a unit test for exporting & importing very long names.
2017-04-17Fix T51176: Cache file location can be blank and prevent fluid simulation ↵Bastien Montagne
from reading baked data Sanitize a bit how cache path is handled by fluidsim (there is much more to be done here though :( ), and forbid empty path (we reset to default path relative to current .blend file in case it's empty). If people really, really want to use current OS-wise directory, they can at least use '.' as path. ;)
2017-04-14Object Info node support for GLSL mode and the internal renderAlexander Romanov
Object Info node can be useful to give some variation to a single material assigned to multiple instances. This patch adds support for Viewport and BI. {F499530} Example: {F499528} Reviewers: merwin, brecht, dfelinto Reviewed By: brecht Subscribers: duarteframos, fclem, homyachetser, Evgeny_Rodygin, AlexKowel, yurikovelenov Differential Revision: https://developer.blender.org/D2425
2017-04-13Datablock ID PropertiesAlexander Romanov
The absence of datablock properties "will certainly be resolved soon as the need for them is becoming obvious" said the [[http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.67/Python_Nodes|Python Nodes release notes]]. So this patch allows Python scripts to create ID Properties which reference datablocks. This functionality is implemented for `PointerProperty` and now such properties can be created with Python. In addition to the standard update callback, `PointerProperty` can have a `poll` callback (standard RNA) which is useful for search menus. For details see the test included in this patch. Original author: @artfunkel Alexander (Blend4Web Team) Reviewers: brecht, artfunkel, mont29, campbellbarton Reviewed By: mont29, campbellbarton Subscribers: jta, sergey, campbellbarton, wisaac, poseidon4o, mont29, homyachetser, Evgeny_Rodygin, AlexKowel, yurikovelenov, fjuhec, sharlybg, cardboard, duarteframos, blueprintrandom, a.romanov, BYOB, disnel, aditiapratama, bliblubli, dfelinto, lukastoenne Maniphest Tasks: T37754 Differential Revision: https://developer.blender.org/D113
2017-04-12Docs: minor improvement to code exampleCampbell Barton
2017-03-30Mirror Modifier: Add offsets for mirrored UVsCampbell Barton
The mirror modifier now has two fields that specify a -1 to 1 offset for the U and V axes when mirroring their coordinates. D1844 by @circuitfox
2017-03-25Automatic DPI for all platforms, per monitor DPI for Windows.Wouter
For Windows 8.1 and X11 (Linux, BSD) now use the DPI specified by the operating system, which previously only worked on macOS. For Windows this is handled per monitor, for X11 this is based on Xft.dpi or xrandr --dpi. This should result in appropriate font and button sizes by default in most cases. The UI has been simplified to a single UI Scale factor relative to the automatic DPI, instead of two DPI and Virtual Pixel Size settings. There is forward and backwards compatibility for existing user preferences. Reviewed By: brecht, LazyDodo Differential Revision: https://developer.blender.org/D2539
2017-03-25WM: Application TemplatesCampbell Barton
This adds the ability to switch between different application-configurations without interfering with Blender's normal operation. This commit doesn't include any templates, so its mostly to allow collaboration for the Blender 101 project and other custom configurations. Application templates can be installed & selected from the file menu. Other details: - The `bl_app_template_utils` module handles template activation (similar to `addon_utils`). - The `bl_app_override` module is a general module to assist scripts overriding parts of Blender in reversible way. See docs: https://docs.blender.org/manual/en/dev/advanced/app_templates.html See patch: D2565
2017-03-083D View: new nethod of opengl selectionCampbell Barton
Intended to replace legacy GL_SELECT, without the limitations of sample queries which can't access depth information. This commit adds VIEW3D_SELECT_PICK_NEAREST and VIEW3D_SELECT_PICK_ALL which access the depth buffers to detect whats under the pointer, so initial selection is always the closest item. The performance of this method depends a lot on the OpenGL implementations glReadPixels. Since reading depth can be slow, buffers are cached for object picking so selecting re-uses depth data, performing 1 draw instead of 3 (for 24, 18, 10 px regions, picking with many items under the pointer). Occlusion queries draw twice when picking nearest, so worst case 6x draw calls per selection. Even with these improvements occlusion queries is faster on AMD hardware. Depth selection is disabled by default, toggle option under select method. May enable by default if this works well on different hardware. Reviewed as D2543
2017-03-06Surface Deform Modifier: Respect object transforms at bind timeLuca Rood
This slightly changes SDef behavior, by now respecting object transforms at bind time, thus not requiring the objects to be aligned in their respective local spaces, but instead using world space.