May 27, 2015, 13:16 (GMT) |
Simplified render/preview settings for cache baking. The previous way of selecting preview ("realtime") and render settings on the cache library level was complicated and confusing. Now there are just 2 buttons for baking either the preview or render level. Technically the cache still works the same way, so a 3rd button could be added for baking both passes into the same cache, should the need arise. The preview cache now also uses the preview frame range, which should help in quick testing of hair simulation settings. Render always uses the scene frame range, like render buttons do. For display in the viewport and rendering the cache will now use whatever data is available in the archive. If the cache contains only render data, the viewport will also draw full render data. Vice versa, if the cache contains only preview data, this will also be used for rendering. Hair toggles for children and motion now are only used for the viewport display. This simplifies the settings a lot and removes one potential button to be overlooked. |
May 26, 2015, 07:34 (GMT) |
Merge branch 'master' into alembic |
May 24, 2015, 10:44 (GMT) |
Fix for cycles rendering of shortened hair curves. The strands data can now contain more vertices than are supposed to be rendered (if cutoff < numverts). |
May 22, 2015, 15:52 (GMT) |
Support for cutoff parameters in Alembic files. These are optional, so older alembic cache versions still work. |
May 22, 2015, 15:25 (GMT) |
Take transformation of the duplicator object into accound for hair cutting. When using a dupli object from the same group as a target it is sufficient to calculate the relative transform in the shared duplicator local space. When using an external object though we have to transform into world space first. |
May 22, 2015, 14:59 (GMT) |
Fix for incorrect cutoff points with the haircut cache modifier. |
May 22, 2015, 14:22 (GMT) |
Implemented hair cutting for cached strands, based on a cutoff parameter for child hairs. The algorithm works by finding the first intersection of each child hair with the target mesh. The child hairs have to be deformed with their parents first (this usually happens *after* modifiers). |
May 22, 2015, 10:30 (GMT) |
Option for the haircut cache modifier to either use a scene object or an "internal" object from the group. |
May 22, 2015, 10:18 (GMT) |
New cache modifier "Haircut", for removing unwanted child hairs. |
May 22, 2015, 10:18 (GMT) |
Initialize curve mappings once after creating, just to be sure. |
May 22, 2015, 07:56 (GMT) |
Alembic: Update stubs file so building without alembic works fine |
May 21, 2015, 15:35 (GMT) |
Use a flag to explicitly apply shape keys to either the goal positions or the motion state. |
May 21, 2015, 14:15 (GMT) |
Use correct blending weights for hair shapekey references. |
May 21, 2015, 13:21 (GMT) |
Removed unused variable. |
May 20, 2015, 12:30 (GMT) |
Use dedicated versions of shapekey eval functions for strands. Strand shapekeys will be interpreted as delta keys without a basis, since the basis would be animated and therefore useless for static keys. To avoid complexity in the already overburdened shapekey functions and to skip old legacy code, the strands shapekeys now have their own functions. |
May 20, 2015, 10:56 (GMT) |
Removed some useless old code. |
May 20, 2015, 10:48 (GMT) |
Removed the complicated optional refdata handling from the generic shape key eval function. This now goes to a dedicated strands function which can be cleaned up properly, all the old code can function as before. |
May 20, 2015, 10:14 (GMT) |
Fixed shape key reference data usage, for applying shape keys on top of an animated base. This is necessary for strand shape keys. The basis of the data comes from the cached animation or simulation results, i.e. we can't use the fixed basis key or the result would always become static. |
May 19, 2015, 15:31 (GMT) |
Apply strand shape keys to both the base strand coordinates and the motion state. This means shape keys work on the goal positions for hair as well as the simulation results (hair motion). If the simulation is created before shape keys are applied, the resulting sim will be mixed with the shape keys, becoming more rigid with increased shape weights. OTOH the shape keys can also be applied to the animation result, before doing hair simulation. In that case the shape will only affect the goal positions and the bending shape of the hair, but the hair is otherwise free to move. |
May 19, 2015, 13:42 (GMT) |
Set the 'from' pointer in Key directly in the init method, so it works with NULL pointers too. |
|