Revision 188874a by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 26, 2017, 11:13 (GMT) |
Separate step for mesh sample generators to bind them to a specific mesh. |
Revision e303369 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 25, 2017, 08:19 (GMT) |
Initial implementation of Poisson disk sampling on meshes. This is still buggy (uneven sample coverage) and needs changes to the sampling system for better threading support. The implementation is based on Bowers, John, et al. "Parallel Poisson disk sampling with spectrum analysis on surfaces." ACM Transactions on Graphics (TOG). Vol. 29. No. 6. ACM, 2010. |
Revision ef67e13 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 23, 2017, 08:44 (GMT) |
Thread-safe implementation of the volume bounding-box raycast sampler. |
Revision 9e8a41a by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 23, 2017, 08:07 (GMT) |
Include other sample generators in tests. Volume bbray method is currently excluded because the implementation is not yet thread-safe. |
Revision 8b607d7 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 22, 2017, 17:49 (GMT) |
New gtests for the mesh sampling system. This should test general functionality and consistency of different methods for generating samples. In particular it shoud ensure that threaded variants produce the same samples as unthreaded variants when using the same generator and seeds. |
Revision 0d4fa23 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 21, 2017, 05:42 (GMT) |
Use a consistent number of RNG steps in both sample generation and skipping. This is to ensure that threaded generator usage creates the exact same results as the non-threaded base version. Further improvements and testing will be needed. |
Revision e3b80d6 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 20, 2017, 17:50 (GMT) |
Multithreading support for the mesh sampling library. Samples can be generated either one-by-one using the existing "make_sample" function (which uses a default context), or use the more efficient batch generation functions. These optionally support threading via the task scheduler now. |
Revision ead00ba by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 19, 2017, 11:26 (GMT) |
Fix hair follicle array write/read. |
Revision 45f0f3d by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 19, 2017, 11:02 (GMT) |
Merge branch 'blender2.8' into strand_editmode |
Revision 0d67f8d by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 19, 2017, 07:56 (GMT) |
Removed unused shaders in the draw modes module. |
Revision 438b3f9 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 18, 2017, 15:13 (GMT) |
Implement control strands generation for basic hair types along surface normals. The default hair group type uses vertex normals to generate guide strands automatically. |
Revision 1b83722 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 14, 2017, 07:46 (GMT) |
Store the scalp mesh as part of the hair drawing interface. The scalp mesh is always needed for evaluating root positions anyway. |
Revision 6faa4d7 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 14, 2017, 07:19 (GMT) |
Removed fiber drawing from the strand edit mode to simplify code. For rendering hair fibers the edit mode should just use the underlying data. |
Revision b0717ad by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 14, 2017, 06:58 (GMT) |
Hair drawing data based on the new DNA hair groups. |
Revision 91fd0a4 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 11, 2017, 07:57 (GMT) |
Store pointer into the hair follicle array in hair groups directly. This creates a dependency of the hair groups on the validity of the pattern, so care has to be taken to always update the groups when the pattern changes. |
Revision e7df5f8 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 11, 2017, 07:17 (GMT) |
Split off hair drawing code into a separate file. |
Revision 6fa838f by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 7, 2017, 17:04 (GMT) |
List of 'Hair Groups' in hair patterns that will generate actual fibers for rendering. Each group affects a subset of the hair follicles, so that multiple effects can be combined without overlapping sample sets. |
Revision 41e8bd9 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 7, 2017, 12:06 (GMT) |
Merge branch 'blender2.8' of git.blender.org:blender into strand_editmode |
Revision 77802b2 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 7, 2017, 11:29 (GMT) |
Operator for generating a hair follicle distribution. |
Revision 8abe674 by Lukas Toenne (hair_guides, hair_guides_grooming, hair_object, strand_editmode, tmp_hair_curves) August 7, 2017, 09:54 (GMT) |
DNA data + modifier for storing persistent hair data. This stores basic hair follicle data, rather than full fiber caches (which should only be generated for render data). Note that deformation by strands will just be one possible way to generate hair fibers, so strands should be kept separate from the hair follicle data somewhat. |
|