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
2021-08-20Fix T90804: small grammatical error in noise threshold descriptionAlaska
Differential Revision: https://developer.blender.org/D12277
2021-08-20Alembic Procedural: basic cache control settingsKévin Dietrich
This adds a setting to enable data caching, and another one to set the maximum cache size in megabytes. When caching is enabled we load the data for the entire animation in memory, as we already do, however, if the data exceeds the memory limit, render is aborted. When caching is disabled, we simply load the data for the current frame in memory. Ref D10197 Reviewed By: brecht Differential Revision: https://developer.blender.org/D11163
2021-08-20Alembic Procedural: only subdivide if subsurf modifier is presentKévin Dietrich
As subdivision objects are first class citizens in Alembic, to differentiate them with non-subdivided polygon meshes, the Alembic Procedural automatically sets up subdivision properties on the generated Cycles Mesh. However, for real-time playback subdivision is far too slow, so this modifies the detection of a MeshSeqCache modifier used to activate the procedural to allow for a Subsurf modifier right after the cache one. If present, the procedural will tag the object for subdivision, if absent, the object will be treated as a regular mesh. This is a temporary measure for until subdivision surface settings are part of the Mesh datablock (see T68891). Reviewed By: brecht Differential Revision: https://developer.blender.org/D11162
2021-08-19Cycles: missing case for ignoring subdivision vertex normalsKévin Dietrich
This was missing from rBb8ecdbcd964a.
2021-08-19Fix T90776: Cycles normal map node produces artifactsKévin Dietrich
This is caused by a typo in rBb8ecdbcd964a `sd->prim` is the primitive index, but was used to discriminate the primitive type (stored in `sd- >type`).
2021-08-19Fix error rendering Cycles shader nodes from before 2013Brecht Van Lommel
After the recent changes to use socket identifiers instead of names.
2021-08-19Cycles: experimental integration of Alembic procedural in viewport renderingKévin Dietrich
This patch exposes the Cycles Alembic Procedural through the MeshSequenceCache modifier in order to use and test it from Blender. To enable it, one has to switch the render feature set to experimental and activate the Procedural in the modifier. An Alembic Procedural is then created for each CacheFile from Blender set to use the Procedural, and each Blender object having a MeshSequenceCache modifier is added to list of objects of the right procedural. The procedural's parameters derive from the CacheFile's properties which are already exposed in the UI through the modifier, although more Cycles specific options might be added in the future. As there is currently no cache controls and since we load all the data at the beginning of the render session, the procedural is only available during viewport renders at the moment. When an Alembic procedural is rendered, data from the archive are not read on the Blender side. If a Cycles render is not active and the CacheFile is set to use the Cycles Procedural, bounding boxes are used to display the objects in the scene as a signal that the objects are not processed by Blender anymore. This is standard in other DCCs. However this does not reduce the memory usage from Blender as the Alembic data was already loaded either during an import or during a .blend file read. This is mostly a hack to test the Cycles Alembic procedural until we have a better Blender side mechanism for letting renderers load their own geometry, which will be based on import and export settings on Collections (T68933). Ref T79174, D3089 Reviewed By: brecht, sybren Maniphest Tasks: T79174 Differential Revision: https://developer.blender.org/D10197
2021-08-18Alembic procedural: remove Generated attribute creationKévin Dietrich
The main reason for this is to speed up updates by avoid unnecessary copies as the Generated coordinates are a copy of the vertices. Creating this attribute may become optional in the future, with UI parameters to select which attribute to use from the Alembic archive as reference.
2021-08-18Cycles: use object coordinates when generated coordinates are missingKévin Dietrich
This modifies the attribute lookup to use object coordinates if no generated coordinates are found on the geometry. This is useful to avoid creating and copying this attribute, thus saving a bit of time and memory. Reviewed By: brecht Differential Revision: https://developer.blender.org/D12238
2021-08-18Cycles: avoid copying vertex normals attribute twice to the devicesKévin Dietrich
Vertex normals are needed for normals maps and therefore are packed and send to the device alongside the other float3 attributes. However, we already pack and send vertex normals through `DeviceScene.tri_vnormal`. This removes the packing of vertex normals from the attributes buffer, and reuses `tri_vnormal` in the kernel for normals lookup for normal maps, which reduces memory usage a bit, and speeds up device updates. This also fixes potential missing normals updates following rB12a06292af86, since the need for vertex normals for normals maps was overlooked. Reviewed By: brecht Differential Revision: https://developer.blender.org/D12237
2021-08-18UDIM: Support tile sets that do not start at 1001Jesse Yurkovich
Removes the artificial requirement that UDIM tile sets start at 1001. Blender was already capable of handling sparse tile sets (non-contiguous tiles) so the restriction around starting at 1001 was unnecessary in general. This required fixing a few UDIM-related python bugs around manually updating the `tile_number` field on images as well. See the differential for details. No script changes are necessary but they will now work, correctly, in many more cases. Differential Revision: https://developer.blender.org/D11859
2021-08-17Fix T77307: Particle Info Node Does Not Consider Time RemappingKévin Dietrich
`frame_current_final()` should be used to access the Scene time after remapping, which also matches how the particles system handles time. Reviewed By: brecht Maniphest Tasks: T77307 Differential Revision: https://developer.blender.org/D12239
2021-08-17Fix T82336: Cycles standard attributes missing in displacement shadersKévin Dietrich
Standard attributes are not added to the attributes requests when shaders only have displacement. This is because nodes are only considering the case when the surface socket is connected. To support this, added `Shader.has_surface_link()` which checks for both cases (`has_surface` and `has_displacement`) and replaces all checks on `Shader.has_surface`. Reviewed By: brecht Differential Revision: https://developer.blender.org/D12240
2021-08-16Fix T90689, T90705: Cycles math node with 3 inputs broken after recent changesBrecht Van Lommel
Thanks Charlie Jolly for finding the fix.
2021-08-13Cleanup: Unused function parameter warningSergey Sharybin
2021-08-12Cleanup: use C++ style comments for disabled codeCampbell Barton
2021-08-11Cycles: OSL metadata support for UI labels and checkboxesPedro A
To improve the presentation of nodes in the node editor. Recognize the following metadata from the OSL specification: * [[ string label = "UI Label" ]] * [[ string widget = "checkBox" ]] * [[ string widget = "boolean" ]] Ref T89741 Differential Revision: https://developer.blender.org/D12074
2021-08-11Cleanup: use socket identifier instead of names in Cycles shader exportBrecht Van Lommel
Will be required when we support setting different names and identifiers for OSL. Ref D12074
2021-08-09Fix T90511: Cycles preview does not update once preview is doneSergey Sharybin
Caused by 4f64fa4f8628. Was a bad backport from the Cycles X branch: the fact that CPU and GPU has different reset code paths was not taken into account.
2021-08-06Cycles: Fix for possible viewport dead-lockSergey Sharybin
This is a backport of recent development in the Cycles X branch. Fixes possible dead-lock in viewport rendering when exiting at an exact bad moment (couldn't reproduce in master branch, but in the cycles-x branch it was happening every now and then). Differential Revision: https://developer.blender.org/D12154
2021-08-06Cleanup: Use conventional naming for private Session membersSergey Sharybin
Makes it consistent with the guidelines and the Cycles X branch, and allows to backport fix for the viewport update from the branch. Will cause a merge conflict, which should be simple accept-ours in the branch.
2021-08-05Xcode: support cmake options for grouping in foldersGermano Cavalcante
The Xcode IDE can also benefit from the options: - WINDOWS_USE_VISUAL_STUDIO_SOURCE_FOLDERS - WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS So add suport to these options and also renames them as they are no longer limited to just Windows and Visual Studio. Reviewed By: brecht, ankitm Differential Revision: https://developer.blender.org/D12132
2021-08-05Render: move Cycles visibility, holdout and shadow catcher properties to BlenderBrecht Van Lommel
The immediate reason for this is that we want to be able to initialize them to different defaults for light objects, which is hard with Python properties. But in general it is useful to be able to share these with other renderers. As a side effect, Eevee now supports a per-object holdout instead of only per-collection. Differential Revision: https://developer.blender.org/D12133
2021-08-05Cleanup: remove redundant parenthesisCampbell Barton
2021-08-04Cycles: make object Fast GI Approximation panel a subpanel of ShadingBrecht Van Lommel
2021-08-04Fix Cycles material slots list being too shortRomain Toumi
Bring it in line with Eevee. Differential Revision: https://developer.blender.org/D11982
2021-08-04Cycles: More flexible GI Approximation AO distance controlSergey Sharybin
The goal: allow to easily use AO approximation in scenes which combines both small and large scale objects. The idea: use per-object AO distance which will allow to override world settings. Instancer object will "propagate" its AO distance to all its instances unless the instance defines own distance (this allows to modify AO distance in the shot files, without requiring to modify props used in the shots. Available from the new Fats GI Approximation panel in object properties. Differential Revision: https://developer.blender.org/D12112
2021-07-30Cleanup: clarify license and origin of voronoi and dithering codeBrecht Van Lommel
2021-07-30Cleanup: clang-format (re-run after v12 version bump)Campbell Barton
2021-07-29Fix T90295: inconsistent render pass order between Cycles and EeveeBrecht Van Lommel
2021-07-29Cleanup: Remove debug-only codeSergey Sharybin
2021-07-29Fix building without Cycles loggingSergey Sharybin
Ideally can use assert() checks instead of suppressing the check entirely, but for now just fix compilation error quickly.
2021-07-29Fix Cycles crash with fluid object motion blur disabledSergey Sharybin
Motion attributes expects mesh to have non-zero number of motion steps, which was violated in the case when fluid mesh had motion blur disabled. This is a bit of annoying fix, because of the order of updates. More ideal solution would be to handle cached and fluid velocities in the sync_mesh_motion() which ensures all the dependencies between settings.
2021-07-28Cycles: remove WITH_CYCLES_DEBUG, add WITH_CYCLES_DEBUG_NANBrecht Van Lommel
WITH_CYCLES_DEBUG was used for rendering BVH debugging passes. But since we mainly use Embree an OptiX now, this information is no longer important. WITH_CYCLES_DEBUG_NAN will enable additional checks for NaNs and invalid values in the kernel, for Cycles developers. Previously these asserts where enabled in all debug builds, but this is too likely to crash Blender in scenes that render fine regardless of the NaNs. So this is behind a CMake option now. Fixes T90240
2021-07-27Fix missing passes update on Use Denoising changeSergey Sharybin
Makes it so Render Layers node in the compositor is updated as soon as Use Denoising is changed for the final render. Differential Revision: https://developer.blender.org/D12010
2021-07-26Cycles: upgrade CUDA to 11.4Brecht Van Lommel
This fixes a performance regression on Ampere cards, on specific scenes like classroom. For cycles-x there is little difference, but this is still helpful for LTS releases, and we need to upgrade at some point anyway.
2021-07-26Cleanup: fix compiler warnings due to implicit castNikhil Shringarpurey
Differential Revision: https://developer.blender.org/D11950
2021-07-26Cycles: Fixed memory leak in ColorSpaceManagerStefan Werner
Cached OCIO processors were not freed, instead the color spaces were freed twice. Reviewed By: brecht, sergey Differential Revision: https://developer.blender.org/D12011
2021-07-21Cleanup: replace NB with NOTE in commentsCampbell Barton
2021-07-21UI: Fix Cycles Materials menu LayoutRomain Toumi
Fix an incoherence between the Eevee Materials menu and the Cycles Materials menu : Eevee : {F10230448} Cycles : {F10230449} Simply Fixed by replacing the Cycles UI code by the Eevee UI code. Thanks to @Brainzman for helping me create this diff and translate Reviewed By: Blendify Differential Revision: https://developer.blender.org/D11979
2021-07-14Fix T88088: Cycles and Eevee Vector Rotate node inconsistent with zero axisBrecht Van Lommel
Pass along the unmodified vector in this case.
2021-07-12Fix T87844: Cycles losing 1 bit of precision when loading packed byte imagesBrecht Van Lommel
This could lead to colors that are supposed to be exactly white to be slightly darker.
2021-07-12Fix T89736: Cycles error with persistent data, displacement and motion blurBrecht Van Lommel
2021-07-12Fix T89396: Cycles missing passes with multiple view layers and persistent dataBrecht Van Lommel
2021-07-09Fix cycles crash when changing viewport display passSergey Sharybin
It was possible that render buffers and scene kernel data will be out of sync because reset and scene update happens in different locks. This is similar issue we've fixed in the Cycles X branch, so backported relevant changes from there. This change removes what seems to be unused feature kernel. Differential Revision: https://developer.blender.org/D11828
2021-07-07Cleanup: spelling in commentsCampbell Barton
2021-07-05Cleanup: spelling, punctuationCampbell Barton
2021-07-05Fix T89655: tweak Cycles transparent bounces UI for clarityBrecht Van Lommel
Transparent bounces are independent of other bounces, so don't group them together.
2021-07-05Fix T89523: Cycles OpenCL compile error after shadow terminator changesBrecht Van Lommel
2021-07-05Cleanup: unused variableJacques Lucke