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-02Cleanup: Fix clang-tidy warnings: [readability-else-after-return]Clément Foucault
2022-09-02Cleanup: Fix clang-tidy warnings: ↵Clément Foucault
[readability-inconsistent-declaration-parameter-name]
2022-09-02Cleanup: Fix clang-tidy warnings: [modernize-use-bool-literals]Clément Foucault
2022-09-02Cleanup: Fix clang-tidy warnings: [modernize-deprecated-headers]Clément Foucault
2022-08-31Fix part of T100626: Cycles not using tiles for bakingBrecht Van Lommel
Leading to excessive memory usage compared to Blender 2.93. There's still some avoidable memory usage remaining, due to the full float buffer in the new image editor drawing and not loading the cached EXR from disk in tiles. Main difficulty was handling multi-image baking and disk caches, which is solved by associating a unique layer name with each image so it can be matched when reading back the image from the disk. Also some minor header changes to be able to use RE_MAXNAME in RE_bake.h.
2022-08-31Mesh: Move material indices to a generic attributeHans Goudey
This patch moves material indices from the mesh `MPoly` struct to a generic integer attribute. The builtin material index was already exposed in geometry nodes, but this makes it a "proper" attribute accessible with Python and visible in the "Attributes" panel. The goals of the refactor are code simplification and memory and performance improvements, mainly because the attribute doesn't have to be stored and processed if there are no materials. However, until 4.0, material indices will still be read and written in the old format, meaning there may be a temporary increase in memory usage. Further notes: * Completely removing the `MPoly.mat_nr` after 4.0 may require changes to DNA or introducing a new `MPoly` type. * Geometry nodes regression tests didn't look at material indices, so the change reveals a bug in the realize instances node that I fixed. * Access to material indices from the RNA `MeshPolygon` type is slower with this patch. The `material_index` attribute can be used instead. * Cycles is changed to read from the attribute instead. * BMesh isn't changed in this patch. Theoretically it could be though, to save 2 bytes per face when less than two materials are used. * Eventually we could use a 16 bit integer attribute type instead. Ref T95967 Differential Revision: https://developer.blender.org/D15675
2022-08-31Cleanup: quiet MSVC warning using flag flag operations on booleanCampbell Barton
While harmless it wasn't clear if other bits might be set but ignored, assign the value instead.
2022-08-30Cleanup: simplify comparison, clarify commentCampbell Barton
2022-08-29Cleanup: move Cycles display driver context handling to render moduleBrecht Van Lommel
This is highly coupled to Blender logic so doesn't belong in Cycles.
2022-08-29Cleanup: move part of render module to C++Brecht Van Lommel
2022-08-23Cleanup: match names between functions & declarationsCampbell Barton
2022-08-22Cleanup: remove dead codeCampbell Barton
2022-08-15Merge branch 'blender-v3.3-release'Sergey Sharybin
2022-08-15Fix T99955: Crash with 'Cache Result' and all render layers are disabledSergey Sharybin
Ensure render passes are allocated in the result prior to writing them. Alternative could be to not write empty passes, but that is kind of different from perspective of s one who reads the file. Differential Revision: https://developer.blender.org/D15692
2022-08-09Cleanup: use own username in code-comment tagsCampbell Barton
2022-08-05Fix: compositor stats in background mode subject to race conditionsChris Clyne
Evaluating a compositor node tree in background mode causes the stats callback to be called from multiple threads, leading to garbled output. This was causing major problems with render-farm scripts. Differential Revision: https://developer.blender.org/D15633
2022-07-15Fix workbench background render broken after recent changes from D15463Brecht Van Lommel
For Eevee the light baking can initialize OpenGL earlier, but for workbench we can't assume the backend exists here already.
2022-07-15Fix T99706: Crash rendering with headless buildsCampbell Barton
When rendering with headless builds, show an error instead of crashing. Previously GPU_backend_init was called indirectly from DRW_opengl_context_create, a new function is now called from the window manager (GPU_backend_init_once), so it's possible to check if the GPU has a back-end. This also disables the `bgl` Python module when building WITH_HEADLESS. Reviewed By: fclem Ref D15463
2022-07-15Cleanup: add utlity function to compute render resolutionBrecht Van Lommel
Instead of duplicating logic many times.
2022-06-30Cleanup: spelling in commentsCampbell Barton
2022-06-21Cleanup: removed unused Blender Internal bump/normal mapping texture codeBrecht Van Lommel
The TexResult.nor output does not appear to be used anywhere.
2022-06-17Cleanup: spelling in commentsCampbell Barton
2022-06-09Cleanup: spelling in comments & variablesCampbell Barton
2022-06-07Cleanup: spelling in comments, additional white spaceCampbell Barton
2022-06-03Cleanup: spelling in commentsCampbell Barton
2022-06-01Cleanup: remove redundant const qualifiers for scalar & enum typesCampbell Barton
2022-05-30Cleanup: Clang tidyHans Goudey
Mostly duplicate includes, also use nullptr, and using default member initializers.
2022-05-15Cleanup: Remove includes from DerivedMesh headerHans Goudey
Headers should only include other headers when absolutely necessary, to avoid unnecessary dependencies and increasing compile times. To make this change simpler, three DerivedMesh functions with a single use were removed.
2022-05-14Cleanup: Further use of const for retrieved custom data layersHans Goudey
Similar to cf69652618fefcd22b2cde9a2.
2022-05-13Cleanup: Use const when retrieving custom data layersHans Goudey
Knowing when layers are retrieved for write access will be essential when adding proper copy-on-write support. This commit makes that clearer by adding `const` where the retrieved data is not modified. Ref T95842
2022-05-13Cleanup: spelling in comments, capitalize tagsCampbell Barton
Also add missing task-ID reference & remove colon after \note as it doesn't render properly in doxygen.
2022-05-11Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-10Fix T97945: Cycles baking max distance is wrongBrecht Van Lommel
It was effectively sqrt(max_distance) before this fix. Thanks to Omar Emara for identifying the solution.
2022-05-10Cleanup: Return earlyHans Goudey
2022-04-26Cleanup: use boolean arguments and return valuesCampbell Barton
2022-04-23Bake: add UDIM tile baking supportBrecht Van Lommel
Works for both Cycles and multires bake. Triangles are baked to multiple UDIM images if they span across them, though such UV layouts are generally discouraged as there is no filtering across UDIM tiles. The bake margin currently only works within UDIM tiles. For the extend method this is logical, for the adjacent faces method it may be useful to support copying pixels from other UDIM tiles, though this seems somewhat complicated. Fixes T95190 Ref T72390
2022-04-20Cleanup: Rename CD_MLOOPCOL to CD_PROP_BYTE_COLORHans Goudey
The "PROP" in the name reflects its generic status, and removing "LOOP" makes sense because it is no longer associated with just mesh face corners. In general the goal is to remove extra semantic meaning from the custom data types.
2022-04-05Cleanup: use doxygen links to struct membersCampbell Barton
2022-04-04Cleanup: ensure space after file named in headersCampbell Barton
Add blank lines after file references to avoid them being interpreted as doc-strings the following declarations.
2022-04-01Cleanup: Use const for bounding boxes where possibleHans Goudey
2022-03-28Cleanup: Move scene.c to C++Hans Goudey
This is meant to allow using C++ data structures in this file as a performance improvement. Particularly `Vector` instead of `ListBase` for `duplilist`. This change builds and passes tests on all platforms on the buildbot.
2022-03-28Cleanup: use "num" as a suffix in: source/blender/renderCampbell Barton
See T85728
2022-03-25Cleanup: use array syntax for sizeof, zero before float suffixCampbell Barton
2022-03-24Cleanup: use "filepath" instead of "filename" for full pathsCampbell Barton
Reserve "filename" when only the name component is used.
2022-03-23Color Management: support different settings for render and compositing outputBrecht Van Lommel
The Output Properties > Output panel now has a Color Management subpanel to override scene settings. When set to Override instead of Follow Scene, there are settings to: * For OpenEXR, choose a (linear) colorspace for RGBA passes * For other file formats, use different display/view/look/exposure/gamma These settings affect animation render output, image save of renders and the compositor file output node. Additionally, the image save operator and compositor file output nodes also support overriding color management. Includes some layout changes to the relevant panels to accomdate the new settings and to improve consistency. Ideally subpanels would be used to better organize these settings, however nodes and operators don't currently support creating subpanels. Differential Revision: https://developer.blender.org/D14402
2022-03-23Cleanup: move documentation to headers, other minor correctionsCampbell Barton
2022-03-22Fix T96524: Regression: The Material Preview doesn't showSergey Sharybin
The preview does not work well with deferred render result pixels allocation: it breaks the refresh and requires to toggle current panels. Since there is no tiled rendering for previews we don't save any memory by deferring pixels allocations, so do it for the render result during the render result creation. Differential Revision: https://developer.blender.org/D14414
2022-03-22Cleanup: refactor passing of color management settings for image saveBrecht Van Lommel
Make a copy of ImageFormatData that contains the effective color management settings, and pass that along to the various functions. This will make it possible to add more complex logic later. For compositing nodes, passing along view and display settings through many functions made it harder to add additional settings, so just get those from the scene now. Differential Revision: https://developer.blender.org/D14401
2022-03-22Cleanup: add proper IMB_openexr.h instead of including file from intern/Brecht Van Lommel
2022-03-22Fix build error when WITH_OPENEXR=OFF, after recent refactorBrecht Van Lommel