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
2017-11-23Rename any instance of scene layer or render layer in code with view layerDalai Felinto
The RenderResult struct still has a listbase of RenderLayer, but that's ok since this is strictly for rendering. * Subversion bump (to 2.80.2) * DNA low level doversion (renames) - only for .blend created since 2.80 started Note: We can't use DNA_struct_elem_find or get file version in init_structDNA, so we are manually iterating over the array of the SDNA elements instead. Note 2: This doversion change with renames can be reverted in a few months. But so far it's required for 2.8 files created between October 2016 and now. Reviewers: campbellbarton, sergey Differential Revision: https://developer.blender.org/D2927
2017-11-22SceneRenderLayer Removal/RefactorDalai Felinto
This patch moves all the functionality previously in SceneRenderLayer to SceneLayer. If we want to rename some of these structs now would be a good time to do it, before they are in SceneLayer. Everything should be working, though I will test things further tomorrow. Once this is committed depsgraph can get rid of the workaround added in rna_Main_meshes_new_from_object and finish whatever this patch was preventing from being finished. This patch also adds a few placeholders for the overrides (samples, ...). These are obviously not working, so some unittests that rely on 'lay', and 'zmask' will fail. This patch does not addressed the change of moving samples to ViewRender (I have this as a separate patch and needs some separate discussion). Following next is the individual note of the individual parts that were committed. Note 1: It is up to Cycles to still get rid of exclude_layer internally. Note 2: Cycles still need to handle its own doversion for the use_layer_samples cases and (1) Remove the override as it is (2) Add a new override (scene.cycles.samples) if scene.cycles.use_layer_samples != IGNORE Respecting the expected behaviour when scene.cycles.use_layer_samples == BOUNDED. Note 3: Cycles still need to implement the per-object holdout (similar to how we do shadow catcher). Note 4: There are parts of the old (Blender Internal) rendering pipeline that is still using lay, e.g., in shi->lay. Honestly it will be easier to purge the entire Blender Internal code away instead of taking things from it bit by bit. Reviewers: sergey, campbellbarton, brecht Differential Revision: https://developer.blender.org/D2919
2017-11-22SceneRenderLayer > SceneLayer: Convert LayDalai Felinto
There are parts of the old (Blender Internal) rendering pipeline that is still using lay, e.g., in shi->lay. Honestly it will be easier to purge the entire Blender Internal code away instead of taking things from it bit by bit.
2017-11-22SceneRenderLayer > SceneLayer: Convert Z-MaskDalai Felinto
Note: Cycles still need to implement the per-object holdout (similar to how we do shadow catcher).
2017-11-22SceneRenderLayer > SceneLayer: Convert samples_overrideDalai Felinto
Note: Cycles still need to handle its own doversion for theses cases and (1) Remove the override as it is (2) Add a new override (scene.cycles.samples) if scene.cycles.use_layer_samples != IGNORE Respecting the expected behaviour when scene.cycles.use_layer_samples == BOUNDED.
2017-11-22SceneRenderLayer > SceneLayer: Convert material_overrideDalai Felinto
2017-11-22SceneRenderLayer > SceneLayer: Remove exclude_layerDalai Felinto
Note: It is up to Cycles to still get rid of exclude_layer internally: RenderLayerInfo.exclude_layer
2017-11-21Shows all Cycles panels based on scene, not context engineDalai Felinto
This is tricky since we may want granular polling depending on the setting. Or an option to pick whether we want the context or the scene to drive the panels to prevent too many panels when mixing Eevee and Cycles for example.
2017-11-19Merge branch 'master' into blender2.8Julian Eisel
2017-11-17Cycles: Add per-tile render time debug passLukas Stockner
Reviewers: sergey, brecht Differential Revision: https://developer.blender.org/D2920
2017-11-17Cycles: Add Volume Direct and Volume Indirect passes for volume-scattered lightLukas Stockner
No color pass because it's hard to define what to use as color in a volume. Reviewers: sergey, brecht Differential Revision: https://developer.blender.org/D2903
2017-11-15Cycles: Fix after recent merge from masterDalai Felinto
random_id() crashes when there is no current dupli object. We could also throw a Python error when doing it via RNA, but as far as Cycles is concerned we need to check if instanced.
2017-11-15Merge commit '212a8d9e5ae7' into blender2.8Dalai Felinto
Considerable non-trivial merge conflict fixes.
2017-11-14Cycles: Make per-object random value output also work for LampsLukas Stockner
2017-11-08Merge branch 'master' into blender2.8Brecht Van Lommel
2017-11-08Cycles: add bevel shader, for raytrace based rounded edges.Brecht Van Lommel
The algorithm averages normals from nearby surfaces. It uses the same sampling strategy as BSSRDFs, casting rays along the normal and two orthogonal axes, and combining the samples with MIS. The main concern here is that we are introducing raytracing inside shader evaluation, which could be quite bad for GPU performance and stack memory usage. In practice it doesn't seem so bad though. Note that using this feature can easily slow down renders 20%, and that if you care about performance then it's better to use a bevel modifier. Mainly this is useful for baking, and for cases where the mesh topology makes it difficult for the bevel modifier to work well. Differential Revision: https://developer.blender.org/D2803
2017-11-07Merge branch 'master' into blender2.8Sergey Sharybin
2017-11-07Cycles: Cleanup, styleSergey Sharybin
2017-11-03Merge branch 'master' into blender2.8Campbell Barton
2017-11-02Fix Cycles showing empty tiles while they are being denoised.Brecht Van Lommel
2017-11-02Merge branch 'master' into blender2.8Sybren A. Stüvel
# Conflicts: # tests/gtests/alembic/abc_export_test.cc
2017-11-02Fix T53182: cancelling save buffers + denoising render clears image.Brecht Van Lommel
2017-10-31Merge branch 'master' into blender2.8Bastien Montagne
2017-10-31Experiment with adding output file meta data from render engineSergey Sharybin
The idea is to make it possible to report extra meta data from render engine to the file writing. This way we can provide additional information such as number of samples rendered by resumable Cycles rendering so we can easily combine files back. Currently only report number of samples from Cycles when rendering a single render-layer scene. This is something what was required here at the studio. We can easily extend that further. Ideally we would also need to support non-string metadata, but that's for later. Reviewers: mont29, campbellbarton Reviewed By: mont29, campbellbarton Subscribers: sybren, candreacchio Differential Revision: https://developer.blender.org/D2502
2017-10-25Merge branch 'master' into blender2.8Julian Eisel
2017-10-25Cycles: use AO factor to let user adjust intensity of AO bounces.Brecht Van Lommel
We are already using the AO distance, so might as well offer this extra control over the intensity. Useful when an interior scene is supposed to be significantly darker than the background shader.
2017-10-24Merge branch 'master' into blender2.8Brecht Van Lommel
2017-10-24Code refactor: pass device to scene, check OSL with device info.Brecht Van Lommel
2017-10-23Merge branch 'master' into blender2.8Julian Eisel
2017-10-21Cycles: disable progressive refine if denoising or save buffers is used.Brecht Van Lommel
Progressive refine undoes memory saving from save buffers, so enabling both does not make much sense. Previously enabling progressive refine would disable denoising, but it should be the other way around since denoise actually affects the render result. Includes some code refactor for progressive refine render buffers, and avoids recomputing tiles for each progressive sample.
2017-10-21Cycles: combined CPU + GPU rendering support.Brecht Van Lommel
CPU rendering will be restricted to a BVH2, which is not ideal for raytracing performance but can be shared with the GPU. Decoupled volume shading will be disabled to match GPU volume sampling. The number of CPU rendering threads is reduced to leave one core dedicated to each GPU. Viewport rendering will also only use GPU rendering still. So along with the BVH2 usage, perfect scaling should not be expected. Go to User Preferences > System to enable the CPU to render alongside the GPU. Differential Revision: https://developer.blender.org/D2873
2017-10-16Workspace: Move engines to workspace and Properties Editor cleanupDalai Felinto
Engine is not stored in WorkSpaces. That defines the "context" engine, which is used for the entire UI. The engine used for the poll of nodes (add node menu, new nodes when "Use Nodes") is obtained from context. Introduce a ViewRender struct for viewport settings that are defined for workspaces and scene. This struct will be populated with the hand-picked settings that can be defined per workspace as per the 2.8 design. * use_scene_settings * properties editor: workshop + organize context path Use Scene Settings ================== For viewport drawing, Workspaces have an option to use the Scene render settings (F12) instead of the viewport settings. This way users can quickly preview the final render settings, engine and View Layer. This will affect all the editors in that workspace, and it will be clearly indicated in the top-bar. Properties Editor: Add Workspace and organize context path ========================================================== We now have the properties of: Scene, Scene > Layer, Scene > World, Workspace [Scene | Workspace] > Render Layer > Object [Scene | Workspace] > Render Layer > Object > Data (...) Reviewers: Campbell Barton, Julian Eisel Differential Revision: https://developer.blender.org/D2842
2017-10-12Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/editors/screen/screen_edit.c
2017-10-11Cycles: Speedup up tangent space calculationSergey Sharybin
This patch goes away form using C++ RNA during tangent space calculation which avoids quite a bit of overhead. Now all calculation is done using data which already exists in ccl::Mesh. This means, tangent space is now calculated from triangles, which doesn't seem to be any different (at least as far as regression tests are concerned). One of the positive sides is that this change makes it possible to move tangent space calculation from blender/ to render/ so we will have Cycles standalone supporting tangent space. Reviewers: brecht, lukasstockner97, campbellbarton Differential Revision: https://developer.blender.org/D2810
2017-10-11Merge branch 'master' into blender2.8Sergey Sharybin
2017-10-09Merge branch 'master' into blender2.8Campbell Barton
2017-10-08Code refactor: use DeviceInfo to enable QBVH and decoupled volume shading.Brecht Van Lommel
2017-10-08Cycles: OpenCL bicubic and tricubic texture interpolation support.Brecht Van Lommel
2017-10-07Cycles: CUDA bicubic and tricubic texture interpolation support.Brecht Van Lommel
While cubic interpolation is quite expensive on the CPU compared to linear interpolation, the difference on the GPU is quite small.
2017-10-04Merge branch 'master' into blender2.8Sergey Sharybin
2017-10-03Fix T52981: 2D Curve shapes do not render untill extrudedSergey Sharybin
Regression since 9298c53.
2017-09-30Merge branch 'master' into blender2.8Campbell Barton
2017-09-29Fix T52943: don't export curves objects with no faces to Cycles.Brecht Van Lommel
Also skip any objects with zero ray visibility and meshes with zero faces.
2017-09-22Merge branch 'master' into blender2.8Sergey Sharybin
2017-09-21Depsgraph and collection enable/visibilityDalai Felinto
Iterate over invisible objects too, so lamps can still lit the scene. Also, now you can use a collection to set an object to invisible, not only to visible. For example: Scene > Master collection > bedroom > furniture Scene > View Layer > bedroom (visible) > furniture (invisible) The View Layer has two linked collections, bedroom and furniture. This setup will make the furniture collection invisible. Note: Unlike what was suggested on D2849, this does not make collection visibility influence camera visibility. I will keep this as a separate patch. Reviewers: sergey Subscribers: sergey, brecht, fclem Differential Revision: https://developer.blender.org/D2849
2017-09-20Fix T52853: harmless Cycles test failure in debug mode.Brecht Van Lommel
2017-09-15Merge branch 'master' into blender2.8Sergey Sharybin
2017-09-14Fix T51416: Blender Crashes while moving SlidersSergey Sharybin
The issue here was that removing datablock from main database will poke editors update, which includes buttons context to free users of texture. Since Cycles will free datablocks from job thread, it might crash Blender since main thread might be in the middle of drawing. Solved by exposing extra arguments to bpy.data.foo.remove() which indicates whether we want to perform ID user count and interface updates. While scripts shouldn't be using those normally, this is the only way to allow Cycles to skip interface update when removing datablock. Reviewers: mont29 Reviewed By: mont29 Differential Revision: https://developer.blender.org/D2840
2017-09-01Merge branch 'master' into blender2.8Campbell Barton
2017-09-01Cycles: follow strict class naming conventionCampbell Barton