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
path: root/intern
AgeCommit message (Collapse)Author
2022-05-17Cleanup: formatCampbell Barton
2022-05-16Merge branch 'blender-v3.2-release'Brecht Van Lommel
2022-05-16Fix T97867: Cycles MNEE blocky artefacts for rough refractive interfacesOlivier Maury
Made tangent frame consistent across the surface regardless of the sample, which was not the case with the previous algorithm. Previously, a tangent frame would stay consistent for the same sample throughout the walk, but not from sample to sample for the same triangle. This actually resulted in code simplification. Also includes additional fixes: * Fixed an important bug that manifested itself with multiple lights in the scene, where caustics had abnormally low amplitude: The final light pdf did not include the light distribution pdf. * Removed unnecessary orthonormal basis generation function, using cycles' native one instead. * Increased solver max iteration back to 64: It turns out we sometimes need these extra iterations in cases where projection back to the surface takes many steps. The effective solver iteration count, the most expensive part, is actually much less than the raw iteration count. Differential Revision: https://developer.blender.org/D14931
2022-05-13Cleanup: format (with autopep8 line wrapping applied)Campbell Barton
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-12Cleanup: Fix range loop construct warningHans Goudey
2022-05-12Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-12UDIM: Add support for packing inside .blend filesJesse Yurkovich
This completes support for tiled texture packing on the Blender / Cycles side of things. Most of these changes fall into one of three categories: - Updating Image handling code to pack/unpack tiled and multi-view images - Updating Cycles to handle tiled textures through BlenderImageLoader - Updating OSL to properly handle textures with multiple slots Differential Revision: https://developer.blender.org/D14395
2022-05-11Cleanup: Cycles, avoid 'parameter unused' warningSybren A. Stüvel
Avoid 'parameter unused' warning when building Cycles without OpenImageDenoise. No functional changes. Over-the-shoulder reviewed by @sergey
2022-05-11Enable inlining on Apple Silicon. Use new process-wide ShaderCache in order ↵Michael Jones
to safely re-enable binary archives This patch is the same as D14763, but with a fix for unit test failures caused by ShaderCache fetch logic not working in the non-MetalRT case: ``` diff --git a/intern/cycles/device/metal/kernel.mm b/intern/cycles/device/metal/kernel.mm index ad268ae7057..6aa1a56056e 100644 --- a/intern/cycles/device/metal/kernel.mm +++ b/intern/cycles/device/metal/kernel.mm @@ -203,9 +203,12 @@ bool kernel_has_intersection(DeviceKernel device_kernel) /* metalrt options */ request.pipeline->use_metalrt = device->use_metalrt; - request.pipeline->metalrt_hair = device->kernel_features & KERNEL_FEATURE_HAIR; - request.pipeline->metalrt_hair_thick = device->kernel_features & KERNEL_FEATURE_HAIR_THICK; - request.pipeline->metalrt_pointcloud = device->kernel_features & KERNEL_FEATURE_POINTCLOUD; + request.pipeline->metalrt_hair = device->use_metalrt && + (device->kernel_features & KERNEL_FEATURE_HAIR); + request.pipeline->metalrt_hair_thick = device->use_metalrt && + (device->kernel_features & KERNEL_FEATURE_HAIR_THICK); + request.pipeline->metalrt_pointcloud = device->use_metalrt && + (device->kernel_features & KERNEL_FEATURE_POINTCLOUD); { thread_scoped_lock lock(cache_mutex); @@ -225,9 +228,9 @@ bool kernel_has_intersection(DeviceKernel device_kernel) /* metalrt options */ bool use_metalrt = device->use_metalrt; - bool metalrt_hair = device->kernel_features & KERNEL_FEATURE_HAIR; - bool metalrt_hair_thick = device->kernel_features & KERNEL_FEATURE_HAIR_THICK; - bool metalrt_pointcloud = device->kernel_features & KERNEL_FEATURE_POINTCLOUD; + bool metalrt_hair = use_metalrt && (device->kernel_features & KERNEL_FEATURE_HAIR); + bool metalrt_hair_thick = use_metalrt && (device->kernel_features & KERNEL_FEATURE_HAIR_THICK); + bool metalrt_pointcloud = use_metalrt && (device->kernel_features & KERNEL_FEATURE_POINTCLOUD); MetalKernelPipeline *best_pipeline = nullptr; for (auto &pipeline : collection) { ``` Reviewed By: brecht Differential Revision: https://developer.blender.org/D14923
2022-05-11Update Ceres to latest upstream version 2.1.0Sergey Sharybin
This release deprecated the Parameterization API and the new Manifolds API is to be used instead. This is what was done in the Libmv as part of this change. Additionally, remove the bundling scripts. Nowadays those are only leading to a duplicated work to maintain. No measurable changes on user side is expected.
2022-05-11Cleanup: spelling in comments/stringsCampbell Barton
D14918 from @linux_dr with some other changes included.
2022-05-11Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-11Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-11Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-11Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-10Fix T97908: Cycles missing motion from on pointcloud generated by geometry nodesBrecht Van Lommel
Assume geometry is always potentially animated, since we can't use our heuristic to detect if the object is potentially animated by looking at modifiers on the object. The main original reason for this check was to avoid evaluating subdivision surfaces for many static objects, which is not happening here anyway.
2022-05-10Fix T97966: Cycles shadow terminator offset wrong for scaled object instancesMikhail Matrosov
Differential Revision: https://developer.blender.org/D14893
2022-05-10Fix T97056: Cycles MNEE not working with glass and pure refraction BSDFsOlivier Maury
Differential Revision: https://developer.blender.org/D14901
2022-05-10Fix part of T97895: Cycles not rendering edge domain attributesBrecht Van Lommel
These aren't really ideal for rendering, but better to show something. Edge values are averaged at vertices.
2022-05-07Cleanup: Remove the OSL <UVTILE> workaroundJesse Yurkovich
Partially reverts rB46ae0831134 now that we have a new version of OSL/OIIO that supports <UVTILE> directly. Differential Revision: https://developer.blender.org/D14851
2022-05-06Cleanup: formatCampbell Barton
2022-05-06Cleanup: spelling in comments, use doxygen commentsCampbell Barton
2022-05-06GHOST: Add support for precision touchpad gestures on WindowsAndrii Symkin
This patch adds support for precision touchpad gestures on Windows 8.1 and newer using Direct Manipulation API. Gestures work exactly like on macOS, with full support for pan/pinch and inertia. This works by creating a viewport with a fake scrollable which is reset after every gesture and converts any changes to the content's transform into GHOST trackpad events (as explained [here](https://bugzilla.mozilla.org/show_bug.cgi?id=890878)). The code is based on the implementation from the [Chromium project](https://chromium.googlesource.com/chromium/src/+/refs/heads/master/content/browser/renderer_host/direct_manipulation_helper_win.cc). Tested on Windows 10. Fixes {T70754}, {T69264}. Demo:{F8520272} Reviewed By: nicholas_rishel Differential Revision: https://developer.blender.org/D7660
2022-05-06Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-06Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-06Win32: WM_SETTINGCHANGE lParam Check for NULLHarley Acheson
Check that lParam is non-NULL in WM_SETTINGCHANGE message handler. See D14867 for details. Differential Revision: https://developer.blender.org/D14867 Reviewed by Jesse Yurkovich
2022-05-05Fix T95308, T93913: Cycles mist pass wrong with SSS shaderBrecht Van Lommel
It was wrongly writing passes twice, for both the surface entry and exit points. We can skip code for filtering closures, emission and holdout also, as these do nothing with only a subsurface diffuse closure present.
2022-05-05Cleanup: clang formatBrecht Van Lommel
2022-05-05Merge branch 'blender-v3.2-release'Brecht Van Lommel
2022-05-05Fix T93246: Cycles wrong volume shading after transparent surfaceBrecht Van Lommel
The Russian roulette probability was not taken into account for volumes in all cases. It should not be left out from the SD_HAS_ONLY_VOLUME case.
2022-05-05Cycles: Add support for parallel compilation of OptiX modulePatrick Mours
OptiX 7.4 adds support for splitting the costly creation of an OptiX module into smaller tasks that can be executed in parallel on a thread pool. This is only really relevant for the "shader_raytrace" kernel variant as the main one is small and compiles fast either way. It sheds of a few seconds there (total gain is not massive currently, since it is difficult for the compiler to split up the huge shading entry point that is the primary one taking up time, but it is still measurable). Differential Revision: https://developer.blender.org/D14845
2022-05-05Cleanup: formatCampbell Barton
2022-05-05Win32: Dark Mode Title Bar ColorHarley Acheson
Blender will respect Windows "Dark Mode" setting for title bar color. See D14847 for details. Differential Revision: https://developer.blender.org/D14847 Reviewed by Ray Molenkamp
2022-05-05Merge branch 'blender-v3.2-release'Germano Cavalcante
2022-05-04Fix Cycles world light group confusing UIBrecht Van Lommel
Move to a subpanel of the Settings panel. Otherwise it seems like it's a setting of one of the shader nodes.
2022-05-04Fix T95644: Cycles doesn't update modified object attributes on GPULukas Stockner
evice_update_preprocess is supposed to detect modified attributes and flag the device_vector for a copy through device_update_flags. However, since object attributes are only created in device_update_attributes afterwards, they can't be included in that check. Change the function that actually updates the device_vector to tag it as modified as soon as its content gets updated. Differential Revision: https://developer.blender.org/D14815
2022-05-04Fix T96718: Cycles invalid pixels when using bump normal for light emissionBrecht Van Lommel
A shader node setup accidentally used the bump normal as emission. Bump mapping nodes are excluded from light shader evaluation to reduce kernel size and register pressure, but in that case should write zero instead of leaving memory uninitialized. Thanks to Lukas for helping identify the cause.
2022-05-04Fix Cycles division by zero in material preview renderBrecht Van Lommel
If the render gets cancelled before the first sample finishes.
2022-05-04Nodes: Add general Combine/Separate Color nodesHallam Roberts
Inspired by D12936 and D12929, this patch adds general purpose "Combine Color" and "Separate Color" nodes to Geometry, Compositor, Shader and Texture nodes. - Within Geometry Nodes, it replaces the existing "Combine RGB" and "Separate RGB" nodes. - Within Compositor Nodes, it replaces the existing "Combine RGBA/HSVA/YCbCrA/YUVA" and "Separate RGBA/HSVA/YCbCrA/YUVA" nodes. - Within Texture Nodes, it replaces the existing "Combine RGBA" and "Separate RGBA" nodes. - Within Shader Nodes, it replaces the existing "Combine RGB/HSV" and "Separate RGB/HSV" nodes. Python addons have not been updated to the new nodes yet. **New shader code** In node_color.h, color.h and gpu_shader_material_color_util.glsl, missing methods hsl_to_rgb and rgb_to_hsl are added by directly converting existing C code. They always produce the same result. **Old code** As requested by T96219, old nodes still exist but are not displayed in the add menu. This means Python scripts can still create them as usual. Otherwise, versioning replaces the old nodes with the new nodes when opening .blend files. Differential Revision: https://developer.blender.org/D14034
2022-05-04Cycles: mark all CUDA 11.x versions as supportedBrecht Van Lommel
All released versions appear to work fine. Also slightly change wording.
2022-05-03Fix T96822: Cycles motion blur + persistent data not updating properlyBrecht Van Lommel
At the frame before/after an object starts moving, it's transform may not be modified but its motion would be and requires an update.
2022-05-03CMake: fix error building when CUDA_NVCC_EXECUTABLE is missingCampbell Barton
2022-04-30Fix T96576: Light leaking when using normal maps with Multiscatter GGXLukas Stockner
The Multiscatter GGX code was missing the same-side checks for incoming and outgoing directions w.r.t. to shading and geometry normal. Should not be needed for the Glass variant since it intentionally has both reflection and transmission.
2022-04-29Cycles: Hydra fixes for stageMetersPerUnit and OpenGL context on WindowsPatrick Mours
Add "stageMetersPerUnit" render setting for USD files that have that set to something other than the default (e.g. exported by Blender). And fix a crash when an application creates a Hydra render pass on a thread that does not have an OpenGL context current.
2022-04-29Cycles: add USD as a file format for Cycles standalone renderingBrecht Van Lommel
Long term, this should replace the XML format. This reuses the Hydra render delegate implementation, and so supports the same features. The same command line options and GUI work for both XML and USD also. The implementation of this is still disabled, waiting for some refactoring of USD library linking. However we want the Cycles code to be in sync between repositories for the 3.2 release. Ref T96731
2022-04-29Cycles: refactor Hydra render delegate buildingBrecht Van Lommel
* Leave code for building the render delegate against other applications and their USD libraries to the Cycles repository, since this is not a great fit. In the Blender repository, always use Blender's USD libraries now that they include Hydra support. * Hide non-USD symbols from the hdCycles shared library, to avoid library version conflicts. * Share Apple framework linking between the standalone app and plugin. * Add cycles_hydra module, to be shared between the standalone app and plugin. * Bring external libs code in sync with standalone repo, adding various missing libraries. * Move some cmake include directories to the top level cycles source folder because we need to control their global order, to ensure we link against the correct headers with mixed Blender libraries and external USD libraries.
2022-04-29Cycles: make Hydra display driver optional, for USD without OpenGLBrecht Van Lommel
OpenGL support was removed from Blender's USD precompiled libraries. This is currently only useful when building against other applications anyway.
2022-04-29Cycles: add profiling command line argument to standaloneBrecht Van Lommel
Like --cycles-print-stats for Blender.
2022-04-29Cycles: make internal integrator defaults match Blender more closelyBrecht Van Lommel
This does not affect Blender integration, but gives better defaults for Cycles standalone.