Revision 7f21913 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Disable scope updates in texture and image paint modes. Scope update is very slow for high resolutions, and currently blocks the UI thread(!). This is especially terrible in paint modes, where each stroke causes a scope update and unacceptable freezing. The scopes update method tries to avoid this somewhat by skipping if the toolbar is disabled, but this doesn't help when painting where brush tools etc. are frequently needed. It's also a bad-level poll, with the core system accessing a UI element. Eventually scope updates should become a low-priority background job, as well as becoming threaded. Until then this polling provides a usable workaround to the most outrageous cases. |
Revision d124696 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Curve-based control for "roughness" (noise displacement) of child hair. |
Revision c86d55d by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Curve-based control for child path tapering. This is an alternative method to the current fixed function with a clump factor and "shape" parameter. This function is quite limited and does not give the desired result in many cases (e.g. long, parallel rasta strands are problematic). So rather than trying to add more parameters there is now a fully user-defined optional curve for setting the tapering shape. |
Revision 4c82367 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Moved kink, clump and roughness functions into the dedicated source file. |
Revision 4f1c0a1 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Reorganizing hair child code a little bit to make it not totally insane. This contains a few pieces of code for a future "modifier" system that would allow more flexible combination of effects. Eventually a node system is the way to go, but the current code makes that impossible. |
Revision b292d78 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Separate context freeing from task freeing in threaded particle updates to prevent double-freeing/invalid mem access. This can happen with the "virtual parents" feature, which generates both parent and child paths. Each task free function also freed the shared context, leading to double freeing. |
Revision 1727a16 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Properly register the `mathutils.interpolate` submodule. |
Revision 1b6f5ec by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Fix for invalid access to undefined hair data in edge-only cloth meshes. Cloth data is used both for hair and actual cloth, which makes things really difficult. The face number was used for distinguishing the two types (no faces == hair mesh), but the extra hair data necessary for hair sim is generated by particles and not available for edge-only cloth meshes. This really needs to be sanitized ... Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp |
Revision bb76e96 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Presets for hair dynamics. This is necessary because the hair dynamics settings are not part of the ParticleSettings datablock, but part of the convoluted cloth modifier inside the particle system struct. In the future this will be recoded properly, but in the meantime presets provide a simple an unobtrusive way to have reusable dynamics settings for hair. Conflicts: release/scripts/startup/bl_ui/properties_particle.py |
Revision db2ac79 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Radical simplification of the wind effect on hair, since the previous approach does not work very well. Using a cross section estimate still causes large oscillations due to varying hair force based on angles. It also requires a sensible hair thickness value (particle radius) which is difficult to control and visualize at this point. The new model is based purely on per-vertex forces, which seems to be much more stable. It's also somewhat justified by the fact that each hair vertex represents a certain mass. Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp |
Revision f0e8690 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Fix for wind force function call. |
Revision 5c7adf5 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Improved force field effects on hair strands. The previous calculation was modulated with the angle between the wind direction and the segments, which leads to very oscillating behavior. Now the formula includes an estimate for the geometric cross section of a hair segment based on the incident angle and the hair thickness (currently just the particle size). This gives a more stable behavior and more realistic response to wind. Conflicts: source/blender/blenkernel/intern/particle_system.c source/blender/physics/intern/BPH_mass_spring.cpp |
Revision 658fc3d by Lukas Toenne January 20, 2015, 08:30 (GMT) |
New python submodule `mathutils.interpolate` for various mesh interpolation and weighting methods. This module will contain mirrored functions for calculating and applying weights for points on a mesh. This includes barycentric and UV weighting and possibly more advanced global weighting such as harmonic weights. The naming should follow this scheme: <type>_{2d,3d}_{calc,apply} e.g. poly_2d_calc poly_2d_apply uv_3d_calc ... Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D939 |
Revision 3b938f3 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Fix for missing library linking in blenderplayer. |
Revision 3f3c19e by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Another fix for particle instance child lookups, was not subtracting parent amount. |
Revision c3c1950 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Fix for invalid particle pointer access in mixed particle/child loop. |
Revision 790b931 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Better update function for particle settings affecting nested cloth modifier. |
Revision 60bf6c1 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Fix for applying the bending randomness factor. A stupid hack is needed here, changing the way the factor is applied to angular bending springs. In cloth sim the bending factor of individual springs is applied as a mix value between the bending stiffness and a max value, but this max value isn't even used in hair sim so that approach becomes useless. Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp |
Revision d031831 by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Randomness factor for hair bending stiffness. This helps to create some variation in a hair system, which can otherwise become very uniform and boring. It's yet another confusing setting in a system that should have been nodified, but only option for now (broken windows ...) Conflicts: source/blender/blenkernel/intern/particle_system.c source/blender/physics/intern/BPH_mass_spring.cpp |
Revision 64a4d4e by Lukas Toenne January 20, 2015, 08:30 (GMT) |
Fix for particle instance initial frames. These were not orthonormal and tended to flip with changing hair direction, now use the particle hair matrix which is stable wrt. the mesh surface. |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021