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
2018-06-25Depsgraph: cache collision relations, for performance and stability.Brecht Van Lommel
Same reasoning as effector relations in earlier commit.
2018-06-22Depsgraph: cache effector relations, for performance and stability.Brecht Van Lommel
To find all effectors in the scene, we need to loop over all objects. Doing this during depsgraph evaluation caused crashes because not all objects are guaranteed to be evaluated yet. To fix this, we now cache the relations as part of the dependency graph build. As a bonus this also makes evaluation faster for big scenes, since looping over all objects for each particle system is slow. Fixes T55156.
2018-06-20Particle edit: Fix missing hair in edit mode for new particle systemsSergey Sharybin
Need to get away from thosae update flags in original datablocks.
2018-06-19Particles: Support changing modifiers during particle edit modeSergey Sharybin
The idea is to only use pointers to particles in original object when creating an edit structure. The derived mesh we get from evaluated object. The rest of the commit is just keeping pointers in sync.
2018-06-18Particles: Remove obsolete code for child particles in edit modeSergey Sharybin
2018-06-17Merge branch 'master' into blender2.8Campbell Barton
2018-06-17Cleanup: trailing space for blenkernelCampbell Barton
2018-06-12Particle: Use loclaized RNG for physics simulationSergey Sharybin
Avoids threading conflicts between multiple particle systems being simulated.
2018-06-12Particles: Use local RNGSergey Sharybin
Currently only obvious cases, but is already a progress.
2018-06-07Particle mode: Support children drawingSergey Sharybin
The issue is that children drawing is done by object mode, which operates with data from evaluated context. But that data needs edit mode's cache to be properly updated first.
2018-06-04Merge branch 'master' into blender2.8Campbell Barton
2018-06-04Particle System: move data creation into RNA updateCampbell Barton
Relying on evaluation to initialize data causes issues w/ 2.8.
2018-06-02Merge branch 'master' into blender2.8Campbell Barton
2018-06-02Cleanup: warningCampbell Barton
2018-06-01Merge branch 'master' into blender2.8Campbell Barton
2018-06-01Cleanup: trailing whitespace (comment blocks)Campbell Barton
Strip unindented comment blocks - mainly headers to avoid conflicts.
2018-05-31Animation: Pass dependency graph to animation systemSergey Sharybin
This way we allow animation system to make decisions based on which context dependency graph is coming from, and whether it belongs to an active edit window or not.
2018-05-31Cleanup: warningCampbell Barton
2018-05-31Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: intern/cycles/blender/blender_curves.cpp source/blender/blenkernel/BKE_particle.h source/blender/blenkernel/intern/modifier.c source/blender/blenkernel/intern/object_update.c source/blender/blenkernel/intern/particle_system.c source/blender/editors/object/object_modifier.c source/blender/editors/physics/physics_fluid.c source/blender/makesrna/intern/rna_particle.c source/blender/modifiers/intern/MOD_particlesystem.c
2018-05-31Cleanup: remove G.main from BKE modifier.Bastien Montagne
2018-05-29Fix T55203: Particle hair weights are not preservedSergey Sharybin
2018-05-26Fix T55207, fix T55208: hair not positioned correctly after subsurf.Brecht Van Lommel
The problem was that the particle system modifier was reading ob->derivedDeform during modifier stack evaluation. Due to the mesh -> DM conversion this was no longer set leading to wrong results. In fact we don't really need the deformed mesh, just the original mesh topology for face/poly index remapping. So the solution is to use that instead.
2018-05-23Fix T55168: missing updates when switching particle system type.Brecht Van Lommel
2018-05-22Modifiers: ported Cloth DerivedMesh → MeshSybren A. Stüvel
The modifier is still quite slow; this could be due to caches being written to a CoW datablock instead of the original one. More investigation is needed.
2018-05-16Particle System: ported most DerivedMesh → MeshSybren A. Stüvel
There are a few places where DerivedMesh is still used, most notably when calling the (not yet ported) cloth simulation. There is also still the use of Object.derivedDeform and Object.derivedFinal. Those places are marked with a TODO. Some functions in the editors module were copied to accept Mesh. Those already had 'mesh' in the name; the copies are suffixed with '__real_mesh' for easy renaming later when the DM-based functionality is removed.
2018-05-16Particle system: get current time from depsgraphSybren A. Stüvel
This makes the particle animation work again!
2018-05-15Particle edit: Restore weird-looking conditions in evaluationSergey Sharybin
They might be looking weird, but they match conditions when children particles are to be re-calculated for particle edit.
2018-05-09Depsgraph: Remove particle edit code from evaluationSergey Sharybin
Everything seems to be working without this, which makes since there is no evaluation-time edit code in master. The only tricky part here would be that this means we might want to ensure edit structure exists from inside particle mode in draw manager. Other point for not having this code in evaluation is that it's possible to have same object evaluated in different contexts at the same time, and since edit structures are supposed to be in original object we might run into threading conflict.
2018-05-02Depsgraph: Allow per-depsgraph debug flagsSergey Sharybin
Currently only affects EVALUATION debug messages, rest are to be supported on per-depsgraph level.
2018-04-19Remove Blender Internal and legacy viewport from Blender 2.8.Ton Roosendaal
Brecht authored this commit, but he gave me the honours to actually do it. Here it goes; Blender Internal. Bye bye, you did great! * Point density, voxel data, ocean, environment map textures were removed, as these only worked within BI rendering. Note that the ocean modifier and the Cycles point density shader node continue to work. * Dynamic paint using material shading was removed, as this only worked with BI. If we ever wanted to support this again probably it should go through the baking API. * GPU shader export through the Python API was removed. This only worked for the old BI GLSL shaders, which no longer exists. Doing something similar for Eevee would be significantly more complicated because it uses a lot of multiplass rendering and logic outside the shader, it's probably impractical. * Collada material import / export code is mostly gone, as it only worked for BI materials. We need to add Cycles / Eevee material support at some point. * The mesh noise operator was removed since it only worked with BI material texture slots. A displacement modifier can be used instead. * The delete texture paint slot operator was removed since it only worked for BI material texture slots. Could be added back with node support. * Not all legacy viewport features are supported in the new viewport, but their code was removed. If we need to bring anything back we can look at older git revisions. * There is some legacy viewport code that I could not remove yet, and some that I probably missed. * Shader node execution code was left mostly intact, even though it is not used anywhere now. We may eventually use this to replace the texture nodes with Cycles / Eevee shader nodes. * The Cycles Bake panel now includes settings for baking multires normal and displacement maps. The underlying code needs to be merged properly, and we plan to add back support for multires AO baking and add support to Cycles baking for features like vertex color, displacement, and other missing baking features. * This commit removes DNA and the Python API for BI material, lamp, world and scene settings. This breaks a lot of addons. * There is more DNA that can be removed or renamed, where Cycles or Eevee are reusing some old BI properties but the names are not really correct anymore. * Texture slots for materials, lamps and world were removed. They remain for brushes, particles and freestyle linestyles. * 'BLENDER_RENDER' remains in the COMPAT_ENGINES of UI panels. Cycles and other renderers use this to find all panels to show, minus a few panels that they have their own replacement for.
2018-04-18CMake: make recent bad level include explicitCampbell Barton
This isn't something we should do, each instance should be noted and removed.
2018-04-17Make particle edit mode work againMai Lavelle
This is just to have hair rendering and editing mostly working as in master. A better fix is probably needed, there seems to be some missing depsgraph relations for particle edit settings, and particle edit code doesn't rebuild caches after applying edits. But at least you can see and interact with hair now until those things can be sorted out.
2018-04-16Depsgraph: remove EvaluationContext, pass Depsgraph instead.Brecht Van Lommel
The depsgraph was always created within a fixed evaluation context. Passing both risks the depsgraph and evaluation context not matching, and it complicates the Python API where we'd have to expose both which is not so easy to understand. This also removes the global evaluation context in main, which assumed there to be a single active scene and view layer. Differential Revision: https://developer.blender.org/D3152
2018-04-16Merge branch 'master' into blender2.8Campbell Barton
2018-04-16Cleanup: indentationCampbell Barton
2018-04-13Python API: remove preview/render resolution settings from API functions.Brecht Van Lommel
For correct results these must have been set already when the depsgraph was created and evaluated, so all dependencies have appropriate resolutions too. For particle we no longer backup and restore the viewport particles to avoid overwriting them during render, as copy-on-write solves this for us. Even without COW particles seem to work ok. This also removes the particle simplification options based on camera. This was never used much and only available in Blender Internal. Differential Revision: https://developer.blender.org/D3148
2018-04-05Remove workspace object mode, reverts changes w/ 2.8Campbell Barton
This caused too many problems syncing object modes with multiple objects/windows/workspaces, see: D3130 for details.
2018-04-01Merge branch 'master' into blender2.8Campbell Barton
- Undo that changes modes currently asserts, since undo is now screen data. Most likely we will change how object mode and workspaces work since it's not practical/maintainable at the moment. - Removed view_layer from particle settings (wasn't needed and complicated undo).
2018-04-01Cleanup: remove global headerCampbell Barton
2018-03-29Particles: Remove dedicated recalc field from ParticleSettingsSergey Sharybin
Use more generic id->recalc flag. Also sanitize flag flush from settings to particle system. Need to do such flush before triggering point cache reset, since point cache reset will do some logic based on what flags are set. This will solve crash caused by threaded update which will set some bitflags while point cache reset is in progress.
2018-03-16Merge branch 'master' into blender2.8Sergey Sharybin
2018-03-16Depsgraph: Move evaluation debug prints to depsgraphSergey Sharybin
This way we can easily control format and keep it consistent. And also possibly do other trickery, like coloring addresses!
2018-03-09Cleanup: iterator macrosCampbell Barton
- put render iterator in own scope (would shadow it's own variable if used multiple times). - enforce semicolon at end of iterator macros. - no need to typedef one-off macro structs.
2018-03-01Cleanup: macro's w/ an _END need a matching _BEGINCampbell Barton
Convention from 2.7x, since some looping macros don't need an '_END', it avoids confusion to keep this.
2018-02-21Merge branch 'master' into blender2.8Sergey Sharybin
2018-02-21Depsgraph: Split debug flagsSergey Sharybin
Now it's possible to have debug messages for following things: - Graph construction - Graph evaluation - Graph tagging
2018-02-18Merge branch 'master' into blender2.8Campbell Barton
2018-02-18Cleanup: add 2d suffix to BLI filesCampbell Barton
Some of these API's can have 3D versions, explicitly name them 2D.
2018-02-16Cleanup: quiet warningCampbell Barton
2018-02-15Merge branch 'master' into blender2.8Sergey Sharybin