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
2015-10-22Version Bump: 2.76.2, deprecate valuesCampbell Barton
- RegionView3D.view RV3D_VIEW_PERSPORTHO only ever set on initialization, never checked for. - Lamp.type LA_YF_PHOTON from old 2.4x yafray files. Also iniitalize movie-clip + grease-pencil theme colors.
2015-10-22Cleanup: remove script ID-typesCampbell Barton
Unused since 2.4x and unlikely to be reintroduced as ID-types.
2015-10-20First step to handle missing libs/datablocks when reading a file.Bastien Montagne
Idea is, instead of ignoring completely missing linked datablocks, to create void placeholders for them. That way, you can work on your file, save it, and find again your missing data once lib becomes available again. Or you can edit missing lib's path (in Outliner), save and reload the file, and you are done. Also, Outliner now shows broken libraries (and placeholders) with a 'broken lib' icon. Future plans are also to be able to relocate missing libs and reload them at runtime. Code notes: - Placeholder ID is just a regular datablock of same type as expected linked one, with 'default' data, and a LIB_MISSING bitflag set. - To allow creation of such datablocks, creation of datablocks in BKE was split in two step: + Allocation of memory itself. + Setting of all internal data to default values. See also the design task (T43351). Reviewed by @campbellbarton, thanks a bunch! Differential Revision: https://developer.blender.org/D1394
2015-10-15Cleanup: BLO_read: linking API arg order and name.Bastien Montagne
linking API funcs would use 'name, idcode', when all other code here uses (more sensible) 'idcode, name'. Also, use 'name' arg name when we expect a bare name, without the prepended ID code, and 'idname' arg name when we expect a complete ID name. And here too, idcode shall be short, not int!
2015-10-12Cleanup & rework of BLO_linking code.Bastien Montagne
This commits does mostly two things: * Get rid of bContext parameter: I can see no real good reason to pass such a high-level data to such low-level code... It also makes it more difficult to call when you do not have a context available. * Cleanup the instantiating part. Last point is the most risky - previous code was sometimes quite confusing and hard to follow, from tests nothing behaves differently in new code, but some hidden corner case may show up. Anyway, no change in behavior is expected from this commit, if it happens please file a bugreport!
2015-10-12Cleanup: BLO: use proper typedef for expand_doit callback.Bastien Montagne
2015-10-12Cleanup: BLO: move func doc comments to definitions of functions.Bastien Montagne
Follows our conventions and makes include file itself much cleaner.
2015-10-12Cleanup in BLO API: rename 'append' funcs to 'link', since none do append, ↵Bastien Montagne
but only linking of datablocks!
2015-10-12Fix T34446: Make Local on linked mesh object: object gets removed if redo ↵Bastien Montagne
function is used. Root of the issue is that we do not re-read lib data blocks and ID placholders (ID_ID bheads) in undo context (in `blo_read_file_internal`), because `BLO_read_from_memfile` copies lib datablocks and Main data directly from oldmain. The idea being, linked data do not change from undo/redo. This is valid as long as linked data was not changed by the undo step - but if some was deleted or localized, it will be missing from oldmain, leading to data loss (note that does not only concern objects, all linkable data types can be affected, at least in theory). This commit addresses that issue by carefully mixing reuse of needed data from oldmain, and "normal" re-reading of missing one. Makes us swimming in some rather dark waters, and gives a rather non-easy-to-follow code, but it seems to work quite well, and only other solution would be to get rid of that optimization (not re-reading all libs on undo/redo), which is not acceptable. Also, thanks to @carlosdp for initial investigation of the issue. Differential Revision: https://developer.blender.org/D1485
2015-10-11Fix warnings and remove casts by adding copy_vx_vx_uchar() functions.Brecht Van Lommel
2015-10-08Fix crash loading modifiers with missing IDsSergey Sharybin
Was very visible with barcelona file from Cycles benchmark repository.
2015-10-08Modifiers: add 'cd_flag' parameter to their ID looping callbacks, neededBastien Montagne
since some IDs (objects) are not 'refcounted' while others (textures) are... Partial merge from id-remap branch.
2015-10-08Cleanup: use newlibadr_usCampbell Barton
2015-09-21Armature drawing: custom shape scale optionsCampbell Barton
- Custom scale: Avoids having multiple custom-shapes at different sizes. - Option not to use bones length: So changes in edit-mode don't resize the custom-shape.
2015-09-21Fix (unreported) Append/link code: All library datablocks could end with ↵Bastien Montagne
same name. This was broken since ages I think, did not really hurt since we usually never use libs' names to access them. Rather bad behavior however, breaking a ground rule of our ID system! And no real reason to add new libraries to new (split) Main at all, libraries are never considered linked datablocks, which means they should always be in 'main' Main->library list. Not a regression, but should be included in 2.76 imho.
2015-09-18Cleanup: remove unused WriteFile membersCampbell Barton
2015-09-13Cleanup: spellingCampbell Barton
2015-09-09Fix T45839 : Regression - Multi-layer image issues when using non-standard namesDalai Felinto
This was introduced in the fix for T44336 . The code is now what it should have been in the first place at the time of multiview commit. ImageUser->passtype is being removed in favour of bringing ImageUser->pass back. Reviewers: sergey Differential Revision: https://developer.blender.org/D1504
2015-09-09Fix (unreported) crash with undo/outliner and drivers.Bastien Montagne
To reproduce the crash: * Add some shapekeys to default cube. * Add at least on driver (can be default empty one) to a shapekey value. * **Make this driver visible in Outliner**. * Delete all shapekeys. * Undo. * Crash. Root of the issue is outliner reading code in `blo_lib_link_screen_restore()`, which would try to `restore_pointer_by_name()` for all `TreeStoreElement->id` pointers. Thing is, those id pointers are not always IDs, they can be animdata, sequence, RNA struct/property... That's really not so great design, but also has reasons like size of the struct, we have to live with it. So now: * TreeStoreElement->type defines are braught back into DNA. * There we also define a `TSE_IS_REAL_ID` macro to check whether a given TreeStoreElement actually stores an ID pointer or not. * And in Outliner read code we only try to retore pointers by name for actual ID ones, and set the others to default NULL value. Also, added clear comment to TSE types that do not store a real ID pointer!
2015-09-07Fix T46032: Crash w/ file-browser previewCampbell Barton
2015-08-31Fix T45258, impossible to select brush when removing it from 2dAntony Riakiotakis
painting. Also system added a brush every time it found no paint brush in the system which is not what we would want. Solution: * Brush panel stays visible always, regardless of whether there is a brush or not. * We search for first available brush when we find no brush in paint struct instead of always generating a new one. * Generating and searching for a brush take a mode argument now. Needed some refactoring to users of BKE_paint_init as well. * Did some style cleanups for paint mode enums. Patch is big but it's mostly argument refactoring.
2015-08-31Write thumbnail directlyCampbell Barton
BlendThumbnail matches the on-disk format, so just write directly.
2015-08-29Cleanup: set `fd->mainlist` to NULL at the end of `blo_read_file_internal()`.Bastien Montagne
This is a local var, do not try to use it later!
2015-08-28Readfile: Minor optimization in undo/redo case: do not call ↵Bastien Montagne
`do_versions_userdef` either.
2015-08-27Make .blend file thumbnail reading simpler and more coherent, read/store ↵Bastien Montagne
them when reading in background mode. Primary goal of this commit is to fix an annoying issue - when processing and saving .blend files in background mode you lose their thumbnails, since it can only be generated with an OpenGL context. Solution to that is to read .blend thumbnail while reading .blend file (only done in background mode currently), and store it in Main struct. Also, this lead to removing .blend file reading code from thumb_blend (no need to have doublons). We now have a small interface in regular reading code area, which keeps it reasonbaly light by only reading/parsing header info, and first few BHead blocks. This makes code reading .blend thumbnail about 3 to 4 times slower than previous highly specialized one in blend_thumb.c, but overall thumbnail generation of a big .blend files folder only grows of about 1%, think we can bare with it. Finally, since thumbnail is now optionally stored in Main struct, it makes it easy to allow user to define their own custom one (instead of auto-generated one). RNA API for this was not added though, accessing that kind of .blend meta-data has to be rethought a bit on a bigger level first. Reviewers: sergey, campbellbarton Subscribers: Severin, psy-fi Differential Revision: https://developer.blender.org/D1469
2015-08-26Fix T45709: Cached Hair system is not seen in 2.75Sergey Sharybin
Don't force re-distribution of cached particle systems, this doesn't cause actual evaluation of particles and there was a reason why particles are baked actually..
2015-08-21Docs: correct some commentsCampbell Barton
2015-08-18Replace 'BLO_is_a_library' by 'BLO_library_path_explode'.Bastien Montagne
This new func will be fully used by upcomming code (it mostly adds the extraction of library item name as well as library file and ID group).
2015-08-18Readfile: more efficient OldNewMap lookupsCampbell Barton
Even when lasthit can't be used to find the next address, use it as a starting point for the full array search. Gives approx 1/3 less array searching in own tests.
2015-08-18Refactor translation code out of blenfontCampbell Barton
- Add blentranslation `BLT_*` module. - moved & split `BLF_translation.h` into (`BLT_translation.h`, `BLT_lang.h`). - moved `BLF_*_unifont` functions from `blf_translation.c` to new source file `blf_font_i18n.c`.
2015-08-17Cleanup: remove unused Object.ipoflagCampbell Barton
2015-08-14Docs: comment BHead.code valuesCampbell Barton
2015-08-10Data previews: add preview to Object, Group and Scene.Bastien Montagne
This commit does not add anything yet to users, it’s purely internal one. Useful commit is next. ;)
2015-08-08Optimize reading of fcurvesSergey Sharybin
Reading fcurves wasn't really optimal because restoring fcu->group pointer was changing lasthit pointer, which required full lookup over the oldnewmap happened at the next call to newdatadr(). This reduces loading franck_sheep.blend file from ~2.2sec to 1.5sec.
2015-08-08SPeedup for particle point cache readingSergey Sharybin
Order of saving and reading particle point cache was totally different which made newdataadr() falling back to full data block list traversal for every point cache entry. This commit makes it so reading code uses the same order of reading structs and lists ad the writing code. This required to add special version of list linking which is capable of running a callback after linking a list element. This seems to be more robust approach than splitting writing code into several loops.
2015-08-01Note Editor: Auto-offset nodes on insertionJulian Eisel
Implements "Auto-offset" (called "insert offset" in code) feature for Node Editor, developed during and after LSOC :) Idea and sponsoring by Sebastian König, blendFX, Mathias Eimann, Mikavaa, Knick Design When you drop a node with at least one input and one output socket onto a an existing connection between two nodes, Auto-offset will, depending on the direction setting, automatically and animated move the left or right and all of its following nodes away to make room for the new node. The direction for offsetting can be toggled while you are moving the node by pressing „T“. The auto-offset is enabled by default but can be disabled in the header of the node-editor. The offset margin can be changed in the editing section of the User Preferences. Thanks a lot to the sponsors, and especially to Sebastian who helped *a lot* with this. That's how users can help developing Blender!
2015-07-31Replace MFace w/ vert-tri's for collision modifierCampbell Barton
Note that the collision modifier doesn't have any use for Loop indices, so to avoid duplicating the loop array too, MVertTri has been added which simply stores vertex indices (runtime only).
2015-07-29Port optimization from gooseberry branch:Antony Riakiotakis
Treat scrubbing as animation. This is checked during various updates to avoid some costly calculations.
2015-07-27Image painting 2D:Antony Riakiotakis
Deprecate wrap (BRUSH_TORUS) option, we now have paint flags for tiling and we can reuse those. Also allows seperate tiling in X/Y direction for 2D painting now. Only one tiling is allowed for now. Options can be found in new "Tiling" panel under the tools tab. For version patching, we just turn off brush wrapping, to allow reuse of the flag in the future. New option is paint mode wide instead of per brush so a brush having the old wrap option will not enable it for the whole mode in the version patch.
2015-07-26Fix T45562: Crashing pre 2.5 file with grid subdivisions set to 0Julian Eisel
Seems like the original version patch for this wasn't made correctly.
2015-07-21Fix T45471: Blend file: Bad old_addr handling in mesh's customdata writing.Bastien Montagne
Issue is rather well explained in T45471: our current customdata writing code easily generates several different blocks in blend file with same 'old' address. This is bad, because those addresses are used as 'uid' during reading process (it kind of work in Blender's own reading process, by mere luck mostly, but breaks the file specs). Solution (suggested by Campbell, thanks) implemented by this patch is to avoid duplicating everything, and instead just overwrite what we needs to skip some cdlayers on write: * the CustomData's `totlayer` number; * the CustomData's `layers` array of CustomDataLayer (keeping its original address using the `writestruct_at_address` helper). New design allows us to get completely rid of the no_free flag stuff in `write_customdata()`. Note that this implies written data is **not** directly valid from Blend PoV, since its written typemap does not match written layers (this is not an issue because typemap is rebuilt on read anyway - and it's easy to fix this if really needed). Also, the backward compatibility saving of mface data remains an issue here, see comment in code. Reviewers: sergey, campbellbarton Projects: #bf_blender Maniphest Tasks: T45471 Differential Revision: https://developer.blender.org/D1425
2015-07-18Cleanup: whitespace & break placementCampbell Barton
2015-07-10Freestyle: new stroke modifiersFolkert de Vries
This patch introduces a couple new stroke modifiers. The ones currently implemented are based on prototypes by @kjym3 and myself. The new modifiers: - Tangent - Thickness noise - Crease Angle - Simplification - Curvature 3D The documentation for these new modifier types can be found [[ http://www.blender.org/manual/render/freestyle/parameter_editor/index.html | in the manual ]]: {F134441} (left: AnisotropicThicknessShader, right: NoiseThicknessShader) {F140499} (left: Curvature 3D, right: Simplification) Author: Folkert de Vries (flokkievids) Reviewers: kjym3 Subscribers: #user_interface, plasmasolutions, kjym3 Projects: #bf_blender Differential Revision: https://developer.blender.org/D963
2015-07-06Cleanup: style, spellingCampbell Barton
2015-07-02Text effect strip for sequencer.Antony Riakiotakis
Is pretty much what it says :) Easy subtitles for everyone! Supports size, positioning, a cheap shadow effect (probably will need more work), and autocentering on x axis. Now you can go wild with long spanish names in your soap opera videos. Will probably be refined as days go by, but at least it's now ready for testing.
2015-06-29Partial fix T45156: scaling region crashCampbell Barton
'ar->winy' may not be initialized, making regions zoom in (past limits) and attempt to draw very large text (~10x10k size characters), often crashing. Fix isn't complete since it only corrects factory startup.
2015-06-26Fix crash on undoing after 8690ea6Antony Riakiotakis
Forgot to clear the mutex when reloading the scene.
2015-06-23Cleanup: styleCampbell Barton
2015-06-20Cleanup: use listbase clearCampbell Barton
2015-06-17Cleanup: duplicate includesCampbell Barton