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-03-01Build-system: Use C-linkage for internal interface headerJulian Eisel
That way the header can be included in C++ files.
2021-02-23Fix T84707: Wrong icon for Movie Clip EditorYevgeny Makarov
Sync the list of icons in CMakeLists.txt with UI_icons.h. Restore, in the source file, the FUND icon that was accidentally deleted. Delete four old/unused icons. See also D9715.
2021-02-22GPU Python: Use 'PyC_ParseStringEnum' to parse itemsGermano Cavalcante
Currently the GPU module for python has different ways to handle enums. - Organizing items in `PyC_StringEnumItems` arrays and parsing them with `PyC_ParseStringEnum`. - Using dedicated functions for each type of enum (`bpygpu_ParsePrimType`, `pygpu_ParseVertCompType` and `pygpu_ParseVertFetchMode`). Although apparently more efficient (especially `pygpu_ParseVertCompType` which transforms strings into integers for simple comparison), these dedicated functions duplicate functionality, increase the complexity of the code and consequently make it less readable. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D10456
2021-02-04Fix T85363: Cmd + Tab shortcut overridden on macOSJohannes Jakob
Adds an exception so that the key-binding `control + Tab` does not get duplicated as `command + Tab` on macOS because this is a global system shortcut for the app switcher. The key-binding `command + Tab` was shown for the operators “Toggle Graph Editor“ and “Toggle Dope Sheet” in Dope Sheet and Graph Editor, but only `control + Tab` actually worked. Differential Revision: https://developer.blender.org/D10304
2021-01-13Revert "Fix T79356: Improved icons for MSIX builds"Jeroen Bakker
This reverts commit 78011d712dc311768a501b31917f2eef27af753b.
2021-01-13Fix T79356: Improved icons for MSIX buildsEric Bickle
Fixed an issue that was causing the app icon to render with a 'plated' background color in the taskbar and other areas of Windows. Updated all app icons in Microsoft Store package to match Microsoft's design recommendations. Added multiple scales for app icons for high resolution displays. Added high contrast app icons. Reviewed By: pablovazquez, jmonteath Maniphest Tasks: T79356 Differential Revision: https://developer.blender.org/D9681
2020-12-16Fix 3D View is red when using stereoValdemar Lindberg
Fix T83415: 3D View is red when using stereo The red view was caused by SRGB not being enabled for an SRGB texture attached to the framebuffer. Currently, when configuring a framebuffer, the first texture attachment needs to be an SRGB format in order for the framebuffer to be binded with SRGB enabled. Thus, simply changing the SRGB texture attachment as the first texture attachment removes the red color in the view. Reviewed By: #eevee_viewport, jbakker Maniphest Tasks: T83415 Differential Revision: https://developer.blender.org/D9845
2020-12-16Revert "Steam Release: Script creation of Steam build files"Jeroen Bakker
This reverts commit 1a375d6eceed4c17f92fd90699645856e0951530.
2020-12-16Steam Release: Script creation of Steam build filesNathan Letwory
Script tool for automation of Steam build files for tasks like {T77348} For in-depth information see the README. Related Wiki page: https://wiki.blender.org/wiki/Process/Release_On_Steam Reviewed By: jbakker Maniphest Tasks: T77348 Differential Revision: https://developer.blender.org/D8429
2020-12-11Correct the order of the last two arguments in ↵Evan Wilson
`eevee_cryptomatte_shading_group_create` When compiling on Windows, the following warnings occur: ```[3468/4560] Building C object source\blender\draw\CMakeFiles\bf_draw.dir\engines\eevee\eevee_cryptomatte.c.obj C:\blender-git\blender\source\blender\draw\engines\eevee\eevee_cryptomatte.c(306): warning C4047: 'function': 'bool' differs in levels of indirection from 'void *' C:\blender-git\blender\source\blender\draw\engines\eevee\eevee_cryptomatte.c(306): warning C4024: 'eevee_cryptomatte_shading_group_create': different types for formal and actual parameter 5``` As @Severin pointed out [here](https://developer.blender.org/rB76a0b322e4d3244e59a154c8255b84a4fbc33117#288960), this is due to the last two arguments being flipped. This diff corrects the order. Reviewed By: Severin, fclem Differential Revision: https://developer.blender.org/D9809
2020-12-09Workaround for Access Violation startup crash on deprecated Radeon GPUs on ↵Jeroen Bakker
Windows This is a workaround for T80804. There's a startup crash that happens on 2.91.0 on Windows, an `EXCEPTION_ACCESS_VIOLATION` on `atio6axx.dll`. It is triggered by `glClear` on the `detect_mip_render_workaround` function. The workaround moves the function after the device/driver workaround section and sets the flag to the affected one to avoid running the check. It is deprecated hardware that has not meet the minimum requirements since 2.79, but is still usable and this extends its usability a bit before the cards are finally blacklisted. Reviewed By: Jeroen Bakker Differential Revision: https://developer.blender.org/D9667
2020-12-07Cycles: Use Blender Cryptomatte Settings.Jeroen Bakker
Blender has now the place to store the Cryptomatte settings. This patch migrates Cycles to use the new settings. Reviewed By: Brecht van Lommel Differential Revision: https://developer.blender.org/D9746
2020-12-04EEVEE: Arbitrary Output VariablesJeroen Bakker
This patch adds support for AOVs in EEVEE. AOV Outputs can be defined in the render pass tab and used in shader materials. Both Object and World based shaders are supported. The AOV can be previewed in the viewport using the renderpass selector in the shading popover. AOV names that conflict with other AOVs are automatically corrected. AOV conflicts with render passes get a warning icon. The reason behind this is that changing render engines/passes can change the conflict, but you might not notice it. Changing this automatically would also make the materials incorrect, so best to leave this to the user. **Implementation** The patch adds a copies the AOV structures of Cycles into Blender. The goal is that the Cycles will use Blenders AOV defintions. In the Blender kernel (`layer.c`) the logic of these structures are implemented. The GLSL shader of any GPUMaterial can hold multiple outputs (the main output and the AOV outputs) based on the renderPassUBO the right output is selected. This selection uses an hash that encodes the AOV structure. The full AOV needed to be encoded when actually drawing the material pass as the AOV type changes the behavior of the AOV. This isn't known yet when the GLSL is compiled. **Future Developments** * The AOV definitions in the render layer panel isn't shared with Cycles. Cycles should be migrated to use the same viewlayer aovs. During a previous attempt this failed as the AOV validation in cycles and in Blender have implementation differences what made it crash when an aov name was invalid. This could be fixed by extending the external render engine API. * Add support to Cycles to render AOVs in the 3d viewport. * Use a drop down list for selecting AOVs in the AOV Output node. * Give user feedback when multiple AOV output nodes with the same AOV name exists in the same shader. * Fix viewing single channel images in the image editor [T83314] * Reduce viewport render time by only render needed draw passes. [T83316] Reviewed By: Brecht van Lommel, Clément Foucault Differential Revision: https://developer.blender.org/D7010
2020-12-01Fix T83275: Crash with scene statics and empty scenePablo Dobarro
ob can be NULL, so it needs to be checked before accessing ob->mode Differential Revision: https://developer.blender.org/D9680
2020-11-30Cleanup hardcoded render percentage to factor conversionMonique Dewanchand
During revision of {D8952} one of the comments was to make a function that converts the render percentage to a factor. This to avoid code duplication. However the duplicated code was already all over the compositor code. So in order to avoid this code duplication for {D8952} I propose to first cleanup the duplicated code and build patch {D8952} based on this clean up. The method that converts the render percentage to a factor is put in the CompositorContext. Why? The CompositorContext keeps DNA information like the renderdata. DNA, and thus the CompositorContext, keeps the size of the render resolution in percentage (user oriented). The compositor needs the size of the render resolution as a factor. So the CompositorContext seems like the obvious place to have this conversion method. Why not in de NodeBase? The method could've been added to the nodebase, but I wanted to keep the nodebase as clean as possible and not put simple "conversion" methods into this base class. Also I didn't really like the call flow: you'd always have to get the renderdata size from the context and then convert. Putting it in the CompositorContext avoids this extra invoke of a call. Why not in the Converter? See nodebase. And the Converter seems more like a class for "structural" and complex node tree conversions. Not the simple conversions. Reviewed By: Sergey Sharybin Differential Revision: https://developer.blender.org/D9566
2020-11-13Add An Opacity Slider to Overlay WireframeJun Mizutani
This patch adds an opacity slider to the wireframe overlay. The previous wireframe in dense geometry scenes could be too dark and sometimes the user just wants an impression of the geometry during modelling. Reviewed By: Jeroen Bakker Differential Revision: https://developer.blender.org/D7622
2020-10-21UI: Move Properties path pin button next to the data-pathJulian Eisel
The pin button should be next to the data-path, which is what it belongs to. Note that this makes the placement of the search button in the header look quite off. That is because it's centered to the absolute header width, not the width of the main region (which is smaller because of the tab region on the left). Technically it's correct that way, visually it looks wrong. This will be addressed in a followup commit.
2020-10-15Improve Voxel Remesher volume projection artifacts on sharp edgesLeha
The voxel remesher was using the voxel size to limit the shrink-wrap projection distance. Now that distance is increased to help preserving more detail on hard surface edges. Reviewed By: pablodp606 Differential Revision: https://developer.blender.org/D6204
2020-09-23Windows Release: Script creation of MSIX packageNathan Letwory
Script create_msix_package.py will download the ZIP file from the given URL. It will create the MSIX package with the version number and publisher ID given. Strongly recommended are the path to a valid PFX file, and the password to use that PFX file. These are needed for signing the resulting MSIX package. The signing step is optional though, but the resulting MSIX package cannot be installed outside of the Microsoft Store Example set VERSION=2.83.2.0 set URL=https://download.blender.org/release/Blender2.83/blender-2.83.2-windows64.zip set PUBID=CN=PUBIDHERE set PFX=X:\path\to\cert.pfx set PFXPW=pwhere python create_msix_package.py --version %VERSION% --url %URL% --publisher %PUBID% --pfx %PFX% --password %PFXPW% Requirements: * Python default from the Microsoft Store should do (3.8) * requests can be installed with `pip install requests` Note that for an LTS release that gets uploaded to its own LTS application release in the store you need to specify the `--lts` switch on the command-line to the script. Upon completion there will be a file with the name blender-2.83.2.0-windows64.msix. In case PFX file and its password were given on the command line MSIX package will also be signed for the Microsoft Store. Related Wiki page: https://wiki.blender.org/wiki/Process/Release_On_Windows_Store Reviewed By: jbakker Maniphest Tasks: T77348, T79356 Differential Revision: https://developer.blender.org/D8310
2020-09-22Fix T81026: Image Editor: Alpha (like Bloom) not showing properlyJeroen Bakker
With the new image editor drawing there were was some mutual exclusive functionality. When rendering the alpha was shown correctly or the pure emissive colors were shown correctly, but never both. The cause of this is that the image_gpu did not used the correct alpha mode when generating gpu textures for non-images (render results, compositors viewer) The implementation always checked the alpha_mode. Alpha mode is an attribute for images, but aren't set for non images. This patch adds a more detailed check to ensure that the gpu texture is premultiplied. The issue has been tested using several bug report files and production files. Reviewed By: Brecht van Lommel Differential Revision: https://developer.blender.org/D8978
2020-09-18Overlay: Fade Inactive GeometryPablo Dobarro
This implements a new overlay that blends the bakground color over the objects that are not in the same mode as the active object, making them fade with the background. This is especially needed for sculpt mode as there is no other overlay or indication in the viewport to display which object is active. This is intended to be used with D7510 in order to have a faster workflow when sculpting models with multiple objects. Reviewed By: fclem Differential Revision: https://developer.blender.org/D8679
2020-09-01Audaspace: port compilation fix from upstream.Joerg Mueller
2020-08-28Revert "GPU: Fix Segmentation Fault Freeing Failed Shader"Jeroen Bakker
This reverts commit c28432680971f54ebe95cc953606a3a4d3bc5c7c.
2020-08-28GPU: Fix Segmentation Fault Freeing Failed ShaderJeroen Bakker
The CPP Shader class does not initialize the interface attribute. What will crash when deleting the shader. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D8740
2020-08-25Fix buildbot failing due to non-existent git submodule hashBrecht Van Lommel
The wrong hash was committed in 95cc709612d3, presumably due to local changes to the submodule repository.
2020-08-24Theme: Remove TH_UV_OTHERS from bThemeJeroen Bakker
`TH_UV_OTHERS` is a theme option that isn't hooked to anything since blender 2.80. This patch will remove the option and related code. Reviewed By: Campbell Barton Differential Revision: https://developer.blender.org/D8669
2020-08-18Cleanup: Remove unused code in the Paint CursorPablo Dobarro
This code was left here after the refactor, it was doing nothing and it was causing an assert. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8579
2020-08-13Cleanup: GPU: Remove Batch vao cache resetClément Foucault
This is done at drawtime automatically.
2020-08-06UI: Reduce item padding in the edit mesh context menusYevgeny Makarov
Align items in the edit mesh context menus (reducing padding), for consistency with other menus. The root layout of menus doesn't add the padding, for sub-layouts `align` has to be enabled. {F8749633} Reviewed By: Julian Eisel Differential Revision: https://developer.blender.org/D8480
2020-08-03Audaspace: port documentation bugfix from upstream.Joerg Mueller
2020-07-22Ensure submodules are at their correct commits.Nathan Letwory
2020-07-02Cleanup: Remove useless duplicated linesValentin
I spotted a duplicate struct declaration, so I had to check for other duplicated as well There might be some other but i am not confident enough for deleting them this regex search for duplicate ^(.*;)$\n(\1)$ Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D8146
2020-06-22Refactoring: View2DScrollers memory allocationJeroen Bakker
View2DScrollers used the memory manager to allocate memory. This isn't a problem but in a upcoming change the scrollers will be drawn more often than it used to (See {D8066}). To limit the number of allocations and frees this patch will use the stack for allocation. Reviewed By: Campbell Barton Differential Revision: https://developer.blender.org/D8076
2020-06-15Fix Memory Leak introduced by Draw Manager ThreadingJeroen Bakker
The memory leak is noticeable when using custom bone shapes. When using custom bone shapes objects could be extracted twice. Where the second extraction can overwrite data created by the first extraction what causes the memory leak. Options that have been checked: 1. Use two task graphs phases. One for normal extraction (DST.task_graph) and the other one will handle extractions that require blocking threads. 2. Keep a list of all objects that needs extraction and only start extraction when all objects have been populated. The second would slow performance as the extraction only happens when all objects have been populated. In the future we might want to go for the second option when we have the capability to render multiple viewports with a single populate. As this design isn't clear this patch will implement the first option. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D7969
2020-06-15API docs: mathutils leaked markupTobias Heinke
Reviewed By: Blendify Differential Revision: https://developer.blender.org/D8021
2020-06-02Depsgraph: Remove unneeded `RNA_path_resolve`Jeroen Bakker
Found during research of {T77124}. In `build_driver_data` an identical RNA_path is resolved twice. In stead of resolving it twice this patch will construct the `property_exit_key` based on the resolution of `property_entry_key`. This change isn't noticeable for users. Just a cleanup as it isn't needed to do the same logic twice. Reviewed By: Sergey Sharybin Differential Revision: https://developer.blender.org/D7872
2020-06-02UI: rename Cycles point light Size to Radius, for consistency and clarityJohan Walles
Differential Revision: https://developer.blender.org/D7888
2020-05-19Fix T76375: UDIM Rectangular Tiled Image EEVEE freezes BlenderJeroen Bakker
When packing the image the height of the tile was checked to the width of the packing area. This resulted that the tile was ignored. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D7784
2020-05-14Fix T76150: Viewport Axes not toggling correctly when 'Floor' and 'Grid' are ↵Ankit
turned off Fix T76150 While comparing with the deleted file [1] in the commit [2], saw this little addition which most probably was added for optimisation. Removing it fixes the behaviour too. To test: - In Viewport Overlays > Guides, uncheck both Grid & Floor. - Try toggling all three axes individually. - Z just sticks. X cannot be shown without Y enabled. [1] https://developer.blender.org/diffusion/B/change/master/source/blender/draw/modes/object_mode.c;9516921c05bd9fee5c94942eb8e38f47ba7e4351 [2] {rB9516921c05bd9fee5c94942eb8e38f47ba7e4351} Reviewed By: fclem Maniphest Tasks: T76150 Differential Revision: https://developer.blender.org/D7568
2020-05-14Fix T76729: Particle Hair Get Occluded by OverlaysJeroen Bakker
When using an external render engine Blender will still draw an OpenGL depth buffer for the overlay engine to work correctly. Particle systems were ignored, what lead to occluded hair and other artifacts. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D7730
2020-04-22Fix T75938: Workbench normal direction for matcapsRobert Guetzkow
Set useMatcap to ensure correct normal direction when using matcaps in the workbench engine.
2020-04-20Fix crash on Multires Face Set visibility syncPablo Dobarro
Multires uses the data of the Face Sets stored in the base mesh to manage the grid's visibility, so these pointers can no longer be set to NULL when editing Multires objects as they are requried for some operations. Reviewed By: sergey Differential Revision: https://developer.blender.org/D7431
2020-04-15Ensure master points at latest submodule headsNathan Letwory
2020-04-14GPUShader: Implement workaround for gizmo drawing on sRGB framebufferClément Foucault
This solution involves adding a uniform to each fragment shader that is used by gizmo drawing and use the framebuffer state to set this uniform accordingly. This solution can also be carried to external shaders (addons). A single line of code would then be enough to fix the issue. The only trickery here is the dummy define: `#define srgb_to_framebuffer_space(a)` This is in order to avoid breaking other DRW shaders that use the same fragment shader code but do not need the tranformation. Related to T74139 Reviewed By: brecht, campbellbarton Differential Revision: https://developer.blender.org/D7261
2020-04-08Fix Windows Tablet API preference not being usedMiguel Pozo
It was sometimes set before reading preferences, now it's passed to GHOST every time preferences are read. Differential Revision: https://developer.blender.org/D5641
2020-03-28Cleanup: Removing unused parameter.Jörg Müller
2020-03-26Mantaflow: remove reminents of high res smokeAaron Carlisle
It appears this slipped through the code review Reviewed By: sebbas Differential Revision: https://developer.blender.org/D6760
2020-03-23UI: Theme options for checkerboard pattern colors and sizeMichael Soluyanov
This patch adds ability to set up colors and size of background (transparency) checkerboard pattern in viewport and 2d editors. No new backgrounds, only changing colors in existing ones. This is not the background of the viewport, it is a transparency checkerboard that is turned on only in render mode, when the transparency mode is on. And also in 2D-editors, (image, sequencer, etc). Reviewed By: Pablo Vazquez, Julian Eisel Differential Revision: https://developer.blender.org/D6791
2020-03-12Cleanup: add device_texture for images, distinct from other global memoryBrecht Van Lommel
There was too much image texture specific stuff in device_memory, and too much code duplication between devices.
2020-03-06UI: Remove Windows 3D Object Folder ReferenceHarley Acheson
Remove Windows special folder FOLDERID_Objects3D. Requires newer SDK. Differential Revision: https://developer.blender.org/D7014 Reviewed by Brecht Van Lommel