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
2012-05-13code cleanup: header cleanup and remove some duplicate defines.Campbell Barton
2012-05-12style cleanup: blenkernelCampbell Barton
2012-05-12Fix [#31426] Unwrapping, First unwrap unwraps with LSCM, not with Angle BasedBastien Montagne
When operator method property is not set, the operator uses the one from current scene settings. We must update the operator property accordingly... Also updated default startup.blend file, to match default AngleBased method (was on Conformal one).
2012-05-12code cleanup: some style and use math defines, also small speedup for ↵Campbell Barton
dynamicpaint, dont call acosf twice.
2012-05-12style cleanup: whitespaceCampbell Barton
2012-05-12style cleanup: remaining BLI files.Campbell Barton
2012-05-12style cleanup: whitespace, bli & makesdnaCampbell Barton
2012-05-12optimization for select similarCampbell Barton
- use angle_normalized_v3v3() where both vectors are known to be normalized. - remove needless radian to degrees conversions. - move checks for customdata layers outside the inner loop (for bevel and crease).
2012-05-12add bevel to select similar edges operatorCampbell Barton
2012-05-12style cleanup: mostly whitespace in rnaCampbell Barton
2012-05-12reworded tooltip for Tripod Motion button; fixing spelling and making more clearEd Halley
2012-05-11don't stat bookmark files on load, can make blender hang on slow networks ↵Campbell Barton
(eg, the blender institutes gigabit connection)... or if the server is busy.
2012-05-11Fix for UI layout alignment of fixed-size items (including those with width ↵Lukas Toenne
< min. width). Such layout items were ignoring the center and right alignment in layouts before.
2012-05-11style cleanup: whitespaceCampbell Barton
2012-05-11add missing NULL of scene->edCampbell Barton
2012-05-11edits to recent sequencer api additions not to do scene lookups, the scene ↵Campbell Barton
is already known.
2012-05-11no need to clamp python values twice when assigning.Campbell Barton
2012-05-11sequencer bug, was possible to add strips to negative channels, the channel ↵Campbell Barton
clamping was ignored when calling RNA_property_int_set() when setting operator int/floats.
2012-05-11- dont create scene.sequence_editor on read, means data-browser or ↵Campbell Barton
autocomplete will allocate a sequencer. ... instead add scene.sequencer_editor_create / clear, these match id.animation_data_* functions. - refactor for names, for scene level functions call them BKE_sequencer_*
2012-05-11A couple more changes to the file and image nodes to improve access to ↵Lukas Toenne
layers that don't follow Blender's rlayer.rpass naming scheme. --- Changes to File Output node --- * Flat layer names in EXR multilayer files. For a socket with name "AAA" the previous resulting EXR layer name would be "AAA.AAA", i.e. the render layer as well as render pass would use the socket name. Now the "render_layer.render_pass" scheme is ignored in multilayer files, socket names are directly written to EXR layers (EXR layer name is "AAA" in this example). If sockets should have a notion of "render layer" this can still be achieved by explicitly adding a separator, e.g. "AAA.BBB". When loading such layers into a Blender Image struct, the name is interpreted as a "render_layer.render_pass" again (although the image node does not care about it, see below). * Socket sub-paths (for singlelayer) or layer names (for multilayer) are stored in dedicated string variables in the socket storage data. This way the RNA can define precise string subtypes (PROP_FILEPATH) and length. The file/layer slots are defined as separate structs with own name properties in the RNA as well, so they can be used nicely with the list template. * Ensure unique socket paths/layer names to prevent overwriting of files and layers respectively. --- Changes to Image node --- * Loading multilayer OpenEXR files has improved layer name splitting into render layer + render pass names now. This properly supports arbitrary EXR layer names now. Example: OpenEXR layer name: AAA.BBB.CCC is split into Render layer name: AAA.BBB Render pass name: CCC If the layer name has no '.' separators the render layer name is empty. * Image node ignores the selected render layer in the image user data. Instead all existing layers are displayed at the same time by combining the render layer names with render pass names again, to reconstruct the original EXR layer name. This avoids the problem that render layers with empty name are not selectetable in the dropdown and allows using all image layers at the same time without duplicating the node.
2012-05-11style cleanup: mainly sculpt/whitespaceCampbell Barton
2012-05-11Compilation error fix: abort() wasn't declared in BKE_ccg.h beforeSergey Sharybin
2012-05-11Add mask-drawing support to GPU_Buffers.Nicholas Bishop
This is the last commit of the sculpt masking merge. Documentation: http://wiki.blender.org/index.php/User:Nicholasbishop/PaintMasks Thanks to Brecht for reviewing! * For VBO, add color to the VertexBufferFormat structure as three unsigned bytes. Since mask elements are scalar the three color components are identical to eachother, but the fixed-function OpenGL pipeline requires colors to be either three or four components. * For the same reason, multires VBO drawing now copies into the VertexBufferFormat format as well. * Regression: material colors will not show up correctly now, masks colors are overriding. Not sure how to fix this nicely (would be much easier to fix if drawing with vertex shaders.) * Also, masks will only draw PBVH drawing, so only 'solid' drawing will work correctly with masks.
2012-05-11Use VertexBufferFormat for multires VBO.Nicholas Bishop
2012-05-11Add keymap and menu entries for masking.Nicholas Bishop
* Add CTRL+IKEY to invert the mask. * Add ALT+MKEY to clear the mask. * Change the 'Hide' menu in sculpt mode to 'Hide/Mask', adds entires for clearing, filling, and inverting the mask, as well as hiding masked regions.
2012-05-11Add support for hiding masked regions.Nicholas Bishop
Add a new mode, PARTIALVIS_MASKED, to the PAINT_OT_hide_show operator.
2012-05-11Add a paint mask operator to clear, fill, or invert the mask.Nicholas Bishop
2012-05-11Update the keymap for the mask brush.Nicholas Bishop
* Add MKEY as a toggle for the mask brush. We could use ALT similar to SHIFT toggling the smooth brush, but it would conflict with MMB emulation (not to mention many window managers.) * When the mask brush is active, SHIFT toggles it into smooth mode.
2012-05-11Add mask brush for sculpt mode.Nicholas Bishop
The mask brush currently has two modes, 'draw' and 'smooth'.
2012-05-11Add new mask-brush icon from Julio Iglesias.Nicholas Bishop
2012-05-11Use paint mask when calculating sculpt strength.Nicholas Bishop
2012-05-11Add undo/redo support for paint masks.Nicholas Bishop
2012-05-11Ensure mask layers are always present in sculpt mode.Nicholas Bishop
2012-05-11Copy GridPaintMask to vertex paint mask when applying multires.Nicholas Bishop
Adds new subsurf_copy_grid_paint_mask() function similar to subsurf_copy_grid_hidden().
2012-05-11Add mask support to CCGSubSurf and multires.Nicholas Bishop
* Add new CCG function ccgSubSurf_setAllocMask(). Similar to to ccgSubSurf_setCalcVertexNormals(), it sets whether the CCG elements have a mask layer and what that layer's offset is. Unlike normals however, it doesn't change any behavior during CCG calculation; it's there only to give CCGKey information on the mask. * Add a new flag to _getSubSurf(), CCG_ALLOC_MASK. If set, space for an extra layer is allocated, but the number of CCG layers is not set to include it. This is done because GridPaintMasks are absolute, rather than being relative to the subdivided output (as MDisp displacements are), so we skip subdividing paint masks here. * Add a new flag to subsurf_make_derived_from_derived(), SUBSURF_ALLOC_PAINT_MASK. This controls whether CCG_ALLOC_MASK is set for _getSubSurf(). Related, masks are never loaded in during ss_sync_from_derivedmesh(). After subdivision is finished, if the alloc mask flag is set, the number of CCG layers is increase to 4 with ccgSubSurf_setNumLayers(). * Add a new flag to multires_make_from_derived(), MULTIRES_ALLOC_PAINT_MASK. Not all multires functions need paint mask data (e.g. multiresModifier_base_apply.) This flag is always set in MOD_multires.c so that subdividing a mesh with a mask updates properly even when not in sculpt mode. * Update multiresModifier_disp_run() to apply, calculate, and add mask elements. It's almost the same as the existing operations with xyz coordinates, but treats masks as absolute rather than displacements relative to subdivided values. * Update multires_customdata_delete to free CD_GRID_PAINT_MASK in addition to CD_MDISPS. * Update multires_del_higher() to call the new function multires_grid_paint_mask_downsample(), which allocates a lower-resolution paint mask grid and copies values over from the high-resolution grid.
2012-05-11Add GridPaintMask accessor to paint.c.Nicholas Bishop
2012-05-11Add paint mask access to the PBVH vertex iterator.Nicholas Bishop
2012-05-11Add access to mesh vertex customdata to the PBVH.Nicholas Bishop
2012-05-11Add DNA and customdata entries for paint masks.Nicholas Bishop
CD_PAINT_MASK is a layer of per-vertex floats for non-multires meshes. Multires meshes use CD_GRID_PAINT_MASK, which is a layer of per-loop GridPaintMask structures. GridPaintMask is similar to MDisp, but contains an array of scalar floats. Note: the GridPaintMask could be folded into MDisp, but this way should be easier to add mask layers in the future (if we do fold GridPaintMask into MDisp, the mask array should probably be an array of arrays with a 'totmask' field so that mask layers can be easily supported.) Includes blenload read/write support for CD_PAINT_MASK and CD_GRID_PAINT_MASK.
2012-05-11Replace hardcoded DMGridData structure with CCGElem/CCGKey.Nicholas Bishop
* Changes to DerivedMesh interface: DMGridData has been removed, getGridData() now returns an array of CCGElem pointers. Also added getGridKey() to initialize a CCGKey (implemented only by CCGDerivedMesh.) * PBVH: added BLI_pbvh_get_grid_key(). * A lot of code is affected, but mainly is just replacing DMGridData.co, DMGridData.no, and sizeof(DMGridData) with the CCG_*_elem functions, removing the reliance on grid elements of exactly six floats.
2012-05-11Add CCGKey/CCGElem for accessing CCGSubSurf elements.Nicholas Bishop
CCGKey caches information about the CCGSubSurf element layout. This data, along with the CCG_* inline functions, allows access to CCGSubSurf elements with an arbitrary number of layers (as opposed to the hardcoded DMGridData structure which assumes xyz coordinates followed by three normal components.) The CCGElem structure is declared but not defined anywhere, just used as a convenient type.
2012-05-11Modify CCGSubsurf to subdivide an arbitrary number of (float) layers.Nicholas Bishop
The layout of vert data in CCGSubSurf is almost the same; previously it was three floats (for xyz coordinate) optionally followed by three floats for the normal. The only change is that the first three floats can now be any number of floats. * _getSubSurf takes a numLayers parameter to set the number of layers, stored in CCGMeshIFC.numLayers. * All calls to _getSubSurf currently have numLayers set to 3, except for UV subsurf, where it is reduced to 2 (with a corresponding change when reading the results out to use float (*)[2] rather than float (*)[3].) * The various VertData* macros in CCGSubSurf.c are now functions that take a CCGSubSurf pointer, which provides access to CCGMeshIFC, which has numLayers. * Add ccgSubSurf_setNumLayers() to the API. Only changes the number of layers that get subdivided, doesn't change the amount of memory allocated. So if space for N layers is allocated, it's safe to set the number of layers to less than N, but not more. * The rest of the changes are just adding the 'ss' parameter.
2012-05-11Add new options to PAINT_OT_brush_select, toggle and create_missing.Nicholas Bishop
The toggle option, if enabled, will toggle back and forth between two brushes. (The first brush of the desired tool type will be toggled to, running the toggle again switches back to the previously selected brush.) If no brush of the desired type is found, and the create_missing option is enabled, a new brush of that type will be created and set.
2012-05-11Add an RNA access function to get an enum item name from its value.Nicholas Bishop
New function is RNA_enum_name_from_value.
2012-05-11Code cleanup for multires_dm_create_from_derived().Nicholas Bishop
Changed name to multires_make_derived_from_derived() and parameter order to be more similar to subsurf_make_derived_from_derived(). Added MultiresFlags enum with flag values to replace the local_mmd and useRenderParams parameters.
2012-05-11Code cleanup for parameters of subsurf_make_derived_from_derived.Nicholas Bishop
This is the first commit of the sculpt masking merge. Documentation: http://wiki.blender.org/index.php/User:Nicholasbishop/PaintMasks Thanks to Brecht for reviewing! Replaced four boolean parameters with a single flag and a new enum, SubsurfFlags.
2012-05-10Fix #31221: Multiple Monitors/Windows Double Click For FocusSergey Sharybin
Window might be focused by mouse click in configuration of window manager when focus is not following mouse. Click could have been done on a button and depending on window manager settings click would be passed to blender or not, but in any case button under cursor should be activated. Currently the easiest way to activate button is to generate mouse move event. Not sure about OSX, but on windows it worked fine because OS is generating WM_MOUSEMOVE event "automatically" so nothing special from blender side was needed.
2012-05-10minor changes to sequencer apiCampbell Barton
- rename seqelements.push(file) --> filename - rename SoundSequence.waveform --> show_waveform - dont pass context to sequencer functions. editing any scenes sequence can be done, irrespective of context.
2012-05-10Fix #31393: Shape Keys on curves with hooksSergey Sharybin
Own mistake when was fixing #30561 - handles ARE included in shape keys
2012-05-10style cleanup: sequencer and scene rnaCampbell Barton