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
2013-12-20Code Cleanup: styleCampbell Barton
2013-12-20Don't use with_resol suffix for functions which doesn't get resolutionSergey Sharybin
2013-12-20Code cleanup: remove unused functions from mask moduleSergey Sharybin
This functions doesn't seem to be used even from a commented code.
2013-12-19Followup for fix T37718: image was not saving with proper settings second timeSergey Sharybin
This was actually a regression after color management re-implementation, need to copy settings from saved image buffer to an original one since they might be modified during save. Also noticed image format planes detection didn't work properly from an image buffer. Made it so save operator works fine now, but also marked a TODO in BKE_imbuf_to_image_format() which needs to be investigated further.
2013-12-18Comment fix to previous commitAntony Riakiotakis
2013-12-18Fix T37177, sculpting can act on opposite side of mesh in orthographic camera.Antony Riakiotakis
Summary: Issue here most probably is that the start point in ray-casting is too far away from the mesh. As a result the triangle intersection code can sometimes miss the ray intersection. To solve this, we project the ray segment to the boundary of the root node. Reviewers: brecht, sergey, campbellbarton Reviewed By: brecht Maniphest Tasks: T37177 Differential Revision: http://developer.blender.org/D115
2013-12-18Style Cleanup: minor edits in recent changesCampbell Barton
2013-12-18Style CleanupCampbell Barton
2013-12-18Game Engine: Level of detail support and toolsDaniel Stokes
Levels of detail can be added and modified in the object panel. The object panel also contains new tools for generating levels of detail, setting up levels of detail based on object names (useful for importing), and clearing an object's level of detail settings. This is meant as a game engine feature, though the level of details settings can be previewed in the viewport. Reviewed By: moguri, nexyon, brecht Differential Revision: http://developer.blender.org/D109
2013-12-17Code Cleanup: comment unused functionsCampbell Barton
2013-12-17Changes to partial update during renderingSergey Sharybin
Summary: Mainly addressed to solve old TODO with color managed fallback to CPU mode when displaying render result during rendering. That fallback was caused by the fact that partial image update was always acquiring image buffer for composite output and was only modifying display buffer directly. This was a big issue for Cycles rendering which renders layers one by one and wanted to display progress of each individual layer. This lead to situations when display buffer was based on what Cycles passes via RenderResult and didn't take layer/pass from image editor header into account. Now made it so image buffer which partial update is operating with always corresponds to what is set in image editor header. To make Cycles displaying progress of all the layers one by one made it so image_rect_update switches image editor user to newly rendering render layer. It happens only once when render engine starts rendering next render layer, so should not be annoying for navigation during rendering. Additional change to render engines was done to make it so they're able to merge composite output to final result without marking tile as done. This is done via do_merge_result argument to end_result() callback. This argument is optional so should not break script compatibility. Additional changes: - Partial display update for Blender Internal now happens from the same thread as tile rendering. This makes it so display conversion (which could be pretty heavy actually) is done in separate threads. Also gives better UI feedback when rendering easy scene with small tiles. - Avoid freeing/allocating byte buffer for render result if it's owned by the image buffer. Only mark it as invalid for color management. Saves loads of buffer re-allocations in cases when having several image editors opened with render result. This change in conjunction with the rest of the patch gave around 50%-100% speedup of render time when displaying non-combined pass during rendering on my laptop. - Partial display buffer update was wrong for buffers with number of channels different from 4. - Remove unused window from RenderJob. - Made image_buffer_rect_update static since it's only used in single file. Reviewers: brecht Reviewed By: brecht CC: dingto Differential Revision: http://developer.blender.org/D98
2013-12-17Fix T37718: Texture compression missingSergey Sharybin
Make sure image will saved as (not over) after changing it's type to Generated by clearing image's path in signal handler.
2013-12-17Code Cleanup: comment unused defineCampbell Barton
2013-12-17Fix for possible NULL pointer use in brush image samplingCampbell Barton
2013-12-16Fix for out-of-bounds memcpy() when adding a materialCampbell Barton
2013-12-16UI: Tabs categories for panels (D75)Campbell Barton
- works by defining panel categories, currently restricted to the toolbar. - no panels define bl_categories yet, so no user visible changes since tabs only show when there are multiple. - panel pinning is available in rmb menu or alt+lmb.
2013-12-16Fix T37826: Opening a new image in the image editorSergey Sharybin
Cast dimensions to size_t before multiplication. Also made add_ibuf_size survive cases when image buffer allocation failed.
2013-12-16Missing NULL-pointer check in BKE_image_free_anim_ibufsSergey Sharybin
2013-12-14Curves: Skip 3dtext & 2d-curve filling when fill is set to 'None'Campbell Barton
Otherwise was impossible to have unfilled curves unless extrude was set
2013-12-14Code cleanup: Remove "TexFace to Material Convert", from the file menu. This ↵Thomas Dinges
was used for conversion from older 2.5x files. The do_version() code is still there and functioning though.
2013-12-13Interface / Modifiers: Don't show cage placeholder in modifier header, if ↵Thomas Dinges
the current modifier does not support it or the cage is disabled (like Subsurf 0). This way we save some space but still avoid the jumping around while changing settings in the header itself. Thanks to Brecht for help on this. :)
2013-12-13Curve Handle Recalculate (Ctrl+N)Campbell Barton
T37799 Patch from Simon Repp with added option to recalculate handle lengths.
2013-12-13Image cache rewrite to using generic movie cacheSergey Sharybin
Summary: Behaves very much the same as cache for Movie Clip datablock: - Image now have `MovieCache *cache` field which replaced legacy `ListBase ibufs`. This allows image datablock to easily keep of image buffers which are owned by itself. This field isn't saved to the file and getting restored on undo steps. However, cache limit is global for movies, sequences and image datablocks now. So overall cached image buffers size will not go above cache limit size in user preferences. - Image buffers which are marked as BITMAPDIRTY will never be freed from the cache. - Added utility function to iterate over image buffers saved in movie cache. - Movie cache cleanup check callback now have ImBuf argument which can be used in a condition of cleanup. - Added some utility functions which replaces legacy ibufs iterations with image cache iteration which happens from inside a lock. - Fixed `image_mem_size()` which was only counting one of the buffers if both float and byte buffer present. Additional notes: - `BKE_image_get_first_ibuf()` is rather stupid, but direct access to ibufs->first was also the same stupid idea. Would consider avoid this function is another project. - There are some places which doesn't look threadsafe, but they already were not so much threadsafe anyway before. So think not a big deal with solving this later. Finally solves infinite memory usage by image sequences! :) Reviewers: brecht, campbellbarton Reviewed By: brecht CC: sebastian_k Differential Revision: http://developer.blender.org/D95
2013-12-12Fix T37595: Switching modal transform broke with trackball rotation.Campbell Barton
Id properties may have different sized "values" array depending on the transform operator
2013-12-12Code Cleanup: use const's and bools for idpropsCampbell Barton
2013-12-12Code cleanup: indent preprocessor directives inside #ifdefSergey Sharybin
2013-12-12Mesh API: Add BKE_mesh_origindex_map_createCampbell Barton
This API function lets original data loop over its derived data, Use for vertex paint, replacing custom function.
2013-12-12Code Cleanup: move mesh mapping functions into their own file/headerCampbell Barton
2013-12-11Move curve's boundbox and texspace calculation out of modifier stackSergey Sharybin
There were several issues with how bounding box and texture space are calculated: - This was done at the same time as applying modifiers, meaning if several objects are sharing the same curve datablock, bounding box and texture space will be calculated multiple times. Further, allocating bounding box wasn't safe for threading. - Bounding box and texture space were evaluated after pre-tessellation modifiers are applied. This means Curve-level data is actually depends on object data, and it's really bad because different objects could have different modifiers and this leads to conflicts (curve's data depends on object evaluation order) and doesn't behave in a predictable way. This commit moves bounding box and texture space evaluation from modifier stack to own utility functions, just like it's was done for meshes. This makes curve objects update thread-safe, but gives some limitations as well. Namely, with such approach it's not so clear how to preserve the same behavior of texture space: before this change texture space and bounding box would match beveled curve as accurate as possible. Old behavior was nice for quick texturing -- in most cases you didn't need to modify texture space at all. But texture space was depending on render/preview settings which could easily lead to situations, when final result would be far different from preview one. Now we're using CV points coordinates and their radius to approximate the bounding box. This doesn't give the same exact texture space, but it helps a lot keeping texture space in a nice predictable way. We could make approximation smarter in the future, but fir now added operator to match texture space to fully tessellated curve called "Match Texture Space". Review link: https://codereview.appspot.com/15410043/ Brief description: http://wiki.blender.org/index.php/User:Nazg-gul/GSoC-2013/Results#Curve_Texture_Space
2013-12-11User Interface: Align number buttons labels to the left, number rightCampbell Barton
2013-12-10Fix for fix: Paths and copying objectCampbell Barton
Fix for T37471 made path copying modify local paths, now apply the same logic used for save-as.
2013-12-10DNA Deprecation: add DNA_DEPRECATED_GCC_POISON for enum/structs.Campbell Barton
also fully remove freestyle raycasting_algorithm
2013-12-10Refactoring/cleanup, borrowed from soc-2013-paint branch.Antony Riakiotakis
* Move symmetry options to the paint struct (where all paint systems can make use of it) * Rename draw_pressure to stroke_active. This is what is really checked on those occasions that this is used. Also move turning on/off of this option to the stroke level and avoid doing it on every stroke system. * Rename BRUSH_RESTORE_MESH to BRUSH_DRAG_DOT. In image painting this won't restore any mesh, so better have a name that is directly linked to what the flag actually does.
2013-12-09Compositor node preview:Jeroen Bakker
moved the hide preview logic to a method on bNodeTreeType. This way the node.c keeps clean, but logic could still be shared. Implementing this per node, can lead to future errors.
2013-12-09Enhancement: By default do not show the previews of composite nodesJeroen Bakker
only input nodes will show the preview by default.
2013-12-09Code Cleanup: use ELEM macro when checking object typeCampbell Barton
2013-12-09Fix T37712: Point cache index lookup crashed with 0 points stored.Lukas Tönne
The BKE_ptcache_mem_index_find is using unsigned ints for binary search "high" values - but this leads to integer overflow if the totpoint number is 0 and causes invalid array access.
2013-12-09Lattice API: add BKE_lattice_index_flip, BKE_lattice_bitmap_from_flagCampbell Barton
2013-12-08Util-defines: avoid multiple calculation/access for MIN/MAX macrosCampbell Barton
2013-12-08Add themable colors for edges in UV editor. Reuse WIRE_EDIT for outlinesAntony Riakiotakis
and EDGE_SELECT theme colors for selected edges.
2013-12-07Particles: change material picking from index number in UI to menu with ↵Geoffroy Krantz
materials. Also fix material slot index not being properly initialized to 1, this got clamped from zero only on drawing the UI. Reviewed By: brecht Differential Revision: http://developer.blender.org/D55
2013-12-05Fix T37698: Crash from invalid context access when freeing customLukas Tönne
python nodes on Blender exit. The nodeFreeNode function is calling a customizable freefunc callback, which can be implemented by python. However, the context is invalid when using this callback while the node tree data block is freed on exit. Luckily it is also not necessary: When freeing the bNodeTree data blocks all that is needed is freeing of the DNA data, no other side effects should happen. So now disable the api callbacks when freeing nodes in the ntreeFreeTree function. Also some minor cleanup: checking node->typeinfo is not necessary, all nodes will always have a valid typeinfo pointer - if a node type is unknown this will be a stub bNodeType to avoid the need for such checks.
2013-12-03Cleanup: Internal degrees removal.Bastien Montagne
This patch changes most of the reamining degrees usage in internal code into radians. I let a few which I know off asside, for reasons explained below - and I'm not sure to have found out all of them. WARNING: this introduces forward incompatibility, which means files saved from this version won't open 100% correctly in previous versions (a few angle properties would use radians values as degrees...). Details: - Data: -- Lamp.spotsize: Game engine exposed this setting in degrees, to not break the API here I kept it as such (using getter/setter functions), still using radians internally. -- Mesh.smoothresh: Didn't touch to this one, as we will hopefully replace it completely by loop normals currently in dev. - Modifiers: -- EdgeSplitModifierData.split_angle, BevelModifierData.bevel_angle: Done. - Postprocessing: -- WipeVars.angle (sequencer's effect), NodeBokehImage.angle, NodeBoxMask.rotation, NodeEllipseMask.rotation: Done. - BGE: -- bConstraintActuator: Orientation type done (the minloc[0] & maxloc[0] cases). Did not touch to 'limit location' type, it can also limit rotation, but it exposes through RNA the same limit_min/limit_max, which hence can be either distance or angle values, depending on the mode. Will leave this to BGE team. -- bSoundActuator.cone_outer_angle_3d, bSoundActuator.cone_inner_angle_3d: Done (note I kept degrees in BGE itself, as it seems this is the expected value here...). -- bRadarSensor.angle: Done. Reviewers: brecht, campbellbarton, sergey, gaiaclary, dfelinto, moguri, jbakker, lukastoenne, howardt Reviewed By: brecht, campbellbarton, sergey, gaiaclary, moguri, jbakker, lukastoenne, howardt Thanks to all! Differential Revision: http://developer.blender.org/D59
2013-12-03Fix T37670: Paint mode + procedural map colours errorSergey Sharybin
Summary: Seems to be known TODO in the code, but no idea why it was never solved, especially since tweak is so much easy. It might be arguable that we need to support painting color space, but it's still much better to convert to sRGB space. It's gonna to cover 90% of cases anyway. Reviewers: campbellbarton, brecht Reviewed By: brecht Maniphest Tasks: T37670 Differential Revision: http://developer.blender.org/D65
2013-12-03Code Cleanup: remove redundant/misleading NULL checksCampbell Barton
2013-12-03Code Cleanup: use BLI_strncpy when copying into fixed sized buffersCampbell Barton
2013-12-02Blender Font (BLF): add length argument to string width/height functionsCampbell Barton
This also fixes a crash editing buttons longer then UI_MAX_DRAW_STR
2013-12-02MemArena: use size_t instead of int for alloc args and internal storage.Campbell Barton
also add BLI_memarena_calloc to be used when calloc isnt enabled for the arena.
2013-12-01Fix T37667: rotational difference driver target marked invalid even though ↵Brecht Van Lommel
valid.
2013-12-01Cleanup: remove deprecated old Lamp.shadspotsize from code.Bastien Montagne
Was not used anymore, except in Collada import/export, but without any conversion code. Suggested by Brecht in comments of D59.