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
2021-06-13Fix libmv new[]/delete[] mismatchCampbell Barton
2021-06-12Fix T88515: Cycles does not update light transform from linked collectionsKévin Dietrich
When moving a linked collection, we seem to only receive a depsgraph update for an empty object so the Blender synchronization cannot discriminate it and tag the object(s) (light or geometry) for an update through id_map.set_recalc. This missing transform update only affects lights since we do not check manually if the transformations were modified like we do for objects. To fix this, add a check to see if the transformation is different provided that a light was already created. Reviewed By: brecht Maniphest Tasks: T88515 Differential Revision: https://developer.blender.org/D11574
2021-06-11Fix: VSE search in mpegts files would failSebastian Parborg
ffmpeg_generic_seek_workaround did work properly and our start pts calculation was wrong. Reviewed By: Richard Antalik Differential Revision: http://developer.blender.org/D11562
2021-06-11Fix: VSE indexer seeking not working correctlySebastian Parborg
Because of the added sanity checks in rB14508ef100c9 (D11492), seeking in proxies would not work correctly any more. This is because it wasn't working as intended before, but in most cases this wouldn't be noticeable. However now when the sanity checks are tripped it is very noticeable that something is wrong The indexer tried to use dts values for time stamps when we used pts in our decode functions to get the time positions. This would make it start in the wrong GOP frames when searching. Now that we enforce no crossing of GOP frames when decoding after seek, this would lead to issues. Now we correctly use pts (or dts if pts is not available) and thus we don't have any seeking issues because of time stamp format missmatch. Reviewed By: Richard Antalik Differential Revision: http://developer.blender.org/D11561
2021-06-09Geometry Nodes: Add Convex Hull NodeHenrik Dick
This commit adds a node to output the convex hull of any input geometry as a mesh, which is an enclosing geometry around a set of points. All geometry types are supported, besides volumes. The code supports operating on instances to avoid copying all input geometry before the operation. The implementation uses the same backend as the operation in edit mode, but uses Mesh directly instead of BMesh. Attribute transfer is not supported currently, but would be a point of improvement for the future if it can work in a predictable way on different geometry input types. Differential Revision: https://developer.blender.org/D10925
2021-06-09Fix invalid return value assignment in getEdgeVertexIndicesCampbell Barton
2021-06-08PyAPI: use keyword only argumentsCampbell Barton
Use keyword only arguments for the following functions. - addon_utils.module_bl_info 2nd arg `info_basis`. - addon_utils.modules 1st `module_cache`, 2nd arg `refresh`. - addon_utils.modules_refresh 1st arg `module_cache`. - bl_app_template_utils.activate 1nd arg `template_id`. - bl_app_template_utils.import_from_id 2nd arg `ignore_not_found`. - bl_app_template_utils.import_from_path 2nd arg `ignore_not_found`. - bl_keymap_utils.keymap_from_toolbar.generate 2nd & 3rd args `use_fallback_keys` & `use_reset`. - bl_keymap_utils.platform_helpers.keyconfig_data_oskey_from_ctrl 2nd arg `filter_fn`. - bl_ui_utils.bug_report_url.url_prefill_from_blender 1st arg `addon_info`. - bmesh.types.BMFace.copy 1st & 2nd args `verts`, `edges`. - bmesh.types.BMesh.calc_volume 1st arg `signed`. - bmesh.types.BMesh.from_mesh 2nd..4th args `face_normals`, `use_shape_key`, `shape_key_index`. - bmesh.types.BMesh.from_object 3rd & 4th args `cage`, `face_normals`. - bmesh.types.BMesh.transform 2nd arg `filter`. - bmesh.types.BMesh.update_edit_mesh 2nd & 3rd args `loop_triangles`, `destructive`. - bmesh.types.{BMVertSeq,BMEdgeSeq,BMFaceSeq}.sort 1st & 2nd arg `key`, `reverse`. - bmesh.utils.face_split 4th..6th args `coords`, `use_exist`, `example`. - bpy.data.libraries.load 2nd..4th args `link`, `relative`, `assets_only`. - bpy.data.user_map 1st..3rd args `subset`, `key_types, `value_types`. - bpy.msgbus.subscribe_rna 5th arg `options`. - bpy.path.abspath 2nd & 3rd args `start` & `library`. - bpy.path.clean_name 2nd arg `replace`. - bpy.path.ensure_ext 3rd arg `case_sensitive`. - bpy.path.module_names 2nd arg `recursive`. - bpy.path.relpath 2nd arg `start`. - bpy.types.EditBone.transform 2nd & 3rd arg `scale`, `roll`. - bpy.types.Operator.as_keywords 1st arg `ignore`. - bpy.types.Struct.{keyframe_insert,keyframe_delete} 2nd..5th args `index`, `frame`, `group`, `options`. - bpy.types.WindowManager.popup_menu 2nd & 3rd arg `title`, `icon`. - bpy.types.WindowManager.popup_menu_pie 3rd & 4th arg `title`, `icon`. - bpy.utils.app_template_paths 1st arg `subdir`. - bpy.utils.app_template_paths 1st arg `subdir`. - bpy.utils.blend_paths 1st..3rd args `absolute`, `packed`, `local`. - bpy.utils.execfile 2nd arg `mod`. - bpy.utils.keyconfig_set 2nd arg `report`. - bpy.utils.load_scripts 1st & 2nd `reload_scripts` & `refresh_scripts`. - bpy.utils.preset_find 3rd & 4th args `display_name`, `ext`. - bpy.utils.resource_path 2nd & 3rd arg `major`, `minor`. - bpy.utils.script_paths 1st..4th args `subdir`, `user_pref`, `check_all`, `use_user`. - bpy.utils.smpte_from_frame 2nd & 3rd args `fps`, `fps_base`. - bpy.utils.smpte_from_seconds 2nd & 3rd args `fps`, `fps_base`. - bpy.utils.system_resource 2nd arg `subdir`. - bpy.utils.time_from_frame 2nd & 3rd args `fps`, `fps_base`. - bpy.utils.time_to_frame 2nd & 3rd args `fps`, `fps_base`. - bpy.utils.units.to_string 4th..6th `precision`, `split_unit`, `compatible_unit`. - bpy.utils.units.to_value 4th arg `str_ref_unit`. - bpy.utils.user_resource 2nd & 3rd args `subdir`, `create` - bpy_extras.view3d_utils.location_3d_to_region_2d 4th arg `default`. - bpy_extras.view3d_utils.region_2d_to_origin_3d 4th arg `clamp`. - gpu.offscreen.unbind 1st arg `restore`. - gpu_extras.batch.batch_for_shader 4th arg `indices`. - gpu_extras.batch.presets.draw_circle_2d 4th arg `segments`. - gpu_extras.presets.draw_circle_2d 4th arg `segments`. - imbuf.types.ImBuf.resize 2nd arg `resize`. - imbuf.write 2nd arg `filepath`. - mathutils.kdtree.KDTree.find 2nd arg `filter`. - nodeitems_utils.NodeCategory 3rd & 4th arg `descriptions`, `items`. - nodeitems_utils.NodeItem 2nd..4th args `label`, `settings`, `poll`. - nodeitems_utils.NodeItemCustom 1st & 2nd arg `poll`, `draw`. - rna_prop_ui.draw 5th arg `use_edit`. - rna_prop_ui.rna_idprop_ui_get 2nd arg `create`. - rna_prop_ui.rna_idprop_ui_prop_clear 3rd arg `remove`. - rna_prop_ui.rna_idprop_ui_prop_get 3rd arg `create`. - rna_xml.xml2rna 2nd arg `root_rna`. - rna_xml.xml_file_write 4th arg `skip_typemap`.
2021-06-08Remove noop code from WM_MOUSEWHEEL processing.Nicholas Rishel
ChildWindowFromPoint retrieves the child of the provided window at a point. In this case it always returns 0 because HWND_DESKTOP is flag defined as 0, which is never a valid window handle and is not intended for use in place of a window handle. Forwarding of mousewheel events was added in adb08def613d, and later modified to the current unworking state in e9645806f563. Sending mouse wheel events to the window under the cursor is a system preference and therefore should not be overridden by Blender, therefore the noop code has been removed.
2021-06-05Cleanup: spelling in commentsCampbell Barton
Also remove reference to function that never existed for adding `bNode`.
2021-06-04Nodes: Add Multiply Add to Vector Math nodesCharlie Jolly
Cycles, Eevee, OSL, Geo, Attribute This operator provides consistency with the standard math node. Allows users to use a single node instead of two nodes for this common operation. Reviewed By: HooglyBoogly, brecht Differential Revision: https://developer.blender.org/D10808
2021-06-03GHOST/wayland: fix restoring hidden cursorChristian Rauch
2021-06-03GHOST/wayland: fix non-moving normal cursorChristian Rauch
2021-06-03GHOST/wayland: add 'xdg-decoration' supportChristian Rauch
2021-06-03GHOST/wayland: adapt window and cursor surface scale to support HiDPI screensChristian Rauch
2021-06-03GHOST/wayland: handle return values for data sourcesChristian Rauch
2021-06-03GHOST/wayland: set parent relation only for dialogs to mimic X11 behaviourChristian Rauch
2021-06-03GHOST/wayland: handle missing relative-pointer and pointer-constraints supportChristian Rauch
2021-06-03GHOST/wayland: get cursor settings via D-BusChristian Rauch
2021-06-03GHOST/wayland: inhibit warningChristian Rauch
2021-06-03GHOST/wayland: set swap interval to 0Christian Rauch
The Wayland server will not update hidden surfaces. This will block the main event loop and thus also block updates to visible windows in a multi- window setup.
2021-06-02Add workaround for gcc 11 compiler bugJacques Lucke
Differential Revision: https://developer.blender.org/D11462
2021-06-01Cleanup: spelling in commentsKévin Dietrich
2021-05-31Cycles: optimize 3D viewport rendering with camera passepartoutBrecht Van Lommel
If the area outside the camera is fully opaque, don't render it. Contributed by Kdaf. Differential Revision: https://developer.blender.org/D11182
2021-05-31Windows: Clean-up win 8/8.1 API useRay Molenkamp
For 2.93 we bumped the minimum windows requirement to windows 8.1, but did not do any clean-up of any win 8/8.1 API usage we dynamically accessed though LoadLibrary/GetProcAddress. This patch bumps _WIN32_WINNT to 0x0603 (win 8.1) and cleans up any API use that was accessed in a more convoluted way than necessary Differential Revision: https://developer.blender.org/D11331 Reviewed by: harley, nicholas_rishel
2021-05-28Make encoded video fps correct with ffmpeg < 4.4Sebastian Parborg
Before the FFmpeg commit: github.com/FFmpeg/FFmpeg/commit/1c0885334dda9ee8652e60c586fa2e3674056586 FFmpeg would use deprecated variables to calculate the video fps. We don't use these deprecated variables anymore, so ensure that the duration is correct in ffmpeg versions without this fix. Reviewed By: Sergey, Richard Antalik Differential Revision: http://developer.blender.org/D11417
2021-05-27Merge branch 'blender-v2.93-release'Clément Foucault
2021-05-27Cleanup: Unused include in CyclesSergey Sharybin
2021-05-27Refactor: Move display pass to Cycles viewport parametersSergey Sharybin
Allows to centralize storage and modification checks in a single place, avoiding duplication in the synchronization code. Ideally we would somehow be able to more granularly modify Cycles side objects. Leaving this for a future decision, because it might be better to implement it as a graph on the sync side.
2021-05-27Cleanup: Redundnat member init in Cycles viewport parametersSergey Sharybin
2021-05-27Refactor: Naming in Cycles viewport methodsSergey Sharybin
Makes it more explicit they operate on shading/light. Gives room to move more viewport related settings into this class and cover with specific or generic modification checks.
2021-05-27Cleanup: Use logical OR in Cycles background shaderSergey Sharybin
2021-05-27Cleanup: const qualifier of return typeSergey Sharybin
2021-05-27Refactor: Remove friend class from Cycles viewport parametersSergey Sharybin
Such pattern should only be used when it is really needed. Otherwise just stick to a more regular design, without worrying who is the user of the class. Otherwise it will be annoying to subclass or unit test.
2021-05-27Refactor: Rename pass accessor in viewport parametersSergey Sharybin
No need to state that it is a viewport display pass, since the method is within viewport parameters it is implied that parameters do belong to the viewport. Brings this code closer to the Cycles-X branch.
2021-05-26Revert "Cycles: optimize ensure_valid_reflection(), reduces render time by ↵Brecht Van Lommel
about 1%" Both before and after can have artifacts with some normal maps, but this seems to give worse artifacts on average which are not worth the minor performance increase. This reverts commit 21bc1a99baa765d81c3203fd2e451681b8a7fd55. Ref T88368, D10084
2021-05-26Cycles: optimize attributes device updatesKévin Dietrich
When an `AttributeSet` is tagged as modified, which happens after the addition or removal of an `Attribute` from the set, during the following GeometryManager device update, we update and repack the kernel data for all attribute types. However, if we only add or remove a `float` attribute, `float2` or `float3` attributes should not be repacked for efficiency. This patch adds some mechanisms to detect which attribute types are modified from the AttributeSet. Firstly, this adds an `AttrKernelDataType` to map the data type of the Attribute to the one used in the kernel as there is no one to one match between the two since e.g. `Transform` or `float4` data are stored as `float3s` in the kernel. Then, this replaces the `AttributeSet.modified` boolean with a set of flags to detect which types have been modified. There is no specific flag type (e.g. `enum ModifiedType`), rather the flags used derive simply from the `AttrKernelDataType` enumeration, to keep things synchronized. The logic to remove an `Attribute` from the `AttributeSet` and tag the latter as modified is centralized in a new `AttributeSet.remove` method taking an iterator as input. Lastly, as some attributes like standard normals are not stored in the various kernel attribute arrays (`DeviceScene::attribute_*`), the modified flags are only set if the associated standard corresponds to an attribute which will be stored in the kernel's attribute arrays. This makes it so adding or removing such attributes does not trigger an unnecessary update of other type-related attributes. Reviewed By: brecht Differential Revision: https://developer.blender.org/D11373
2021-05-26Fix T88552: Cycles changing Render Passes in viewport does not workSergey Sharybin
2021-05-26Cleanup: Simplify Cycles viewport parametersSergey Sharybin
Use early output and access shading RNA object only once.
2021-05-26Cleanup: Remove unused argument in Cycles syncSergey Sharybin
Makes it easier to see where exactly the viewport is used.
2021-05-25Fix T88096: Baking with OptiX and displacement failsPatrick Mours
Using displacement runs the shader eval kernel, but since OptiX modules are not loaded when baking is active, those were not available and therefore failed to launch. This fixes that by falling back to the CUDA kernels.
2021-05-24Fix T88500: Constrain window top position (Win32)Pratik Borhade
Do not allow a window to be created that has a top position that can obscure all or part of title bar. Right and Left edges can still be specified slightly outside of monitor bounds, but top edge must be clamped to monitor top. see D11371 for more details. https://developer.blender.org/D11371 Reviewed by Ray Molenkamp
2021-05-23Docs: Add readme for mikktspaceAaron Carlisle
2021-05-21Fix T88384: Improved Win32 Window Sizing and PositioningHarley Acheson
When creating Win32 windows, the sizes and placements can be out by a small amount, mostly noticeable near monitor edges. This is because Windows 10 includes a thin invisible border (typically 7 pixels) when determining position. Therefore the correct values can sometimes be just outside the monitor bounds, but we clamp them at those bounds. This patch fixes this by first clamping the requested values to monitor bounds, adjusting for window chrome with AdjustWindowRectEx(), and then using those adjusted values in CreateWindowExW(). see D11314 for more details. Differential Revision: https://developer.blender.org/D11314 Reviewed by Ray Molenkamp
2021-05-21Cleanup: spellingLeon Zandman
Includes fixes to misspelled function names. Ref D11280
2021-05-21Cleanup: Use named unused arguments in Cycles DeviceSergey Sharybin
2021-05-20Fix petty comment.Ray Molenkamp
I'm embarrassed this was in our codebase for 18 years
2021-05-20Merge remote-tracking branch 'origin/blender-v2.93-release'Sybren A. Stüvel
2021-05-20Cleanup: spellingCampbell Barton
2021-05-19Fix T87793: Cycles OptiX crash hiding objects in viewport renderBrecht Van Lommel
2021-05-19Cycles OpenCL: disable AO preview kernelsBrecht Van Lommel
These seem to be causing some stability issues, and really are just not that useful in practice. Compiling them is slow already, so it does not improve the user experience much to show an AO preview if it's not nearly instant.