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
2022-09-13Cleanup: spelling in commentsCampbell Barton
2022-09-09Cleanup: check for Python module in BKE_appdir_program_path_initCampbell Barton
Replace the argument with an in ifdef in BKE_appdir_program_path_init. At the time `blenkernel` didn't define WITH_PYTHON_MODULE, since it does now there is no need for an argument. With the minor benefit of fewer preprocessor checks in the main() function.
2022-09-08Fix Blender as a Python module for WIN32Campbell Barton
BKE_appdir_program_path_init would override the module path extracted from the Python module, replacing it with the Python executable. This caused the data files not to be found and the module not to load.
2022-07-28Cleanup: unused headerCampbell Barton
2022-03-18EEVEE: Add new experimental "EEVEE Next" optionClément Foucault
This is supposed to hold the latest improvement from the EEVEE rewrite branch. Note that a restart is necessary in order for the engine to appear. The registration code is a bit convoluted as it needs to be after the WM_init.
2022-02-11File headers: SPDX License migrationCampbell Barton
Use a shorter/simpler license convention, stops the header taking so much space. Follow the SPDX license specification: https://spdx.org/licenses - C/C++/objc/objc++ - Python - Shell Scripts - CMake, GNUmakefile While most of the source tree has been included - `./extern/` was left out. - `./intern/cycles` & `./intern/atomic` are also excluded because they use different header conventions. doc/license/SPDX-license-identifiers.txt has been added to list SPDX all used identifiers. See P2788 for the script that automated these edits. Reviewed By: brecht, mont29, sergey Ref D14069
2022-01-07Remove dead numaapi code in blenlibSergey Sharybin
It it rather an old experiment now which didn't pay off. The initial idea was to have main and jobs threads on fast nodes of TR2 processors. This didn't really work reliably because in Blender we need to be able to create nested threads without their affinity set. This is not how some of OS are creating nested threads, and we don't always have access to child threads to reset their affinity. So overall complexity of the initial idea implementation became too much compared to the performance gain.
2021-12-16Remove G.relbase_validCampbell Barton
In almost all cases there is no difference between `G.relbase_valid` and checking `G.main->filepath` isn't an empty string. In many places a non-empty string is already being used instead of `G.relbase_valid`. The only situation where this was needed was when saving from `wm_file_write` where they temporarily became out of sync. This has been replaced by adding a new member to `BlendFileWriteParams` to account for saving an unsaved file for the first time. Reviewed By: brecht Ref D13564
2021-12-14Cleanup: correct unbalanced doxygen groupsCampbell Barton
Also add groups in some files.
2021-11-13Fix splash screen showing on startup with files loaded by scriptsCampbell Barton
Suppressing the splash was only done when passing in an argument from the command line. Remove G.file_loaded, as it is misleading, only set once on startup, replace with G.relbase_valid which is used everywhere else to check if the file path should be used.
2021-11-01Localize image mutex lock into runtime field of Image datablockSergey Sharybin
Allows to avoid a global lock being held while reading files from disk, solving performance issues when Cycles needs to read a lot of packed images. Simple test file F11597666 Differential Revision: https://developer.blender.org/D13032
2021-10-06Cleanup: rename BKE_font.h -> BKE_vfont.hCampbell Barton
Match API naming prefix (BKE_vfont_*) and DNA_vfont_types.h.
2021-06-10Cleanup: spelling in commentsCampbell Barton
2021-06-10Windows: Use TBBMalloc for GMPErik Abrahamsson
TBBmalloc_proxy already takes care of any allocations being done from MSVC compiled code, some of the dependencies like GMP cannot be build with MSVC and we have to use mingw to build them. mingw however links against the older msvcrt.dll for its allocation needs, which TBBMallocProxy does not hook. GMP has an option to supply your own allocation functions so we can still manually redirect them to TBBMalloc. In a test-file with a boolean geometry node, this patch uses 32s effective CPU time compared to 52s before. Differential Revision: https://developer.blender.org/D11435 Reviewed by Campbell Barton, Ray Molenkamp
2021-05-11Cleanup: unnecessary extra lines for doxy sectionsCampbell Barton
2021-03-05Cleanup: spellingCampbell Barton
2020-11-09Cleanup: more renaming in the render/ module for consistencyBrecht Van Lommel
2020-11-07Cleanup: Clang-tidy else-after-returnAnkit Meel
2020-11-06Cleanup: use 'BKE_' prefix for initialization functionsCampbell Barton
2020-11-06Cleanup: replace STREQLEN with STRPREFIX for constant stringsCampbell Barton
2020-11-06Cleanup: use snake case for BLI_args APICampbell Barton
2020-10-30Cleanup: parse '--thread' as part of ARG_PASS_ENVIRONMENTCampbell Barton
While this isn't needed at the moment, it's possible the animation player uses the scheduler in the future.
2020-10-28Cleanup: update commentsCampbell Barton
Some references to argument levels were still in comments.
2020-10-28Cleanup: move WM_init & arg parsing out of if/else branchCampbell Barton
2020-10-28Cleanup: use enum for command line argument passesCampbell Barton
2020-10-27Cleanup: simplify order of initialization with argument parsingCampbell Barton
Sub-systems that use directories from BKE_appdir needed to be initialized after parsing '--env-system-datafiles'. This meant the animation player needed to call IMB_init it's self. Avoid this complication by having a pass that can be used to setup the environment before Blender's resources are accessed. This reverts the workaround from 9ea345d1cf82f
2020-10-14Cleanup: Comment formatting, grammarHans Goudey
2020-10-04Cleanup: remove outdated commentCampbell Barton
Should have been removed in b36a05bb7e794335e3415594c41d3986cdc815e8, when Python was started after reading the preferences.
2020-10-04Preferences: use the users temp directory in background modeCampbell Barton
This choice was made when preferences were not read in background mode, so the temp dir needed to be initialized with something. See bc9848f7e67c3e695403179f8bcdb78b0e5764a3. Now preferences are always read there is no reason to ignore this particular preference in background mode. Anyone wanting to do background renders that ignore their preferences can run with factory startup.
2020-10-04Fix color-management ignoring the data-path command line valueCampbell Barton
Initialize ImBuf (and color-management) after passing arguments that set environment variables such as `--env-system-datapath` This also fixes a bug where BKE_appdir logging failed since it was called before the `--log` argument was passed. Add asserts so this doesn't happen again.
2020-09-15Cleanup: make it clear WM_main isn't called in background-modeCampbell Barton
2020-09-15Fix T80774: (correction) keep MEM_init_memleak_detection call earlyCampbell Barton
2020-09-15Fix T80774: Leaks reported using '--version' command line argumentCampbell Barton
Caused by 236ca8fbe8457550.
2020-09-01USD: move library initialisation from `main()` to USD moduleSybren A. Stüvel
Initialize the USD library when used (instead of at startup), so that this can happen inside the IO/USD module. This makes calls to the USD library local to Blender's USD code. Note that failure to find the USD JSON files will now only be reported when the USD exporter is used, and not on every startup of Blender. This is the first step in cleaning up the way Blender patches and initialises the USD library. Manifest Task: https://developer.blender.org/T80320
2020-08-02Cleanup: localize creator.c definitionsCampbell Barton
As creator.c is used for the 'main' function, avoid obscure declarations being placed so prominently. - Move Blender as a Python module declarations into it's own section. - Move USD declaration to an 'extern' just before it's called.
2020-08-01Fix error in recent renameCampbell Barton
This function is defined outside of Blender.
2020-08-01Cleanup: use term init instead of initialize/initialiseCampbell Barton
The abbreviation 'init' is brief, unambiguous and already used in thousands of places, also initialize is often accidentally written with British spelling.
2020-07-24Allocator: make leak detection work with static variablesJacques Lucke
When definining static variables that own memory, you should use the "construct on first use" idiom. Otherwise, you'll get a warning when Blender exits. More details are provided in D8354. Differential Revision: https://developer.blender.org/D8354
2020-07-02Cleanup: spellingCampbell Barton
2020-06-25Cleanup: spellingCampbell Barton
2020-06-17Fix T76767: Cycles performance regression with CLI rendersRay Molenkamp
When picking a small tile size when doing a CLI render will yield many status updates being printed to the console causing a slowdown in the render process. 2.79 with the same amount of tiles did not have this slowdown. The reason for this turned out to be a debugging aid added in rBd2757d149bf2 which disabled buffering for stdout which on windows caused every single character being printed to the console to try to obtain a mutex, and worse the thread being put to sleep when this mutex was unavailable leading to poor performance. This patch changes the behaviour by only disabling the buffering in debug builds. CLI render of the default cube with 16x16 tiles at 1080p 2.83 : 37.57s now : 17.03s note: this only affected CLI renders, renders from the UI do not report this kind of information and had no such slowdown.
2020-04-30Task: Use TBB as Task SchedulerBrecht Van Lommel
This patch enables TBB as the default task scheduler. TBB stands for Threading Building Blocks and is developed by Intel. The library contains several threading patters. This patch maps blenders BLI_task_* function to their counterpart. After this patch we can add more patterns. A promising one is TBB:graph that can be used for depsgraph, draw manager and compositor. Performance changes depends on the actual hardware. It was tested on different hardwares from laptops to workstations and we didn't detected any downgrade of the performance. * Linux Xeon E5-2699 v4 got FPS boost from 12 to 17 using Spring's 04_010_A.anim.blend. * AMD Ryzen Threadripper 2990WX 32-Core Animation playback goes from 9.5-10.5 FPS to 13.0-14.0 FPS on Agent 327 , 10_03_B.anim.blend. Reviewed By: brecht, sergey Differential Revision: https://developer.blender.org/D7475
2020-04-23Fix headless build failure on macOSBrecht Van Lommel
2020-03-29Cleanup: spelling, commentsCampbell Barton
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-03-18Objects: add Volume object type, and prototypes for Hair and PointCloudBrecht Van Lommel
Only the volume object is exposed in the user interface. It is based on OpenVDB internally. Drawing and rendering code will follow in another commit. https://wiki.blender.org/wiki/Source/Objects/Volume https://wiki.blender.org/wiki/Reference/Release_Notes/2.83/Volumes Hair and PointCloud object types are hidden behind a WITH_NEW_OBJECT_TYPES build option. These are unfinished, and included only to make it easier to cooperate on development in the future and avoid tricky merges. https://wiki.blender.org/wiki/Source/Objects/New_Object_Types Ref T73201, T68981 Differential Revision: https://developer.blender.org/D6945
2020-03-08Cleanup: comments in main()Campbell Barton
Clarify references to functions.
2020-03-05Initial step for IDTypeInfo refactor 'cleanup' project.Bastien Montagne
Introduce new IDTypeInfo structure. Each ID type will have its own, with some minimal basic common info, and ID management callbacks. This patch only does it for Object type, for demo/testing purpose. Moving all existing IDs is a goal of next "cleanup Friday". Note that BKE_idcode features should then be merged back into BKE_idtype - but this will have to be done later, once all ID types have been properly converted to the new system. Another later TODO might be to try and add callbacks for file read/write, and lib_query ID usages looper. This is part of T73719. Thanks to @brecht for initial idea, and reviewing the patch. Differential Revision: https://developer.blender.org/D6966
2020-02-05T73589: Code Quality: Renaming on BKE_material.hAntonio Vazquez
Old Name New Name ========= ========= init_def_material BKE_materials_init BKE_material_gpencil_default_free BKE_materials_exit test_object_materials BKE_object_materials_test test_all_objects_materials BKE_objects_materials_test_all give_matarar BKE_object_material_array give_totcolp BKE_object_material_num give_current_material_p BKE_object_material_get_p give_current_material BKE_object_material_get assign_material BKE_object_material_assign assign_matarar BKE_object_material_array_assign give_matarar_id BKE_id_material_array give_totcolp_id BKE_id_material_num assign_material_id BKE_id_material_assign clear_matcopybuf BKE_material_copybuf_clear free_matcopybuf BKE_material_copybuf_free copy_matcopybuf BKE_material_copybuf_copy paste_matcopybuf BKE_material_copybuf_paste BKE_material_init_gpencil_settings BKE_gpencil_material_attr_init BKE_material_add_gpencil BKE_gpencil_material_add BKE_material_gpencil_get BKE_gpencil_material BKE_material_gpencil_default_get BKE_gpencil_material_default BKE_material_gpencil_settings_get BKE_gpencil_material_settings
2019-12-17Cleanup: spellingCampbell Barton