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
2019-11-18Fix building on NetBSDCampbell Barton
2019-08-14Eevee: Remove Additive & Multiply Blend modeClément Foucault
This commit also provide a compatibility code that will convert old materials using Additive or Multiply Blend mode to their node equivalent. This conversion is only done on outputs that are enabled for eevee.
2019-04-24Cycles: move shader node versioning code to CBrecht Van Lommel
Shader nodes are now shared with Eevee, so makes more sense to have it in the core and not be Cycles specific. Fix T62415: issues with append/link of old Cycles settings.
2019-04-24Nodes: better integrate node init and versioning in file readingBrecht Van Lommel
Node versioning code was added before there was a mechanism to do versioning after lib linking. Now integrate with that system and make it less of a strange exception. Node versioning is now skipped on undo, like other versioning code.
2019-04-24Haiku: build fixCampbell Barton
D4693 by @miqlas
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-03-19readfile: add off64_t typedef for __APPLE__Campbell Barton
2019-03-19Fix T62707: opening blend files over 2gb on win32 failsCampbell Barton
Regression in 358e07f447e9ed7 for ms-windows since off_t is an int32_t even on 64bit systems causing files over 2gb not to load. Poison off_t so this doesn't happen again.
2019-03-03Cleanup: rename FileData.listbase -> bhead_listCampbell Barton
Having the name matching the type isn't so meaningful.
2019-02-24readfile: use regular file access when not a gzipCampbell Barton
Allows for different behavior w/ compressed files, will also make it simpler to support other compression types, see: T56162
2019-02-22readfile: support blend files over 2gbCampbell Barton
Should work for 4gb+ files too however I wasn't able to test that.
2019-02-22readfile: reduce memory usage at load timeCampbell Barton
Delay loading all DATA sections of the blend file until they're needed. Loading all data-blocks caused high peak memory usage especially with libraries - since a lot of data may exist which isn't used directly. In one test (spring project: 10_010_A.anim.blend), peaked at ~12.5gig, dropping back to ~2.5gig once loaded. With this change peaks memory usage reaches ~2.7gig while loading. Besides this there are some minor gains from not having to read data from the file-system and we can skip an alloc + memcpy reading data written with the same version of Blender.
2019-02-22Cleanup: rename seek to file_offsetCampbell Barton
Prepare for seek callback to be added.
2019-02-22Cleanup: make BHeadN private in readfile.cCampbell Barton
Also add macro for accessing BHeadN from BHead.
2019-02-22Missed last commitCampbell Barton
Harmless but not renamed as intended.
2019-02-22Cleanup: rename readfile API functionsCampbell Barton
- blo_bhead_first (was blo_firstbhead) - blo_bhead_next (was blo_nextbhead) - blo_bhead_prev (was blo_prevbhead) - blo_bhead_id_name (was bhead_id_name) - blo_filedata_free (was blo_freefiledata) - blo_filedata_from_file (was blo_openblenderfile) - blo_filedata_from_memory (was blo_openblendermemory) - blo_filedata_from_memfile (was blo_openblendermemory)
2019-02-22Missed last commitCampbell Barton
2019-02-22Cleanup: comments, use bool for 'eof' variableCampbell Barton
Also remove unused members headerdone, inbuffer & filedes, use typed enum for file data flags.
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-12DNA: support versioning structs & struct membersCampbell Barton
This is only to be used rarely because it's not forwards compatible. Replace version patching of old 2.80 DNA with a more generic API.
2019-02-11Cleanup: use 'struct Main' in headerCampbell Barton
Causes errors including in some cases.
2019-02-10Cleanup: unused struct memberCampbell Barton
Also replace intptr_t -> int (no good reason to cast to intptr here).
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2019-01-28Cleanup: sort forward declarations of enum & structCampbell Barton
Done using: source/tools/utils_maintenance/c_sort_blocks.py
2018-07-10Eevee: LightCache: Initial ImplementationClément Foucault
This separate probe rendering from viewport rendering, making possible to run the baking in another thread (non blocking and faster). The baked lighting is saved in the blend file. Nothing needs to be recomputed on load. There is a few missing bits / bugs: - Cache cannot be saved to disk as a separate file, it is saved in the DNA for now making file larger and memory usage higher. - Auto update only cubemaps does update the grids (bug). - Probes cannot be updated individually (considered as dynamic). - Light Cache cannot be (re)generated during render.
2018-06-29Merge branch 'master' into blender2.8Campbell Barton
2018-06-29Cleanup: trailing newlinesCampbell Barton
2018-06-17Merge branch 'master' into blender2.8Campbell Barton
2018-06-17Cleanup: trailing space for blenloaderCampbell Barton
2018-06-05Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenkernel/intern/blendfile.c source/blender/blenloader/intern/readfile.h source/blender/blenloader/intern/versioning_250.c source/blender/blenloader/intern/versioning_260.c source/blender/blenloader/intern/versioning_270.c source/blender/blenloader/intern/versioning_legacy.c source/blender/editors/render/render_shading.c source/blender/makesrna/intern/rna_movieclip.c source/blender/render/intern/source/pipeline.c source/blender/render/intern/source/voxeldata.c
2018-06-05Cleanup: use new accessors to blendfile path (Main.name).Bastien Montagne
2017-03-15Merge branch 'master' into blender2.8Campbell Barton
2017-03-15Load user-preferences before startup fileCampbell Barton
Internal change needed for template support. Loading the user preferences first so it's possible for preferences to control startup behavior. In general it's useful to load preferences before data-files, so we know security settings for eg.
2017-02-07Render Layers and Collections (merge from render-layers)Dalai Felinto
Design Documents ---------------- * https://wiki.blender.org/index.php/Dev:2.8/Source/Layers * https://wiki.blender.org/index.php/Dev:2.8/Source/DataDesignRevised User Commit Log --------------- * New Layer and Collection system to replace render layers and viewport layers. * A layer is a set of collections of objects (and their drawing options) required for specific tasks. * A collection is a set of objects, equivalent of the old layers in Blender. A collection can be shared across multiple layers. * All Scenes have a master collection that all other collections are children of. * New collection "context" tab (in Properties Editor) * New temporary viewport "collections" panel to control per-collection visibility Missing User Features --------------------- * Collection "Filter" Option to add objects based on their names * Collection Manager operators The existing buttons are placeholders * Collection Manager drawing The editor main region is empty * Collection Override * Per-Collection engine settings This will come as a separate commit, as part of the clay-engine branch Dev Commit Log -------------- * New DNA file (DNA_layer_types.h) with the new structs We are replacing Base by a new extended Base while keeping it backward compatible with some legacy settings (i.e., lay, flag_legacy). Renamed all Base to BaseLegacy to make it clear the areas of code that still need to be converted Note: manual changes were required on - deg_builder_nodes.h, rna_object.c, KX_Light.cpp * Unittesting for main syncronization requirements - read, write, add/copy/remove objects, copy scene, collection link/unlinking, context) * New Editor: Collection Manager Based on patch by Julian Eisel This is extracted from the layer-manager branch. With the following changes: - Renamed references of layer manager to collections manager - I doesn't include the editors/space_collections/ draw and util files - The drawing code itself will be implemented separately by Julian * Base / Object: A little note about them. Original Blender code would try to keep them in sync through the code, juggling flags back and forth. This will now be handled by Depsgraph, keeping Object and Bases more separated throughout the non-rendering code. Scene.base is being cleared in doversion, and the old viewport drawing code was poorly converted to use the new bases while the new viewport code doesn't get merged and replace the old one. Python API Changes ------------------ ``` - scene.layers + # no longer exists - scene.objects + scene.scene_layers.active.objects - scene.objects.active + scene.render_layers.active.objects.active - bpy.context.scene.objects.link() + bpy.context.scene_collection.objects.link() - bpy_extras.object_utils.object_data_add(context, obdata, operator=None, use_active_layer=True, name=None) + bpy_extras.object_utils.object_data_add(context, obdata, operator=None, name=None) - bpy.context.object.select + bpy.context.object.select = True + bpy.context.object.select = False + bpy.context.object.select_get() + bpy.context.object.select_set(action='SELECT') + bpy.context.object.select_set(action='DESELECT') -AddObjectHelper.layers + # no longer exists ```
2017-01-26Compositor: Make HSV node inputs a real socketsSergey Sharybin
This is much more flexible solution which will allow doing some more procedural features. Reviewers: brecht, dfelinto, mont29 Reviewed By: mont29 Subscribers: Severin Differential Revision: https://developer.blender.org/D2403
2016-07-21Cleanup: use const, move comments to enumCampbell Barton
2016-07-12writefile: reuse SDNA between writesCampbell Barton
Avoids decoding the SDNA string every undo step.
2016-06-06Cleanup: use const for old member in OldNew structCampbell Barton
2016-02-01Cleanup: FileData->flags: Convert defines to anonymous enum.Bastien Montagne
2016-01-16Cleanup: use enum constant for DNA comparisonCampbell Barton
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-03-28Cleanup: redundant struct declarationsCampbell Barton
2015-03-12D1171: Use GHash for BHead idname lookupsCampbell Barton
This patch avoids looping over bhead's linked list when looking up values by name. Used during appaned and library loading. Gives noticeable overall speedup loading files that used libraries. (nearly 2x on some Mango files)
2015-03-12Cleanup: use POINTER_OFFSET macroCampbell Barton
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-03-05Move do-versions functions for 2.70Campbell Barton
2013-11-29Move 2.6x versioning code to own fileSergey Sharybin
Summary: Makes readfile.c more clear and easier to navigate in. We would need to do such a move when we'll do 2.70 bump anyway. So better be prepared. In fact, as soon 2.70 bumo is done i would think we'd better create versioning_270 file and do version code there. Otherwise readfile.c will grow up dramatically again. Reviewers: brecht, campbellbarton Reviewed By: brecht Differential Revision: http://developer.blender.org/D60
2013-03-18Merge of the PyNodes branch (aka "custom nodes") into trunk.Lukas Toenne
PyNodes opens up the node system in Blender to scripters and adds a number of UI-level improvements. === Dynamic node type registration === Node types can now be added at runtime, using the RNA registration mechanism from python. This enables addons such as render engines to create a complete user interface with nodes. Examples of how such nodes can be defined can be found in my personal wiki docs atm [1] and as a script template in release/scripts/templates_py/custom_nodes.py [2]. === Node group improvements === Each node editor now has a tree history of edited node groups, which allows opening and editing nested node groups. The node editor also supports pinning now, so that different spaces can be used to edit different node groups simultaneously. For more ramblings and rationale see (really old) blog post on code.blender.org [3]. The interface of node groups has been overhauled. Sockets of a node group are no longer displayed in columns on either side, but instead special input/output nodes are used to mirror group sockets inside a node tree. This solves the problem of long node lines in groups and allows more adaptable node layout. Internal sockets can be exposed from a group by either connecting to the extension sockets in input/output nodes (shown as empty circle) or by adding sockets from the node property bar in the "Interface" panel. Further details such as the socket name can also be changed there. [1] http://wiki.blender.org/index.php/User:Phonybone/Python_Nodes [2] http://projects.blender.org/scm/viewvc.php/trunk/blender/release/scripts/templates_py/custom_nodes.py?view=markup&root=bf-blender [3] http://code.blender.org/index.php/2012/01/improving-node-group-interface-editing/
2013-03-17use const pointers for file loading and booleans for animation system return ↵Campbell Barton
values passed as pointers.