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
2014-11-30Cleanup: warnings & spaceCampbell Barton
2014-11-30Grease Pencil - Storyboarding Features (merge from GPencil_EditStrokes branch)Joshua Leung
This merge-commit brings in a number of new features and workflow/UI improvements for working with Grease Pencil. While these were originally targetted at improving the workflow for creating 3D storyboards in Blender using the Grease Pencil, many of these changes should also prove useful in other workflows too. The main highlights here are: 1) It is now possible to edit Grease Pencil strokes - Use D Tab, or toggle the "Enable Editing" toggles in the Toolbar/Properties regions to enter "Stroke Edit Mode". In this mode, many common editing tools will operate on Grease Pencil stroke points instead. - Tools implemented include Select, Select All/Border/Circle/Linked/More/Less, Grab, Rotate, Scale, Bend, Shear, To Sphere, Mirror, Duplicate, Delete. - Proportional Editing works when using the transform tools 2) Grease Pencil stroke settings can now be animated NOTE: Currently drivers don't work, but if time allows, this may still be added before the release. 3) Strokes can be drawn with "filled" interiors, using a separate set of colour/opacity settings to the ones used for the lines themselves. This makes use of OpenGL filled polys, which has the limitation of only being able to fill convex shapes. Some artifacts may be visible on concave shapes (e.g. pacman's mouth will be overdrawn) 4) "Volumetric Strokes" - An alternative drawing technique for stroke drawing has been added which draws strokes as a series of screen-aligned discs. While this was originally a partial experimental technique at getting better quality 3D lines, the effects possible using this technique were interesting enough to warrant making this a dedicated feature. Best results when partial opacity and large stroke widths are used. 5) Improved Onion Skinning Support - Different colours can be selected for the before/after ghosts. To do so, enable the "colour wheel" toggle beside the Onion Skinning toggle, and set the colours accordingly. - Different numbers of ghosts can be shown before/after the current frame 6) Grease Pencil datablocks are now attached to the scene by default instead of the active object. - For a long time, the object-attachment has proved to be quite problematic for users to keep track of. Now that this is done at scene level, it is easier for most users to use. - An exception for old files (and for any addons which may benefit from object attachment instead), is that if the active object has a Grease Pencil datablock, that will be used instead. - It is not currently possible to choose object-attachment from the UI, but it is simple to do this from the console instead, by doing: context.active_object.grease_pencil = bpy.data.grease_pencil["blah"] 7) Various UI Cleanups - The layers UI has been cleaned up to use a list instead of the nested-panels design. Apart from saving space, this is also much nicer to look at now. - The UI code is now all defined in Python. To support this, it has been necessary to add some new context properties to make it easier to access these settings. e.g. "gpencil_data" for the datablock "active_gpencil_layer" and "active_gpencil_frame" for active data, "editable_gpencil_strokes" for the strokes that can be edited - The "stroke placement/alignment" settings (previously "Drawing Settings" at the bottom of the Grease Pencil panel in the Properties Region) is now located in the toolbar. These were more toolsettings than properties for how GPencil got drawn. - "Use Sketching Sessions" has been renamed "Continuous Drawing", as per a suggestion for an earlier discussion on developer.blender.org - By default, the painting operator will wait for a mouse button to be pressed before it starts creating the stroke. This is to make it easier to include this operator in various toolbars/menus/etc. To get it immediately starting (as when you hold down DKEy to draw), set "wait_for_input" to False. - GPencil Layers can be rearranged in the "Grease Pencil" mode of the Action Editor - Toolbar panels have been added to all the other editors which support these. 8) Pie menus for quick-access to tools A set of experimental pie menus has been included for quick access to many tools and settings. It is not necessary to use these to get things done, but they have been designed to help make certain common tasks easier. - Ctrl-D = The main pie menu. Reveals tools in a context sensitive and spatially stable manner. - D Q = "Quick Settings" pie. This allows quick access to the active layer's settings. Notably, colours, thickness, and turning onion skinning on/off.
2014-11-29Correct includes for win32Campbell Barton
2014-11-29Cleanup: use const, avoid float -> double in matrix invertCampbell Barton
2014-11-29Cleanup: unused headersCampbell Barton
2014-11-28Cleanup: unused headersCampbell Barton
2014-11-28Cleanup GPU: get rid of some extremely legacy draw code.Antony Riakiotakis
Basically this commit gets rid of most of the derived mesh immediate mode drawing (cases such as subsurf excluded). Even when VBO is turned off in user preferences, we still use vertex arrays, which are very similar to VBOs but memory is client side. Vertex arrays are OpenGL 1.1 so compatibility is not an issue here. Reviewers: campbellbarton, sergey, jwilkins Differential Revision: https://developer.blender.org/D919
2014-11-28Material not set in edit derived meshes after last material modificationAntony Riakiotakis
commits.
2014-11-27Addition/correction to previous commit:Antony Riakiotakis
subsurf needs the same modifications in its derived mesh function or materials don't get updated at all anymore.
2014-11-27Fix T42653, solidify modifier not displaying correctly under edit mode.Antony Riakiotakis
Basically, our drawing code assumed we always use the edit mesh materials, which can be different from the derived mesh materials in modifiers doing overrides. We usually we want to use the derived mesh when it is available instead. There are two fixes here for both solid and textured mode. Unfortunately the fixes do not help to make the display code less labyrinthian but I expect this "should work" (tm and famous last words) Solid mode fix is 95% from Bastien, thanks!
2014-11-26World background working on cycle nodes.Antony Riakiotakis
This is added in the spirit of the general cycles GLSL system which is pretty much WIP still. This will only work on cycles at the moment but generating for blender internal is possible too of course though it will be done in a separate commit. This hasn't been tested with all and every node in cycles, but environment and regular textures with texture coordinates work. There is some difference between the way cycles treats some coordinates, which is in world space and the way GLSL treats them, which is in view space. We might want to explore and improve this further in the future. ...also </drumroll>
2014-11-24Politically correct terrible consequencer changesAntony Riakiotakis
This patch includes the work done in the terrible consequencer branch that hasn't been merged to master minus a few controversial and WIP stuff, like strip parenting, new sequence data structs and cuddly widgets. What is included: * Strip extensions only when slipping. It can very easily be made an option but with a few strips with overlapping durations it makes view too crowded and difficult to make out. * Threaded waveform loading + code that restores waveforms on undo (not used though, since sound_load recreates everything. There's a patch for review D876) * Toggle to enable backdrop in the strip sequence editor * Toggle to easily turn on/off waveform display * Snapping during transform on sequence boundaries. Snapping to start or end of selection depends on position of mouse when invoking the operator * Snapping of timeline indicator in sequencer to strip boundaries. To use just press and hold ctrl while dragging. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D904
2014-11-24BLI_utildefines: add UNUSED_VARS() macroCampbell Barton
2014-11-24SCons: correct include for win, also minor cleanupCampbell Barton
2014-11-24SCons: correct includes after recent refactorCampbell Barton
2014-11-24Minor edits to T42649 fixCampbell Barton
- only modify paths for newly loaded images - don't attempt to read from library paths
2014-11-23Refactor: BLI_path_util (part 2)Campbell Barton
Use BKE_appdir/tempdir naming prefix for functions extracted from BLI_path_util
2014-11-23Refactor: BLI_path_util (split out app directory access)Campbell Barton
This module is intended for path manipulation functions but had utility functions added to access various directories.
2014-11-22Bugfix T42549: Grease pencil layers are not scene-specific for "full copy ↵Joshua Leung
scenes"
2014-11-22Fix for previous commitJoshua Leung
gpencil_data_duplicate() was being used for gp drawing undo buffers, where using an exact copy is exactly what we want/need. Instead, the code here now has an additional arg for determining whether a direct copy is warranted or not.
2014-11-22Bugfix: Duplicating Grease Pencil datablocks wasn't doing so in a safe wayJoshua Leung
Grease Pencil data (bGPdata) is now a datablock, so it isn't safe to use MEM_dupallocN() for copying new instances of these anymore.
2014-11-21Cleanup: typoCampbell Barton
2014-11-19Refactor: Move part of vgroup handling code from ED_mesh/object_vgroup.c to ↵Bastien Montagne
BKE_object_deform. Along with some minor cleanup and simplifications. Reviewers: campbellbarton Subscribers: sergey Differential Revision: https://developer.blender.org/D903
2014-11-18Fix T42585: Mask motion blur is wrong when parented to plane trackSergey Sharybin
it wasn't wrong, it wasn't implemented.
2014-11-17ShapeKey: Cleanup of BKE_keyblock_convert/update code.Bastien Montagne
Mainly: * Use 'for' loops instead of 'while' ones (saves many lines and regroup most loop handling on one line). * Use float[3] pointers where possible.
2014-11-17Fix T35170: Undoing edit op on a basis shapekey could generate extra offset ↵Bastien Montagne
on its 'children'. Based on investigation by sergey (Sergey Sharybin) and revzin (Grigory Revzin). Based on patch D460 by revzin (Grigory Revzin). Differential Revision: https://developer.blender.org/D460
2014-11-17ShapeKeys: Add `BKE_keyblock_is_basis` to check whether a given keyblock is ↵Bastien Montagne
used a basis by others. Also fix stupid debug-only error in previous commit.
2014-11-17Cleanup: rename `BKE_key_convert/update` to `BKE_keyblock_convert/update`.Bastien Montagne
We are handling a keyblock here, not a whole key(set). Names are alreay a bit confusing, let's be consistent at least.
2014-11-17ShapeKey: Refactor a bit `BKE_key_convert_from_...`Bastien Montagne
Thing is, those functions always reallocate the whole keyblock's data mem, while in some cases we already have right amount of elements, so we can just copy over. Further more, `BKE_key_convert_from_offset`, despite its name, was not making any check nor allocation on keyblock's data elements! So split 'copy' operation itself in `BKE_key_update_from_...`, where no mem checks/operations are performed (only an assert). Only useful in sculpt mode currently, but will be used by fix for T35170 too.
2014-11-16Cleanup: use BLI_listbase_count_ex to avoid redundant loopingCampbell Barton
2014-11-16Cleanup: use BLI_listbase_*** prefix for count,sort,sort_rCampbell Barton
2014-11-16[T40372] FCurve Eval/Drawing Optimisation: Skip Bezier handle eval when all ↵Joshua Leung
handles are flat Small optimisation (which shouldn't have much of an effect) where we skip complex handle calculations if all the handles/verts for a Bezier curve segment are all flat. Patch by Campbell (T40372 -> F91346)
2014-11-16Bugfix T41525: Button keyframe indicators don't work correctly when editing ↵Joshua Leung
NLA Strips When the active action is a NLA strip, the keyframe indicator colors for buttons and the 3D view indicator (i.e. the current frame indicator changes color) didn't work correctly. This was because they were still checking for keyframes in "global" time space, whereas they needed to be applying NLA corrections to "look inside" the remapped action.
2014-11-15Cleanup (mostly 0/1 -> false/true).Bastien Montagne
2014-11-14skip scene_armature_depsgraph_workaround when theres no armaturesCampbell Barton
2014-11-14Depsgraph: Workaround for missing pose update when changing visible layersSergey Sharybin
That's like really a bummer, because currently animation data for armatures might want to use pose, and pose might be missing on the object. This happens when changing visible layers, which leads to situations when pose is missing or marked for recalc, animation will change it and then object update will restore the pose. This could be solved by the new dependency graph, but for until then we'll do an extra pass on the objects to ensure it's all fine. It's done in the scene_update_for_newframe() to solve possible issues with the render engines as well. This finally solves issues we had with Caminandes team, where Koro would be at the scene origin instead of being properly posed.
2014-11-14Fix vertex colors being displayed wrong in GLSL in edit mode. Looks likeAntony Riakiotakis
swapping the colors is no longer needed.
2014-11-14Don't assign wrong datalayers to gpuattribs in edit mode.Antony Riakiotakis
layer index was being obtained for loop data types but we referenced Tessface data types NULLing those out since only the data offsets are used in edit mode and address sanitizer complains about freed memory access. Also minor comment in texpainting
2014-11-11Cleanup: remove inline list-countCampbell Barton
2014-11-11Avoid calling powf with integer exponent in more placesSergej Reich
Move powX functions from particle code into math library and use them.
2014-11-11cloth: Avoid calling powf with integer exponentSergej Reich
This is pretty slow and even shows up in profiling.
2014-11-11cloth: Fix overallocation for collisionsSergej Reich
This was introduced when eltopo was added, but not reverted when it was removed.
2014-11-11Fix T42557: Crash on delete or separate vertices with subsurf modifier + ↵Bastien Montagne
vertex parenting Only fixes the crash actually, real issue is, vparent does not handle deletion of vertices at all currently... We'd need either some kind of static uuid for vertices, or some mapping helpers used each time we remove or reorder verts... ugh. Org patch by Severin (Julian Eisel).
2014-11-10Fix/workaround T37073: Crash updating custom props visible in the UICampbell Barton
2014-11-09Code cleanup: Remove unused functions from implicit.cSergey Sharybin
Most of the unused functions were removed. Some of them were if-defed because they are referenced from the code which was already if-defed. Reviewers: lukastoenne, campbellbarton Differential Revision: https://developer.blender.org/D868
2014-11-06better fix for fix T42525 (tm)Antony Riakiotakis
Looks like material node trees are stored directly in the material. The reason I thought this was fixed was because my test file didn't connect the lamp data node in the rest of the tree. Thanks to Campbell for catching this :)
2014-11-06Fix T42525 crash when deleting lamp attached to Lamp Data material nodeAntony Riakiotakis
in material shading mode.
2014-11-06Revert "Metastrips: disallow making a metastrip with only one strip present."Antony Riakiotakis
This reverts commit a1578f08dc442b0c64f05a1ab18ef0fd90a9f6e4. Looks like some workflows benefit from being able to do this
2014-11-04Fix-for-fix ik-spline clamp existing files tooCampbell Barton
2014-11-04Cleanup for previous own commit (sorry...)Bastien Montagne