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
2015-04-28Merge branch 'master' into gooseberryAntony Riakiotakis
Conflicts: intern/cycles/blender/blender_object.cpp intern/cycles/blender/blender_sync.h source/blender/editors/interface/interface_utils.c
2015-04-27Cycles: Added support for light portalsLukas Stockner
This patch adds support for light portals: objects that help sampling the environment light, therefore improving convergence. Using them tor other lights in a unidirectional pathtracer is virtually useless. The sampling is done with the area-preserving code already used for area lamps. MIS is used both for combination of different portals and for combining portal- and envmap-sampling. The direction of portals is considered, they aren't used if the sampling point is behind them. Reviewers: sergey, dingto, #cycles Reviewed By: dingto, #cycles Subscribers: Lapineige, nutel, jtheninja, dsisco11, januz, vitorbalbio, candreacchio, TARDISMaker, lichtwerk, ace_dragon, marcog, mib2berlin, Tunge, lopataasdf, lordodin, sergey, dingto Differential Revision: https://developer.blender.org/D1133
2015-04-10Merge branch 'cycles_memory_experiments' into gooseberrySergey Sharybin
Conflicts: intern/cycles/blender/blender_sync.h
2015-04-10Cycles: Experiment with culling objects based on the camera frustumSergey Sharybin
The idea is to give artists a simplier way to control memory usage in such scenes as grass fields by doing automatic object culling based on whether they're visible in the frame or not. This is controlled on per-object level. In order to use this option few steps are required: - Allow renderer to use camera culling (Performance panel of render settings) - Set camera cull margin (measured in relative value to the render resolution) - Enable Camera Cull for objects which are desired to be culled (object culling option could be found in Option panel in object buttons). Interface decisions are not final for sure and to be refined if this option is considered good enough for production. Reviewers: juicyfruit, brecht, campbellbarton Subscribers: venomgfx, eyecandy Differential Revision: https://developer.blender.org/D1230
2015-04-08Merge branch 'alembic' into gooseberryLukas Tönne
Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-04-08Basic cache overrides for strand render data in Cycles.Lukas Tönne
Still buggy, but the basic workflow is there: When a cache library is used in conjunction with a group duplicator and it has strands that match the particle systems, Cycles will use the new Strands structure to construct its internal curves.
2015-04-07Merge branch 'master' into gooseberryAntony Riakiotakis
Conflicts: source/blender/blenkernel/intern/image.c source/blender/blenkernel/intern/object_dupli.c source/blender/blenkernel/intern/sequencer.c source/blender/blenloader/intern/versioning_270.c source/blender/editors/space_view3d/view3d_draw.c source/blender/editors/space_view3d/view3d_ops.c source/blender/makesdna/DNA_sequence_types.h source/blender/makesdna/DNA_view3d_types.h source/blender/windowmanager/CMakeLists.txt source/blender/windowmanager/intern/wm_operators.c source/blenderplayer/bad_level_call_stubs/stubs.c
2015-04-06Cycles: Free unused image buffers when rendering with locked interfaceSergey Sharybin
It is still possible to free a bit more memory by detecting buildin images which are not used by shaders, but that's not going to improve memory usage that much to bother about this now. Such change brings peak memory usage from 4.1GB to 3.4GB when rendering 01_01_01_D layout scene from the Gooseberry project. Mainly because of freeing memory used by rather huge environment map in the viewport. Reviewers: campbellbarton, juicyfruit Subscribers: eyecandy Differential Revision: https://developer.blender.org/D1215
2015-03-31Merge branch 'master' into alembicLukas Tönne
Conflicts: source/blender/blenloader/intern/readfile.c source/blender/editors/space_view3d/view3d_intern.h source/blender/makesdna/DNA_modifier_types.h source/blender/makesrna/intern/rna_modifier.c source/blender/modifiers/MOD_modifiertypes.h source/blender/modifiers/intern/MOD_util.c
2015-03-30Merge branch 'master' into gooseberrySergey Sharybin
Conflicts: release/scripts/startup/bl_ui/properties_physics_smoke.py source/blender/editors/include/ED_transform.h source/blender/editors/space_view3d/view3d_intern.h
2015-03-27Cycles: Code cleanup, prepare for strict C++ flagsSergey Sharybin
2015-03-26Working implementation of cache reading for dupli data during renders.Lukas Tönne
2015-03-26Cycles support for dupli caches.Lukas Tönne
If a cache is read-enabled cycles will now use the cached mesh data instead of dupli results.
2015-03-23Working implementation of cache reading for dupli data during renders.Lukas Tönne
2015-03-23Cycles support for dupli caches.Lukas Tönne
If a cache is read-enabled cycles will now use the cached mesh data instead of dupli results.
2015-02-18Cycles: Initialize "headless" flags on engine initializationSergey Sharybin
This flag is global for all the sessions and never changes. so it doesn't really make sense to pass it around to all sessions and synchronization routines. Switched to a static member of BlenderSession now, but it's probably more logical to introduce some sort of BlenderGlobals. Doesn't currently worth a hassle for a single boolean flag tho.
2015-02-17Cycles: Make blender session aware of rendering from command lineSergey Sharybin
This way we can do some more aggressive policy about releasing temporary data during synchronization.
2014-12-25Cleanup: Fix Cycles Apache header.Thomas Dinges
This was already mixed a bit, but the dot belongs there.
2014-12-25Cycles: Enable QBVH optimization structure for SSE2 CPUsSergey Sharybin
This commit enables QBVH optimization structure automatically if rendering with CPU and SSE2 support is detected. This brings render time of agent shot back to the speed it used to be before the watertight intersections commit, single koro and sponza scenes are about 7% faster here.
2014-03-29Cycles code refactor: improve vertex motion attribute storage and export.Brecht Van Lommel
This now supports multiple steps and subframe sampling of motion. There is one difference for object and camera transform motion blur. It still only supports two steps there, but the transforms are now sampled at subframe times instead of the previous and next frame and then interpolated/extrapolated. This will give different render results in some cases but it's more accurate. Part of the code is from the summer of code project by Gavin Howard, but it has been significantly rewritten and extended.
2014-02-13Fix issue in recent bugfix, did not work with multiple sessions (preview ↵Brecht Van Lommel
render).
2013-10-18Fix cycles hair segments not giving correct vector speed pass, the motion vectorBrecht Van Lommel
export was not implemented yet for this primitive.
2013-10-17Fix cycles mesh synchronization being too slow with vector blur and duplis.Brecht Van Lommel
2013-08-18Cycles: relicense GNU GPL source code to Apache version 2.0.Brecht Van Lommel
More information in this post: http://code.blender.org/ Thanks to all contributes for giving their permission!
2013-07-14Fix a few issues found by coverity code scan in cycles code, nothing that causedBrecht Van Lommel
an actual bug as far as I can tell.
2013-06-13Fix #35723: cycles motion blur rendering issue after recent optimizations to ↵Brecht Van Lommel
skip some unneeded object syncing.
2013-05-10Cycles: add Use Surfaces and Use Hair option to render layers, to disable ↵Brecht Van Lommel
rendering of hair and surfaces, similar to blender internal options.
2013-04-16Cycles: when render layers have per layer number of samples set, the SamplingBrecht Van Lommel
panel now has an option to specify how to use them. There's three options: * Use: render layer samples override scene samples * Bounded: bound render layer samples by scene samples * Ignore: ignore render layer sample settings
2013-03-14Border rendering now works for all scenes used in compositor,Sergey Sharybin
before this only active scene would be rendered with border. When do_render_fields_blur_3d() is finished, it'll modify render's display rect so it'll correspond bordered render result placed on black backgrund. Actual border is stored nowhere, which makes it only way to re-calculate disprect for all other renders used in compo based on source. Not so big deal actually. Also needed to modify Cycles a bit, because before this patch it used border settings from scene being rendered. Now made it so render data is passing to external engines. Using a property inside RenderEngine structure for this. Not best ever design for passing render data, but this would prevent API breakage. So now external engines could access engine.render to access active rendering settings. Reviewed by Brecht, thanks!
2012-12-28New featureStuart Broadfoot
Patch [#33445] - Experimental Cycles Hair Rendering (CPU only) This patch allows hair data to be exported to cycles and introduces a new line segment primitive to render with. The UI appears under the particle tab and there is a new hair info node available. It is only available under the experimental feature set and for cpu rendering.
2012-11-21Fix #32796: cycles did not support image auto refresh option.Brecht Van Lommel
2012-11-10Fix #33131: more useful cycles behavior for layers that are both marked excludedBrecht Van Lommel
and as mask layer. Now it will still use the mask, and have no further influence rather than just being excluded entirely.
2012-11-08Fix #33113: cycles not rendering motion blur correct with dying particles.Brecht Van Lommel
There were a bunch of other issues with dupli motion blur and syncing, the problem being that there was no proper way to detect corresponding duplis between frames or updates. As a solution, a persistent_id was added to the DupliObject. It's an extension of the previous index value, with one index for each dupli level. This can be used to reliably find matching dupli objects between frames. Works with nested duplis, multiple particle systems, etc.
2012-10-18Fix #32912: cycles crash with dead particles, actual crash was caused by anBrecht Van Lommel
inconsistency in the particle system code, using <= and <. Also tightened up checks on cycles side to avoid other potential crashes.
2012-10-16Cycles: non-camera viewport render border supportSergey Sharybin
This makes it possible to do a border render inside a viewport even when not looking through the camera. Render border could be defined by Ctrl-B shortcut (works for both camera render border and viewport render border). Camera render border could still be defined using Shift-B (so no muscule memory would be broken). Currently used a special flag of operator to do this, otherwise you'll need to either two operators with different poll callback or it could go into conflict with a border zoom, Border render of a viewport could be enabled/disabled in View panel using "Render Border" option.
2012-10-05Cycles: add "From Dupli" option for texture coordinate node. This gets theBrecht Van Lommel
Generated and UV coordinates from the duplicator of instance instead of the object itself. This was used in e.g. Big Buck Bunny for texturing instanced feathers with a UV map on the bird. Many files changed, mainly to do some refactoring to get rid of G.rendering global in duplilist code.
2012-09-04Cycles: merge of changes from tomato branch.Brecht Van Lommel
Regular rendering now works tiled, and supports save buffers to save memory during render and cache render results. Brick texture node by Thomas. http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Textures#Brick_Texture Image texture Blended Box Mapping. http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Textures#Image_Texture http://mango.blender.org/production/blended_box/ Various bug fixes by Sergey and Campbell. * Fix for reading freed memory in some node setups. * Fix incorrect memory read when synchronizing mesh motion. * Fix crash appearing when direct light usage is different on different layers. * Fix for vector pass gives wrong result in some circumstances. * Fix for wrong resolution used for rendering Render Layer node. * Option to cancel rendering when doing initial synchronization. * No more texture limit when using CPU render. * Many fixes for new tiled rendering.
2012-08-31Fix for #32184 and redesign of particle storage in Cycles.Lukas Toenne
The particle data used by the Particle Info node was stored in cycles as a list in each object. This is a problem when the particle emitter mesh is hidden: Objects in cycles are only intended as instances of renderable meshes, so when hiding the emitter mesh the particle data doesn't get stored either. Also the particle data can potentially be copied to multiple instances of the same object, which is a waste of texture space. The solution in this patch is to make a completely separate list of particle systems in the Cycles scene data. This way the particle data can be generated even when the emitter object itself is not visible.
2012-08-10Fix for particle object rendering in Cycles. On object sync the object first ↵Lukas Toenne
has to determine if a particle update is needed (which depends on dupli objects and their meshes), before deciding to skip the actual syncing.
2012-07-23fix for cycles bug in localview: see r48269, bits used for localview gave ↵Campbell Barton
collisions with PathRayFlag's
2012-06-08Particle Info node for Cycles. This can be used to access particle ↵Lukas Toenne
information in material shaders for dupli objects. For now only the particle Age and individual Lifetime (in frames) are supported, more attributes can be added when needed. The particle data is stored in a separate texture if any of the dupli objects uses particle info nodes in shaders. To map dupli objects onto particles the store an additional particle_index value, which is different from the simple dupli object index (only visible particles, also works for particle dupli groups mode). Some simple use cases on the code.blender.org blog: http://code.blender.org/index.php/2012/05/particle-info-node/
2012-06-07Cycles: border render now works in the viewport, when looking through theBrecht Van Lommel
camera, same as in render. It draws objects in solid draw mode outside of the border.
2012-05-05code cleanup: BKE_scene api naming.Campbell Barton
also stop numpy from being found in /usr/include with cmake.
2012-05-05Fix related to #31317: viewport render layer rendering now uses render ↵Brecht Van Lommel
visibility rather than viewport visibility, is more useful that way.
2012-05-02Fix #31168: cycles mask layer should only affect objects for camera rays.Brecht Van Lommel
Fix: texture coordinate normal output was not correct, still changed under object transform.
2012-04-30Cycles: support for motion vector and UV passes.Brecht Van Lommel
Most of the changes are related to adding support for motion data throughout the code. There's some code for actual camera/object motion blur raytracing but it's unfinished (it badly slows down the raytracing kernel even when the option is turned off), so that code it disabled still. Motion vector export from Blender tries to avoid computing derived meshes when the mesh does not have a deforming modifier, and it also won't store motion vectors for every vertex if only the object or camera is moving.
2012-04-28Cycles: merging features from tomato branch.Brecht Van Lommel
=== BVH build time optimizations === * BVH building was multithreaded. Not all building is multithreaded, packing and the initial bounding/splitting is still single threaded, but recursive splitting is, which was the main bottleneck. * Object splitting now uses binning rather than sorting of all elements, using code from the Embree raytracer from Intel. http://software.intel.com/en-us/articles/embree-photo-realistic-ray-tracing-kernels/ * Other small changes to avoid allocations, pack memory more tightly, avoid some unnecessary operations, ... These optimizations do not work yet when Spatial Splits are enabled, for that more work is needed. There's also other optimizations still needed, in particular for the case of many low poly objects, the packing step and node memory allocation. BVH raytracing time should remain about the same, but BVH build time should be significantly reduced, test here show speedup of about 5x to 10x on a dual core and 5x to 25x on an 8-core machine, depending on the scene. === Threads === Centralized task scheduler for multithreading, which is basically the CPU device threading code wrapped into something reusable. Basic idea is that there is a single TaskScheduler that keeps a pool of threads, one for each core. Other places in the code can then create a TaskPool that they can drop Tasks in to be executed by the scheduler, and wait for them to complete or cancel them early. === Normal ==== Added a Normal output to the texture coordinate node. This currently gives the object space normal, which is the same under object animation. In the future this might become a "generated" normal so it's also stable for deforming objects, but for now it's already useful for non-deforming objects. === Render Layers === Per render layer Samples control, leaving it to 0 will use the common scene setting. Environment pass will now render environment even if film is set to transparent. Exclude Layers" added. Scene layers (all object that influence the render, directly or indirectly) are shared between all render layers. However sometimes it's useful to leave out some object influence for a particular render layer. That's what this option allows you to do. === Filter Glossy === When using a value higher than 0.0, this will blur glossy reflections after blurry bounces, to reduce noise at the cost of accuracy. 1.0 is a good starting value to tweak. Some light paths have a low probability of being found while contributing much light to the pixel. As a result these light paths will be found in some pixels and not in others, causing fireflies. An example of such a difficult path might be a small light that is causing a small specular highlight on a sharp glossy material, which we are seeing through a rough glossy material. With path tracing it is difficult to find the specular highlight, but if we increase the roughness on the material the highlight gets bigger and softer, and so easier to find. Often this blurring will be hardly noticeable, because we are seeing it through a blurry material anyway, but there are also cases where this will lead to a loss of detail in lighting.
2012-04-13Fix #30376: cycles ignores camera override from sequencer.Brecht Van Lommel
2012-04-13Cycles: add render layer use environment option to disable world lighting onBrecht Van Lommel
individual render layers.
2012-03-12fix [#30472] 3d view objects not rendered, cycles.Campbell Barton
holdout layer wasnt initializes in some cases.