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-12style cleanup: blenkernelCampbell Barton
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-11add missing NULL of scene->edCampbell Barton
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 undo/redo support for paint masks.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 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-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 #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
2012-05-10patch [#30871] VSE py-api Campbell Barton
from Dan Eicher (dna) --- message from the tracker Classes for all effect types with proper input attributes Added new/delete functions for SequenceEditor.sequences. push/pop functions for ImageSequence.elements to add/remove images Moved waveform from the base class to SoundSequence (probably should be renamed use_waveform or show_waveform) Fixed user count for scene and movie clip types --- my own comments - dont have blending mode argument from sequencer.new_*() functions. Better edit this after. - dont change waveform attribute, seems unrelated change and should be kept for sound afaik. - dont apply scene, clip usercount changes - Sergey dealt with these separately.
2012-05-09Camera tracking: exr frames used to be displayed in linear spaceSergey Sharybin
It was a regression since texture buffer merge from tomato, now ensure all display happens in sRGB space as it used to be before.
2012-05-09Fix crash doing alt+A playback in files saved in version <= 2.34, this code runsBrecht Van Lommel
before the version patch which it ideally shouldn't, but moving it to a different location is tricky.
2012-05-09Refactor of modifiers' apply function: now use a single bit-flag parameter ↵Bastien Montagne
to pass options, instead of having one parameter per boolean flag (i.e. replaces current useRenderParams and isFinalCalc by a single ModifierApplyFlag flag. ModifierApplyFlag is an enum defined in BKE_modifier.h). This way we won't anymore have to edit all modifier files when e.g. adding a new control flag! Should have no effect over modifier behavior.
2012-05-09code cleanup: color/bw conversion - use BLI color function.Campbell Barton
change modifier to use the average of the RGB since perceptual conversion isn't really needed for modifiers.
2012-05-09style cleanup: whitespace/operatorsCampbell Barton
2012-05-09Camera tracking: fixes for tracking of float imagesSergey Sharybin
- Fixed suddenly disappearing preview image from track widget - Also suddenly stopping tracking should be fixed now Both issues were caused by mixing working with floats and bytes and in some cases it was wrong or missed checks done for this.
2012-05-09Cycles: fix issues with texture coordinates and object scale. Auto textureBrecht Van Lommel
space size and location were outdated often, and already computed on demand by blender internal, now do that through RNA as well.
2012-05-09Python/context: python could get invalid bpy.data in scene update handler afterBrecht Van Lommel
undo. The way this got updated from the context is a bit unreliable, and for handlers the update couldn't happen because there is no context passed in. Now it's updated from setup_app_data, which is where the change actually happens. I left in the other updates to be sure but they should not be needed anymore.
2012-05-08Fix #31350, by Sergey Sharybin.Lukas Toenne
This happens because of how output node index is initializing in assign_index function: itterator goes to the beginning of the nodes list using node->prev and then reviews the whole node list to find first unused index. The problem is that node's initialization now is getting called before node was added to node tree, so all output nodes have got equal index.
2012-05-08optimize ngon angle calculation in solidify modifier (was doing prev/next ↵Campbell Barton
vector subtract and normalize for every vertex). now store the previous normalized vector for re-use. also add BKE_mesh_poly_calc_angles() which is mostly a reference for now.
2012-05-08Fix reseting of particle lifetime and unborn feature when adding smoke - ↵Daniel Genrich
reported by blendernation
2012-05-08fix for own mistake for ctrl+left/right movement and code cleanup for ↵Sv. Lockal
txt_jump_left/right
2012-05-08style cleanup: seqeffectsCampbell Barton
2012-05-08Cycles: add light falloff node, with quadratic/linear/constant falloff and aBrecht Van Lommel
smoothing factor to reduce high values near the light. http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/More#Light_Falloff Note that this was already possible to do manually with the Ray Length, but this adds a convenient node for it. This commit also makes the mapping node min/max option work, fixing #31348.
2012-05-07Style cleanup: change ffmpeg, avi and frame server api to rna-ish naming styleSergey Sharybin
2012-05-07Style cleanup of own modules using style checker from Campbell.Sergey Sharybin
2012-05-07Style cleanup: displist moduleSergey Sharybin
2012-05-07Style cleanup: rename BKE_metaball* to BKE_mball -- mball is more commonly ↵Sergey Sharybin
used term in Blender
2012-05-06style cleanup: blenkernelCampbell Barton
2012-05-06Mesh elements sorting refactor.Bastien Montagne
Now only one operator. Same options for vertices, edges and faces (so adds edges sorting, and some options to vertices sorting). Face sorting should behave as previously. However, XSortVerts won’t pack anymore selected vertices at the begining of the vert array (as it used to), if you want such behavior you’ll have to first run SortElements with Selected action. Also added bug ref I forgot in r46354 (armature.c).
2012-05-06Fix for [#31333] 2.63 Bone copy rotation becomes mad after entering/leaving ↵Bastien Montagne
armature edit mode There is no real good solution to this problem, hopefully this threshold value will be a good compromize this time... :(
2012-05-06style cleanup: BKE_*.c files which deal with library functionsCampbell Barton
2012-05-06add back pose specials menu, also add back the ability to clear user ↵Campbell Barton
transforms on all bones (not just selected - mango request - was possible in 2.4x). - rename only_select op property to only_selected (both were used). - only do mingw workaround when building with FREE_WINDOWS defined.
2012-05-06Removing the old armature 'deform' settings (use vertex groups/envelopes/quats).Joshua Leung
As far as I could tell, these were really only still used for "virtual modifiers", though we really don't use these anymore. Instead, most of the time, people need to set these settings in armature modifiers directly (these didn't even get copied over in that case). This was a source of confusion and redundancy, so removing these now. This change can be reverted if these were actually of some use out there...
2012-05-06Simplifying constraints code - removed relink_data() callbacks in favour of aJoshua Leung
more generic system which goes through id_looper(), reducing the maintainance burden for new constraint authors
2012-05-06Deleting action constraints (and a few others) now adjusts the usercounts ofJoshua Leung
their referenced data correctly
2012-05-06code cleanup: naming - BKE_mesh_*Campbell Barton
2012-05-05code cleanup: BKE_libblock_find_name() now takes an ID constant rather then ↵Campbell Barton
a string.