* Hair
- First introduction of Hair gem to Atom and O3DE
- The hair technology is based off TressFX 4.1
- These are some of the areas we enhanced the original TressFX implementation:
- Lighting model was replaced and we now use a modified Marschner model
- Blending is done directly with the back buffer removing the silhouette of the original implementation
- Hair depth / thickness is now calculated to remove incorrect back lighting (TT lobe in the Marschner model)
- Thickness corrected to handle hair gaps hence introducing better light passage for the TT
- The hair is fully integrated into the Atom pipeline and structure design
- Usage of single shared buffer for the computer buffers reduces barriers sync overhead
Remarks:
- Collisions via SDF compute are to be introduced soon
- Improved shortcut rendering method ala Eidos Montreal to be introduced soon
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - code clean pass
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - EMFX Actor visibility implementation
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - COnnecting hair passes to Atom's MainPipeline.pass
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - adding dedicated thumbnail pipeline that does not include the hair gem
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - changed Atom shader files to allow hooking the hair to the lighting data structures
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - fixed a few headers to have the latest O3DE license + verification fixes
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - enabling editor component only when tool pipline is built + default texture add
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - fixing Linux and Android compilation builds
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - another files change to make Linux compile
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - more Linux and Android build fixes
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair
- Adding usage of fallback white texture
- Removing invalid null assignments into vectors
- Removing redundant mutex preventing deletion on some platforms
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair
- Shame: removed forgoten #pragma optimize
- Adding header complained by Android
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - removing the Hair Gem connection in the active project.
- This submission removes the connection to the active project hence allowing to run without the Gem. Enable the passes in MainPipeline.pass and declare them again when you want to use the Gem.
Remark: the gem file PassTemplates.azasset was renamed and will be connected via code in the future to avoid the need to declare in the global pass template.
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - registrating gem pass templates through the gem templates file (#198)
* Hair - registrating gem pass templates through the gem templates file
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - adding handler disconnect for the pass template registration.
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - PPLLIndexCounter buffer going data driven via the pass declarations (#202)
* Hair - PPLLIndexCounter buffer going data driven via the pass declaration
- Moving PPLLIndexCounter from code allocation and attachment to be data driven
- Fixed RPI typo bug that can prevent using buffers like that
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - fixing UI Editor (LYShine) crash (#209)
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* [Hair - resolved the multi pipeline mismatches and crashes + cleaned initialization & leftovers (#222)
* [Hair] - multiple render pipelines handling
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* [Hair] - Shut down order is handle to allow hair feature processor be deregistered only after the bootstrap component has disabled it
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* [Hair] - minor cleanups
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* [Hair] - followups from review nits
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - code fixes based on the CR remarks for the Hair merge to Dev (#248)
* Hair
- First introduction of Hair gem to Atom and O3DE
- The hair technology is based off TressFX 4.1
- These are some of the areas we enhanced the original TressFX implementation:
- Lighting model was replaced and we now use a modified Marschner model
- Blending is done directly with the back buffer removing the silhouette of the original implementation
- Hair depth / thickness is now calculated to remove incorrect back lighting (TT lobe in the Marschner model)
- Thickness corrected to handle hair gaps hence introducing better light passage for the TT
- The hair is fully integrated into the Atom pipeline and structure design
- Usage of single shared buffer for the computer buffers reduces barriers sync overhead
Remarks:
- Collisions via SDF compute are to be introduced soon
- Improved shortcut rendering method ala Eidos Montreal to be introduced soon
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - code clean pass
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - EMFX Actor visibility implementation
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - COnnecting hair passes to Atom's MainPipeline.pass
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - adding dedicated thumbnail pipeline that does not include the hair gem
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - changed Atom shader files to allow hooking the hair to the lighting data structures
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - fixed a few headers to have the latest O3DE license + verification fixes
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - enabling editor component only when tool pipline is built + default texture add
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - fixing Linux and Android compilation builds
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - another files change to make Linux compile
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - more Linux and Android build fixes
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair
- Adding usage of fallback white texture
- Removing invalid null assignments into vectors
- Removing redundant mutex preventing deletion on some platforms
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair
- Shame: removed forgoten #pragma optimize
- Adding header complained by Android
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - removing the Hair Gem connection in the active project.
- This submission removes the connection to the active project hence allowing to run without the Gem. Enable the passes in MainPipeline.pass and declare them again when you want to use the Gem.
Remark: the gem file PassTemplates.azasset was renamed and will be connected via code in the future to avoid the need to declare in the global pass template.
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - registrating gem pass templates through the gem templates file (#198)
* Hair - registrating gem pass templates through the gem templates file
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - adding handler disconnect for the pass template registration.
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - PPLLIndexCounter buffer going data driven via the pass declarations (#202)
* Hair - PPLLIndexCounter buffer going data driven via the pass declaration
- Moving PPLLIndexCounter from code allocation and attachment to be data driven
- Fixed RPI typo bug that can prevent using buffers like that
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - fixing UI Editor (LYShine) crash (#209)
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* [Hair - resolved the multi pipeline mismatches and crashes + cleaned initialization & leftovers (#222)
* [Hair] - multiple render pipelines handling
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* [Hair] - Shut down order is handle to allow hair feature processor be deregistered only after the bootstrap component has disabled it
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* [Hair] - minor cleanups
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* [Hair] - followups from review nits
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - last fixes based on CR remarks
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Hair - fixing AR
Signed-off-by: Adi-Amazon <barlev@amazon.com>
* Final update copyright headers to reference license files at the repo root
Signed-off-by: spham <spham@amazon.com>
* Fix copyright validator unit tests to support the stale O3DE header scenario
Signed-off-by: spham <spham@amazon.com>