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
2020-08-17Clang tidy: Fix else after returnHans Goudey
2020-08-14Merge branch 'blender-v2.90-release'Julian Eisel
2020-08-14Fix NULL pointer access in render engine reported by address sanitizerBrecht Van Lommel
This may not have caused an actual bug.
2020-08-11Merge branch 'blender-v2.90-release'Lukas Stockner
2020-08-10Fix T77298: Can't bake texture with multiple objectsLukas Stockner
The problem here is that the baking code uses tiles to exchange pixel data with the renderer since a recent-ish refactor, but the code that sent data to the renderer did not initialize the bake result pixels. Therefore, when the baking process for the second object started, Cycles received empty tiles and sent them back as-is if the second object did not cover them. By initializing the tiles with the result of the previous bakes, we avoid this problem.
2020-08-08Cleanup: use array syntax for sizeof with fixed valuesCampbell Barton
Also order sizeof(..) first to promote other values to size_t.
2020-08-08Clenup: use STREQ macroCampbell Barton
2020-08-07Cleanup: declare arrays arrays where possibleCampbell Barton
2020-08-07Cleanup: Clang-Tidy else-after-return fixesSybren A. Stüvel
This addresses warnings from Clang-Tidy's `readability-else-after-return` rule. This should be the final commit of the series of commits that addresses this particular rule. No functional changes.
2020-08-07Merge branch 'blender-v2.90-release' into masterJacques Lucke
2020-08-07Code Style: use "#pragma once" in source directoryJacques Lucke
This replaces header include guards with `#pragma once`. A couple of include guards are not removed yet (e.g. `__RNA_TYPES_H__`), because they are used in other places. This patch has been generated by P1561 followed by `make format`. Differential Revision: https://developer.blender.org/D8466
2020-08-02Cleanup: pass const matricesCampbell Barton
Also order return matrices last.
2020-08-02Cleanup: pass const matricesCampbell Barton
Also order return matrices last.
2020-08-01Cleanup: use term init instead of initialize/initialiseCampbell Barton
The abbreviation 'init' is brief, unambiguous and already used in thousands of places, also initialize is often accidentally written with British spelling.
2020-07-28Cleanup: correct usage of extern-C blocks in various placesJacques Lucke
This removes extern-C blocks around other includes and adds such blocks for some headers that need them.
2020-07-20Python API: option to use OpenGL context in RenderEngine.renderMiguel Pozo
When bl_use_gpu_context is set, an OpenGL context will be available for OpenGL based render engines. Differential Revision: https://developer.blender.org/D8305
2020-07-20Fix T78321 Eevee: Motion blur crash rendering animation with high steps countClément Foucault
This was caused by `BPy_*_ALLOW_THREADS` being used when it shouldn't. Implemented the simple fix suggested by @brecht : > The simplest solution may be to ensure that Python stuff is only done > when called through the RNA API, and not when Eevee calls it directly.
2020-07-20T77086 Animation: Passing Dependency Graph to DriversSybren A. Stüvel
Custom driver functions need access to the dependency graph that is triggering the evaluation of the driver. This patch passes the dependency graph pointer through all the animation-related calls. Instead of passing the evaluation time to functions, the code now passes an `AnimationEvalContext` pointer: ``` typedef struct AnimationEvalContext { struct Depsgraph *const depsgraph; const float eval_time; } AnimationEvalContext; ``` These structs are read-only, meaning that the code cannot change the evaluation time. Note that the `depsgraph` pointer itself is const, but it points to a non-const depsgraph. FCurves and Drivers can be evaluated at a different time than the current scene time, for example when evaluating NLA strips. This means that, even though the current time is stored in the dependency graph, we need an explicit evaluation time. There are two functions that allow creation of `AnimationEvalContext` objects: - `BKE_animsys_eval_context_construct(Depsgraph *depsgraph, float eval_time)`, which creates a new context object from scratch, and - `BKE_animsys_eval_context_construct_at(AnimationEvalContext *anim_eval_context, float eval_time)`, which can be used to create a `AnimationEvalContext` with the same depsgraph, but at a different time. This makes it possible to later add fields without changing any of the code that just want to change the eval time. This also provides a fix for T75553, although it does require a change to the custom driver function. The driver should call `custom_function(depsgraph)`, and the function should use that depsgraph instead of information from `bpy.context`. Reviewed By: brecht, sergey Differential Revision: https://developer.blender.org/D8047
2020-07-16Simulation: Rename `physics` directory to `simulation`Jacques Lucke
Function names will be updated in a separate commit. This will be the place for the new particle system and other code related to the Simulation data block. We don't want to have all that code in blenkernel. Approved by brecht.
2020-07-15Cleanup: spellingCampbell Barton
2020-07-13Clang Tidy: enable readability-non-const-parameter warningJacques Lucke
Clang Tidy reported a couple of false positives. I disabled those `NOLINTNEXTLINE`. Differential Revision: https://developer.blender.org/D8199
2020-07-09Fix T78745: Cycles error baking with multiple materialsBrecht Van Lommel
2020-06-30Fix T77734: random crash when rendering animationVincent Blankfield
Differential Revision: https://developer.blender.org/D7986
2020-06-18Cleanup: redundant parenthesisCampbell Barton
2020-06-13Cleanup: naming for lattice deform functionsCampbell Barton
- BKE_lattice_deform_data_create was init_latt_deform. - BKE_lattice_deform_data_destroy was end_latt_deform. - BKE_lattice_deform_data_eval_co was calc_latt_deform.
2020-05-28Cleanup: remove unused struct members from RenderStatsCampbell Barton
2020-05-20Cleanup: make guarded memory allocation always thread safeBrecht Van Lommel
Previously this would be enabled when threads were used, but threads are now basically always in use so there is no point. Further, this is only needed for guarded allocation with --debug-memory which is not performance critical.
2020-05-20Cleanup: remove legacy mmap memory allocation for 32 bitBrecht Van Lommel
This helped to go beyond the 4GB limit, but is no longer relevant for 64 bit.
2020-05-19Merge branch 'blender-v2.83-release'Sebastián Barschkis
2020-05-19Fix: build error due to missing definitionsJacques Lucke
Reviewers: sergey, brecht Differential Revision: https://developer.blender.org/D7787
2020-05-18Fix T62422: Baking ray distance do not workSebastian Parborg
The previous naming scheme for the "selected to active" baking options lead to confusion and they were not describing what they actually did. To remedy this, I've added a new settings that does what the older setting implied it did. Reviewed By: Brecht, Dalai, Andy Davies Differential Revision: http://developer.blender.org/D7733
2020-05-15Cycles: code refactor to bake using regular render session and tilesBrecht Van Lommel
There should be no user visible change from this, except that tile size now affects performance. The goal here is to simplify bake denoising in D3099, letting it reuse more denoising tiles and pass code. A lot of code is now shared with regular rendering, with the two main differences being that we read some render result passes from the bake API when starting to render a tile, and call the bake kernel instead of the path trace kernel. With this kind of design where Cycles asks for tiles from the bake API, it should eventually be easier to reduce memory usage, show tiles as they are baked, or bake multiple passes at once, though there's still quite some work needed for that. Reviewers: #cycles Subscribers: monio, wmatyjewicz, lukasstockner97, michaelknubben Differential Revision: https://developer.blender.org/D3108
2020-05-14Merge branch 'blender-v2.83-release'Brecht Van Lommel
2020-05-14Fix T75071: rendering fails when all render layers disabled, but using ↵Brecht Van Lommel
compositor
2020-05-14Fix T75715: crash rendering animation with persistent imagesBrecht Van Lommel
2020-05-08Cleanup: take includes out of 'extern "C"' blocksJacques Lucke
Surrounding includes with an 'extern "C"' block is not necessary anymore. Also that made it harder to add any C++ code to some headers, or include headers that have "optional" C++ code like `MEM_guardedalloc.h`. I tested compilation on linux and windows (and got help from @LazyDodo). If this still breaks compilation due to some linker error, the header containing the symbol in question is probably missing an 'extern "C"' block. Differential Revision: https://developer.blender.org/D7653
2020-05-01Cleanup: replace inline dot-product with dot_v4v4Campbell Barton
2020-05-01Cleanup: pass const arguments to texture functionsCampbell Barton
2020-05-01Cleanup: avoid returning a bit-flag as a floatCampbell Barton
Texture functions were returning a float which was cast back to an int to use as a flag.
2020-05-01Cleanup: rename externtex to RE_texture_evaluateCampbell Barton
- Pass in return arguments last. - Pass in RGBA as a vector. - Use boolean return argument.
2020-04-16Cleanup: remove unused scene argumentCampbell Barton
2020-04-03Code Quality: Replace for loops with LISTBASE_FOREACHDalai Felinto
Note this only changes cases where the variable was declared inside the for loop. To handle it outside as well is a different challenge. Differential Revision: https://developer.blender.org/D7320
2020-04-03Cleanup: Rename ExtensionRNA variables from ext to rna_extJulian Eisel
Makes it more clear that code using this is related to the RNA integration of a type. Part of T74432. Also ran clang-format on affected files.
2020-04-03Cleanup: Animation, move AnimData API to `anim_data.c`/`BKE_anim_data.h`Sybren A. Stüvel
The `BKE_animsys.h` and `anim_sys.c` files already had a an "AnimData API" section. The code in that section has now been split off, and placed into `BKE_anim_data.h` and `anim_data.c`. All files that used to include `BKE_animsys.h` have been adjusted to only include the animation headers they need (sometimes none). No functional changes.
2020-03-27Fix T69060: File Output Node does not work with Time RemappingPhilipp Oeser
Problem is that the RenderEngines will change the RenderData cfra when rendering (when time remapping is used -- at least workbench/eevee/ gpencil do a combination of BKE_scene_frame_get() plus RE_GetCameraWindow() which alters the RenderData cfra). Later on in the pipeline, the Compositor will use this RenderData cfra to determine the output file name for the FileOutput node. (In contrast to this, the 'regular' Output will use the Scene's RenderData -- not the Render's -- cfra [which hasnt been altered]) It is not entirely clear why RE_GetCameraWindow was setting the cfra on the Render, but it appears to be legacy OGL rendering related and is not needed anymore. Removing this will keep the cfra as needed for the Compositor FileOutput node.
2020-03-26Fix T74417: Freestyle render removes image texture usersBrecht Van Lommel
This simplifies freestyle render pipeline integration so we don't have to do much manual ID user management at all. The complexity here was legacy from Blender Internal. Based on fix provided by Sybren A. Stüvl.
2020-03-20Python API: add bl_use_stereo_viewport for RenderEngineBrecht Van Lommel
To indicate if the render engine supports rendering a stereo 3D viewport. This is not currently supported for Cycles. Fixes T62582
2020-03-20Fix T74885: Stamped lens metadata is wrong when camera lens is animatedSybren A. Stüvel
The Lens metadata stamped on rendered images was wrong when the camera lens is animated. This was caused by the render pipeline passing the original camera to the metadata system, and not the evaluated camera.
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-03-17Cleanup: Fix warnings about function signature of register passRay Molenkamp
RE_engine_register_pass is sometimes in the headers with type as an integer parameter, sometimes as eNodeSocketDatatype. This caused warnings, the root cause was makesrna was not able to generate the proper type for enums and defaulted to int. makesrna has been extended with the RNA_def_property_enum_native_type that allows telling makesrna the native type of an enum, if set it will be used otherwise it will still fall back to int. Differential Revision: https://developer.blender.org/D7117 Reviewed By: brecht