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-10-04Merge branch 'master' into blender2.8Sergey Sharybin
2017-10-04Fix error copying smoke modifier uv layerCampbell Barton
2017-08-16Pass EvaluationContext instead of bContextCampbell Barton
2.8x branch added bContext arg in many places, pass eval-context instead since its not simple to reason about what what nested functions do when they can access and change almost anything. Also use const to prevent unexpected modifications. This fixes crash loading files with shadows, since off-screen buffers use a NULL context for rendering.
2017-08-15Cleanup/refactor: no new general arg-less macros enforcing var names please!Bastien Montagne
We do have an history of those pieces of evil in our code, would be nice to get fully rid of it, but at the very least let's not add more of them in new code. :)
2017-08-12Merge branch 'master' into blender2.8Campbell Barton
2017-08-11Cleanup: remove useless `DM_ensure_looptri()`.Bastien Montagne
That one was doing exactly same thing as `dm->getLoopTriArray()`, no point in having twice the same code here...
2017-07-21Fix compilation error with smoke and rigid body disabledSergey Sharybin
2017-07-21Pass EvaluationContext argument everywhereLuca Rood
Note that some little parts of code have been dissabled because eval_ctx was not available there. This should be resolved once DerivedMesh is replaced.
2017-04-24Fix own mistake in smoke.cLuca Rood
2017-04-24Convert BaseLegacy to Base (part)Luca Rood
2017-02-07Render Layers and Collections (merge from render-layers)Dalai Felinto
Design Documents ---------------- * https://wiki.blender.org/index.php/Dev:2.8/Source/Layers * https://wiki.blender.org/index.php/Dev:2.8/Source/DataDesignRevised User Commit Log --------------- * New Layer and Collection system to replace render layers and viewport layers. * A layer is a set of collections of objects (and their drawing options) required for specific tasks. * A collection is a set of objects, equivalent of the old layers in Blender. A collection can be shared across multiple layers. * All Scenes have a master collection that all other collections are children of. * New collection "context" tab (in Properties Editor) * New temporary viewport "collections" panel to control per-collection visibility Missing User Features --------------------- * Collection "Filter" Option to add objects based on their names * Collection Manager operators The existing buttons are placeholders * Collection Manager drawing The editor main region is empty * Collection Override * Per-Collection engine settings This will come as a separate commit, as part of the clay-engine branch Dev Commit Log -------------- * New DNA file (DNA_layer_types.h) with the new structs We are replacing Base by a new extended Base while keeping it backward compatible with some legacy settings (i.e., lay, flag_legacy). Renamed all Base to BaseLegacy to make it clear the areas of code that still need to be converted Note: manual changes were required on - deg_builder_nodes.h, rna_object.c, KX_Light.cpp * Unittesting for main syncronization requirements - read, write, add/copy/remove objects, copy scene, collection link/unlinking, context) * New Editor: Collection Manager Based on patch by Julian Eisel This is extracted from the layer-manager branch. With the following changes: - Renamed references of layer manager to collections manager - I doesn't include the editors/space_collections/ draw and util files - The drawing code itself will be implemented separately by Julian * Base / Object: A little note about them. Original Blender code would try to keep them in sync through the code, juggling flags back and forth. This will now be handled by Depsgraph, keeping Object and Bases more separated throughout the non-rendering code. Scene.base is being cleared in doversion, and the old viewport drawing code was poorly converted to use the new bases while the new viewport code doesn't get merged and replace the old one. Python API Changes ------------------ ``` - scene.layers + # no longer exists - scene.objects + scene.scene_layers.active.objects - scene.objects.active + scene.render_layers.active.objects.active - bpy.context.scene.objects.link() + bpy.context.scene_collection.objects.link() - bpy_extras.object_utils.object_data_add(context, obdata, operator=None, use_active_layer=True, name=None) + bpy_extras.object_utils.object_data_add(context, obdata, operator=None, name=None) - bpy.context.object.select + bpy.context.object.select = True + bpy.context.object.select = False + bpy.context.object.select_get() + bpy.context.object.select_set(action='SELECT') + bpy.context.object.select_set(action='DESELECT') -AddObjectHelper.layers + # no longer exists ```
2017-01-11Split interp_weights_face_v3 into specific functions for tris and quadsLuca Rood
This splits `interp_weights_face_v3` into `interp_weights_tri_v3` and `interp_weights_quad_v3`, in order to properly handle three sided polygons without needing a useless extra index in your weight array. This also improves clarity and consistency with other math_geom functions, thus reducing potential future errors. Reviewed By: mont29 Differential Revision: https://developer.blender.org/D2461
2016-10-30Viewport smoke: add support to render the volume using a color ramp.Kévin Dietrich
This is yet another debug option that allows to render an arbitrary simulation field by using a color ramp to inspect its voxel values. Note that when using this, fire rendering is turned off. Reviewers: plasmasolutions, gottfried Differential Revision: https://developer.blender.org/D1733
2016-09-24Viewport smoke: add options to draw velocity vectors.Kévin Dietrich
This basically exposes to the UI a function that was only available through a debug macro ; the purpose is obviously to help debugging simulations. It adds ways to draw the vectors either as colored needles or as arrows showing the direction of the vectors. The colors are based on the magnitude of the underlying vectors. Reviewers: plasmasolutions, gottfried Differential Revision: https://developer.blender.org/D1733
2016-09-24Viewport smoke: add support for axis aligned slicing.Kévin Dietrich
Current approach uses view aligned slicing to generate polygons for GL texturing such that the generated polygons are always facing the view plane. Now it is also possible to use object aligned slicing, which creates polygons by slicing the object perpendicular to whichever axis is facing the most the view plane. It is also possible to create a single slice for inspecting the volume, or for 2D rendering effects. Settings for this, along with a density multiplier setting, are to be found in a newly added "Smoke Display Settings" panel in the smoke domain properties tab. Reviewers: plasmasolutions, gottfried Differential Revision: https://developer.blender.org/D1733
2016-08-16More fixes from coverity report.Bastien Montagne
2016-08-11Fix T49004 and motion blur of cloth, softbody, etc past the end frame.Alexander Gavrilov
Point cache read code contains checks designed to prevent it reading stale data when the relevant simulation code should instead compute the next frame from the previous one. However in some situations like motion blur subframes the simulation can't possibly do it and just exits. This causes completely incorrect motion blur at or after the last cached frame. To fix, add a parameter that tells the cache code whether it should apply the checks and exit, or read what it can even if stale (true means exactly same as old behavior). Doing this in cache rather than clamping the frame number better in the caller lets it handle the case of incomplete cache that stops before the official last frame. Reviewed By: mont29, lukastoenne Maniphest Tasks: T49004 Differential Revision: https://developer.blender.org/D2144
2016-08-02Fix T43782: smoke simulation problems with multiple touching colliders.Alexander Gavrilov
When the colliders are joined, each cell that touches them only gets velocity contribution once. When there are multiple objects, velocities are summed, which causes some cells to get 2x, 3x or more than the actual object velocity. Fix this by using the average velocity of all colliders touching a cell. Reviewers: miikah, lukastoenne Reviewed By: lukastoenne Subscribers: dafassi, scorpion81, #physics Maniphest Tasks: T43782 Differential Revision: https://developer.blender.org/D2112
2016-07-27Fix T48061: Crash with adaptive domain and cases when there's no smokeAlexander Gavrilov
2016-01-27Fix T47250: OpenVDB crashKévin Dietrich
Issue was that the domain matrix was not initialized properly on the first frame (in smokeModifier_init), which caused OpenVDB to throw an exception for trying to create a VDB grid with non-affine transform.
2016-01-23Implementation of OpenVDB as a possible cache format for smokeKévin Dietrich
simulations. This commits implements OpenVDB as an extra cache format in the Point Cache system for smoke simulations. Compilation with the library is turned off by default for now, and shall be enabled when the library is present. A documentation of its doings is available here: http:// wiki.blender.org/index.php/User:Kevindietrich/OpenVDBSmokeExport. A guide to compile OpenVDB can be found here (Linux): http:// wiki.blender.org/index.php?title=Dev:Doc/Building_Blender/Linux/ Dependencies_From_Source#OpenVDB Reviewers: sergey, lukastoenne, brecht, campbellbarton Reviewed By: brecht, campbellbarton Subscribers: galenb, Blendify, robocyte, Lapineige, bliblubli, jtheninja, lukasstockner97, dingto, brecht Differential Revision: https://developer.blender.org/D1721
2016-01-17Fix T47189: Large smoke simulation sometimes make Blender crash.Bastien Montagne
Issue was with very thin domains along one or two axes, these could lead to simulation with only one cell width - and smoke code assumes we have at least 4 cells in each direction. So now, we clamp resolution to a minimum of 4 in smoke_set_domain_from_derivedmesh(). Note: in extreme cases like this report, this will generate very un-cubic cells, check it still works OK in 3DView is needed here. Thanks to @genscher and @kevindietrich for help on this issue. :)
2016-01-16Fix smoke BLI_task'ed code after recent refactor.Bastien Montagne
Curse gcc for not erroring by default on passing wrong func pointers... :/
2016-01-10Smoke: fix for missing viewport color update.Kévin Dietrich
Active color wasn't copied over if it differs from what the user plugged in in the UI. Also use a darker color for the default color so smoke doesn't doen't appear too bright. Reported in IRC by mib2berlin.
2016-01-09Cleanup: warning/spellingCampbell Barton
2016-01-09Smoke (fire): Move spectrum code from C++ (intern/) to C code (BLI)Kévin Dietrich
This change is for a few reasons: - it works with color, and (therefore) will need to be color managed, at some point. This will be much easier to do if the code is closer to the actual color management code (in Blender's core, so to speak). - it has nothing to do with the actual fire simulation, as it is just used to create a lookup table - it can be reused for other purposes (i.e. in Blender internal renderer, if people are interrested in a blackbody node à la Cycles) - cleanup: some functions (`contrain_rgb`, `xyz_to_rgb`) already exist in BLI Reviewers: brecht Reviewed By: brecht Subscribers: brecht Differential Revision: https://developer.blender.org/D1719
2016-01-09Smoke, Dynamic Paint: de-duplicate object subframe update function.Kévin Dietrich
As in the title. In the smoke version, there was also an extra 'for_render' parameter that wasn't used, and wasn't used by the callers either, so it was removed altogether. Reviewers: brecht Reviewed By: brecht Subscribers: brecht Differential Revision: https://developer.blender.org/D1718
2016-01-09Cleanup: make use of PIL time instead of redefining own timers.Kévin Dietrich
Also added a DEBUG_TIME macro in the related files to comment time funcs out. Reviewers: brecht Reviewed By: brecht Subscribers: brecht Differential Revision: https://developer.blender.org/D1717
2015-12-30Grr, forgot those ones in previous commit...Bastien Montagne
Never believe QTCreator when it comes to finding all usages of a func, kids... grep ftw!
2015-12-28Switch BKE_smoke from OMP to BLI_task.Bastien Montagne
Gives a global speedup of about 5% in smoke simulation (as usual, parallelized chunks themselves are about 15-25% quicker with BLI_task than with OMP), using a simple setup with two generators (one from mesh, one from particles), an obstacle and a windfield.
2015-11-23Cleanup: shadowing (blenkernel)Campbell Barton
2015-08-26Fix T44945: Blender crashes when using multiple domains and multiple flow ↵Sergey Sharybin
objects with subframes This is more like a workaround to prevent obvious cases fail, but in theory if some other area will start updating object for subframes blender will crash again. Perhaps proper way to solve this will be to copy objects for subframe updates.
2015-07-30Use looptri for smoke bvhtreeCampbell Barton
Missed from D1424
2015-07-23Use looptri for sampling UV's in smoke.cCampbell Barton
D1424 by @scorpion81
2015-07-23Use looptri for smoke collisions & particle editCampbell Barton
2015-06-06CleanupCampbell Barton
2015-03-30Cleanup: use const for typeinfoCampbell Barton
2015-03-25Fix for crash when using particle emission with clump/roughness curvesLukas Tönne
in a smoke sim. This interaction between sims is totally stupid and must be recoded entirely in some utopian future.
2015-03-09Fix T43674: Smoke collision does not detect obstacles reliably.Lukas Tönne
The smoke obstacle detection was using a maximum distance for BVH checks to find mesh elements that define boundary cells in the grid. This BVH test was using an arbitrary value of 0.6 cell units. It should be `sqrt(3)*0.5` to account for the maximum possible distance of mesh elements inside a cell. Otherwise some cells that should form the boundary are not detected as such (no closest mesh element found inside the radius), so you get gaps in the smoke obstacle.
2015-02-06Fix T42950: Smoke particle flow doesn't work with high res and subframes ↵Miika Hamalainen
unless "set size" option is ticked.
2014-12-01Cleanup: more int->bool.Bastien Montagne
2014-11-29Cleanup: use const, avoid float -> double in matrix invertCampbell Barton
2014-11-23Refactor: BLI_path_util (part 2)Campbell Barton
Use BKE_appdir/tempdir naming prefix for functions extracted from BLI_path_util
2014-11-23Refactor: BLI_path_util (split out app directory access)Campbell Barton
This module is intended for path manipulation functions but had utility functions added to access various directories.
2014-11-11Avoid calling powf with integer exponent in more placesSergej Reich
Move powX functions from particle code into math library and use them.
2014-10-08Ghost Context RefactorJason Wilkins
https://developer.blender.org/D643 Separates graphics context creation from window code in Ghost so that they can vary separately.
2014-06-23T39690: Modifications to Blender's 'temp dir' system.Bastien Montagne
Current temporary data of Blender suffers one major issue - default 'temp' dir on Windows is never automatically cleaned up, and can end being quite big when used by Blender, especially when we have to store per-process data (using getpid() in file names). To address this, this patch: * Divides tempdir paths in two, one for 'base' temp dir (the same as previous unique tempdir path), the other is a mkdtemp-generated sub-dir, specific to each Blender instance. * Only uses base tempdir when we need some shallow persistance accross Blender sessions - and we always reuse the same filename (quit.blend...) or generate small file (crash reports...). * Uses temp sub-dir for heavy files like pointcache or renderEXRs (Save Buffer option). * Erases temp sub-dir on quit or crash. To get this working it also adds a working 'recursive delete' to BLI_delete() under Windows. Note that, as in current code, the 'recover render result' hack-feature that was possible with SaveBuffer option is still removed. A real renderresult cache feature will be added soon, though. Reviewers: campbellbarton, brecht, sergey Reviewed By: campbellbarton, sergey CC: sergey Differential Revision: https://developer.blender.org/D531
2014-05-15Remove redundant NULL checkCampbell Barton
2014-05-12Fix T40115: Smoke simulator memory leak with high poly mesh emitter.Bastien Montagne
Own error, all kudos go to scorpion81 (Martin Felke) for the nvestigation & patch!
2014-04-30Code cleanup: remove unused includesCampbell Barton
Opted to keep includes if they are used indirectly (even if removing is possible).