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
2020-02-20Cleanup: use named unsigned types in the Python APICampbell Barton
2020-02-10Cleanup/refactor: Rename `BKE_library` files to `BKE_lib`.Bastien Montagne
Note that `BKE_library.h`/`library.c` were renamed to `BKE_lib_id.h`/`lib_id.c` to avoid having a too generic name here. Part of T72604.
2020-01-23CMake: Refactor external dependencies handlingSergey Sharybin
This is a more correct fix to the issue Brecht was fixing in D6600. While the fix in that patch worked fine for linking it broke ASAN runtime under some circumstances. For example, `make full debug developer` would compile, but trying to start blender will cause assert failure in ASAN (related on check that ASAN is not running already). Top-level idea: leave it to CMake to keep track of dependency graph. The root of the issue comes to the fact that target like "blender" is configured to use a lot of static libraries coming from Blender sources and to use external static libraries. There is nothing which ensures order between blender's and external libraries. Only order of blender libraries is guaranteed. It was possible that due to a cycle or other circumstances some of blender libraries would have been passed to linker after libraries it uses, causing linker errors. For example, this order will likely fail: libbf_blenfont.a libfreetype6.a libbf_blenfont.a This change makes it so blender libraries are explicitly provided their dependencies to an external libraries, which allows CMake to ensure they are always linked against them. General rule here: if bf_foo depends on an external library it is to be provided to LIBS for bf_foo. For example, if bf_blenkernel depends on opensubdiv then LIBS in blenkernel's CMakeLists.txt is to include OPENSUBDIB_LIBRARIES. The change is made based on searching for used include folders such as OPENSUBDIV_INCLUDE_DIRS and adding corresponding libraries to LIBS ion that CMakeLists.txt. Transitive dependencies are not simplified by this approach, but I am not aware of any downside of this: CMake should be smart enough to simplify them on its side. And even if not, this shouldn't affect linking time. Benefit of not relying on transitive dependencies is that build system is more robust towards future changes. For example, if bf_intern_opensubiv is no longer depends on OPENSUBDIV_LIBRARIES and all such code is moved to bf_blenkernel this will not break linking. The not-so-trivial part is change to blender_add_lib (and its version in Cycles). The complexity is caused by libraries being provided as a single list argument which doesn't allow to use different release and debug libraries on Windows. The idea is: - Have every library prefixed as "optimized" or "debug" if separation is needed (non-prefixed libraries will be considered "generic"). - Loop through libraries passed to function and do simple parsing which will look for "optimized" and "debug" words and specify following library to corresponding category. This isn't something particularly great. Alternative would be to use target_link_libraries() directly, which sounds like more code but which is more explicit and allows to have more flexibility and control comparing to wrapper approach. Tested the following configurations on Linux, macOS and Windows: - make full debug developer - make full release developer - make lite debug developer - make lite release developer NOTE: Linux libraries needs to be compiled with D6641 applied, otherwise, depending on configuration, it's possible to run into duplicated zlib symbols error. Differential Revision: https://developer.blender.org/D6642
2019-12-20Cleanup: remove redundant 'char *' castsCampbell Barton
2019-10-07Fix T70537: Documentation: bpygpu_offscreen_draw_view3d_doc not up to dateUlysse Martin
2019-09-13Cleanup: unused headers (GPU)Campbell Barton
2019-09-11Depsgraph: Pass bmain to depsgraph object creationSergey Sharybin
Currently unused, but will allow to keep of an owner of the depsgraph. Could also simplify other APIs in the future by avoiding to pass bmain explicitly to relation update functions and things like that.
2019-08-02Cleanup: doxy sectionsCampbell Barton
2019-08-01Cleanup: misc spelling fixesCampbell Barton
T68035 by @luzpaz
2019-06-06Python: GPU Offscreen RenderingJeroen Bakker
When using python offscreen rendering the background was not drawn in EEVEE. Users would expect that when calling the `draw_view3d` method that it shows the same as in the 3d viewport. Seems to be a difference between the meaning of draw_background in b279 and b280. In B279 the world background would be drawn. In B280 the transparency is changed. Reviewed By: campbellbarton, fclem Maniphest Tasks: T61768 Differential Revision: https://developer.blender.org/D5022
2019-06-05Python GPU Shader: Fix crash when uniform is not found.mano-wii
Error in string format.
2019-05-29Fix T65005: Missing "LINES_ADJ" and "TRIS_ADJ" in the GPU Python API.mano-wii
2019-05-17Cycles/Eevee: unify depth of field settings for camerasJeroen Bakker
There is now a checkbox to enable/disable depth of field per camera. For Eevee this replace the scene level setting. For Cycles there is now only an F-Stop value, no longer a Radius. Existing files are converted based on Cycles or Eevee being set in the scene. Differential Revision: https://developer.blender.org/D4882
2019-05-03Revert "Cleanup: add semicolon after PyObject_VAR_HEAD"Campbell Barton
This reverts commit a01bcfa6366f893fbc8fdbf537d91ece4832ea03. This causes MSVC2019 build to fail with error C2059 Unfortunately this means we have to put up with bad formatting in Python structs.
2019-05-03Cleanup: add semicolon after PyObject_VAR_HEADCampbell Barton
clang-format doesn't expand macros, add semicolon to prevent misleading formatting.
2019-04-29Cleanup: comments (long lines) in pythonCampbell Barton
2019-04-24Cleanup: sort CMake include pathsCampbell Barton
2019-04-17ClangFormat: format '#if 0' code in source/Campbell Barton
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-04-14CMake: prepare for BLENDER_SORTED_LIBS removalCampbell Barton
No functional change, this adds LIB definition and args to cmake files. Without this it's difficult to migrate away from 'BLENDER_SORTED_LIBS' since there are many platforms/configurations that could break when changing linking order. Manually add and enable WITHOUT_SORTED_LIBS to try building without sorted libs (currently fails since all variables are empty). This check will eventually be removed. See T46725.
2019-03-29Cleanup: style, use braces for the Python APICampbell Barton
2019-03-29GPU: Fix color difference when rendering to gpu_py_offscreenClément Foucault
Now we do the color management inside the Draw manager and output CM byte buffer.
2019-03-19Cleanup: comment blocksCampbell Barton
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-11Cleanup: comment indentation & spellingCampbell Barton
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-05Cleanup: remove contributors for CMake filesCampbell Barton
Following removal from C source code. See: 8c68ed6df16d8893
2019-02-03Cleanup: trailing commasCampbell Barton
Needed for clan-format not to wrap onto one line.
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-29Cleanup: replace attrib w/ attrCampbell Barton
Also rename GPUVertexAttribs to GPUVertAttrLayers, avoids confusion with GPUVertAttr which isn't closely related.
2019-01-26Cleanup: blank lines over doxy headersCampbell Barton
2019-01-26Cleanup: remove redundant BKE/BLI/BIF headersCampbell Barton
2019-01-23Cleanup: use eGPU prefix for GPU enum typesCampbell Barton
2019-01-17GPU: Rename GPU_shader_get_uniform to GPU_shader_get_uniform_ensureClément Foucault
This is in order to make the API more multithread friendly inside the draw manager. GPU_shader_get_uniform will only serve to query the shader interface and not do any GL call, making it threadsafe. For now it only print a warning if the uniform was not queried before.
2019-01-02Cleanup: py-gpu error checksCampbell Barton
Move gpu initialization checks to the start of each function instead of mixing with argument parsing.
2019-01-02Revert file rename from T59773 fixCampbell Barton
Mixing file rename with other changes should be avoided. Using 'module_py_api' convention here is in keeping with imbuf, idprop, blf & bmesh. No reason for gpu to have a different convention.
2019-01-02Fix T59773: Raise exception if the gpu module is used in backgound mode.mano-wii
Instead of crashing, an error message is displayed if a function of the gpu module is called without a GPU context. Reviewers: brecht, campbellbarton, JacquesLucke, mont29 Subscribers: abdelmatinboulbayam, amir.shehata Differential Revision: https://developer.blender.org/D4143
2018-11-20Cleanup: style, unusedCampbell Barton
2018-11-19PyAPI: GPUOffscreen: Add context manager for the `bind` method to work with ↵mano-wii
the `with` statement. Differential Revision: https://developer.blender.org/D3918
2018-11-19Py API Docs: Fix wrong typeJacques Lucke
2018-11-15Py API: Fix documentation/actual behavior missmatch in gpu.matrixJacques Lucke
2018-11-15Py API Docs: Fix formattingJacques Lucke
2018-11-14minor cleanupJacques Lucke
2018-11-14minor cleanupJacques Lucke
2018-11-14minor api docs fixJacques Lucke
2018-11-14Py API: Remove GPUShader.transform_feedback_enable/disableJacques Lucke
It couldn't really be used in the current implementation, so it is better to remove it instead of confusing everyone.
2018-11-14Cleanup: python doc-stringsCampbell Barton
Indentation & trailing space.
2018-11-13Py API: fix parameter order in offscreen.draw_view3dJacques Lucke
2018-11-13Py API Docs: GPUVertFormat documentationJacques Lucke
2018-11-13Py API Docs: CleanupJacques Lucke