Revision d1ed354 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, viewport_experiments) September 16, 2014, 12:09 (GMT) |
Fix issue with sculpting and SSAO. We need to enable stenciling on the compositing FBO or we can clear areas we don't want to clear and cause invalid depth values. |
Revision 829addc by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, viewport_experiments) September 16, 2014, 09:25 (GMT) |
Restore texture coordinates properly |
Revision 313b568 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, viewport_experiments) September 16, 2014, 08:26 (GMT) |
Merge branch 'master' into viewport_experiments |
Revision 3a0d276 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, viewport_experiments) September 15, 2014, 18:32 (GMT) |
Fix for flickering, recreate the framebuffer textures in that case (looks like it's the only way to have matching per pixel results too) |
Revision acdaf71 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, viewport_experiments) September 15, 2014, 18:06 (GMT) |
Move GPU compositing to its own file. Also avoid recreating the framebuffers and gpu/color textures each frame. Happiness :) There are still some glithes when scaling the areas, I'll look at those next. |
Revision fd38892 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 15, 2014, 15:41 (GMT) |
Minor fix when gravity code is disabled. |
Revision 21f43fb by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, viewport_experiments) September 15, 2014, 14:55 (GMT) |
SSAO * Expose attenuation value - allows to change influence of far objects * Change influence of far objects to quadratic, eliminates some extreme fringing from far occluding surfaces. |
Revision 2632c13 by Antonis Ryakiotakis (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths, viewport_experiments) September 15, 2014, 14:12 (GMT) |
SSAO shader. This works by using the calculated view space normal and accumulating coverage of a certain area by nearby pixels. There are two sliders to control the effect: * Scale controls the area around each pixel that the shader "collides" against * Darkening scales the occlusion effect. The effect works, but due to the way the normals are calculated, the normals are never smooth shaded (that would require a separate render target to store them) and the edges or polygons can be too apparent. This is not really fixable at the moment unless we move to deferred pipeline. The FX system is stll not well optimized and rendering does not always work correctly, but it's good to have this out for people to play with. |
Revision 624c995 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 15, 2014, 12:22 (GMT) |
Removed unused code. |
Revision 28f173b by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 15, 2014, 12:18 (GMT) |
Added a calculation function for the fictitious forces introduced by moving hair root reference frames. This calculates Euler, Coriolis and Centrifugal forces which result from describing hair in a moving reference frame. http://en.wikipedia.org/wiki/Fictitious_force |
Revision e2e49b9 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 15, 2014, 10:51 (GMT) |
Fix for own misconception of fictitious forces in the moving hair root frames. These forces don't have to be calculated for each individual contribution. Rather they can be split off and be calculated on top of the basic force vector rotation (todo). |
Revision 68275a4 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 15, 2014, 10:10 (GMT) |
Added back spring force definitions outside the implicit solver. There are currently 3 types of springs: basic linear springs, goal springs toward a fixed global target (not recommended, but works) and bending springs. These are agnostic to the specific spring definition in the cloth system so hair systems can use the same API without converting everything to cloth first. |
Revision ffb8b18 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 14, 2014, 17:36 (GMT) |
Main cloth force calculation function outside of implicit core code. Still misses spring forces. |
Revision 6288a2d by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 14, 2014, 16:08 (GMT) |
Hair volume calculation is now in its own file. Code is currently disabled until the other main forces are in place. |
Revision 5f04368 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 14, 2014, 15:47 (GMT) |
Moved the unused goal force calculation function to the main mass-spring source file. |
Revision d0337e0 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 14, 2014, 15:36 (GMT) |
Moved most of the main cloth solver function out of implicit code core. Force calculation is disabled, will follow shortly. |
Revision c5cb46f by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 14, 2014, 12:16 (GMT) |
Moved init/free functions for solver data out of implicit core. This also initializes spring matrix indices (off-diagonal 3x3 blocks), which now uses a new API function. |
Revision 4da2c84 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 14, 2014, 11:23 (GMT) |
Moved "set_positions" for cloth out of core implicit solver. API for the solver now has functions for setting of vertex motion state and the associated root transform data. |
Revision fe135d3 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 13, 2014, 16:45 (GMT) |
Renamed functions to make them explicitly refer to cloth, and split the create/free functions for solver data off from the cloth solver. |
Revision 6978d15 by Lukas Toenne (gooseberry, gooseberry_farm, hair_immediate_fixes, hair_system, temp_constraint_volume, temp_hair_flow, temp_hair_modifiers, temp_motionpaths) September 13, 2014, 12:36 (GMT) |
Moved the cloth solver code into a new subfolder/library inside Blender code. The implicit solver itself should remain agnostic to the specifics of the Blender data (cloth vs. hair). This way we could avoid the bloated data conversion chain from particles/hair to derived mesh to cloth modifier to implicit solver data and back. Every step in this chain adds overhead as well as rounding errors and a possibility for bugs, not to speak of making the code horribly complicated. The new subfolder is named "physics" since it should be the start of a somewhat "unified" physics systems combining all the various solvers in the same place and managing things like synchronized time steps. |
|