Announcement

Collapse
No announcement yet.

TressFX Hair For Unreal [Release, Open Source]

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    TressFX Hair For Unreal [Release, Open Source]

    Hi All,

    After roughly a year of work off and on, we are releasing our implementation of AMD's hair rendering library in Unreal Engine to the community as an open source engine fork. For in depth details, as well as samples, see the engine repository below.

    https://github.com/kostenickj/UnrealEngine_TressFX

    This open source Unreal Engine fork implements a modified version AMD's TressFX hair/fur rendering and simulation technology into Unreal Engine. It uses the GPU and compute shaders to physically simulate each individual strand of hair. We are opening the source to the community to get more people involved and help solve the remaining issues. Much more in-depth information can be found at the source repository readme linked above.

    In the repository below you can find a sample project and sample hair asset

    https://github.com/CraigMason/UE4TressFX-Sample

    Frequently Asked Questions

    https://github.com/kostenickj/UnrealEngine_TressFX#faq

    Video demo



    Some screenshots:

    Click image for larger version  Name:	tressfx1.jpg Views:	0 Size:	124.5 KB ID:	1685380Click image for larger version  Name:	tressfx2.jpg Views:	0 Size:	22.5 KB ID:	1685381

    Features Overview - See repository readme for more
    • Support for up to 16 bone influences per hair (as opposed to the original 4)
    • Morph target support
    • New exporters for Maya and Blender
    • Multi Platform (mostly) thanks to unreal's cross compiling
    • Two render modes for hair which can be set on a per material basis:
      1. Opaque: Opaque mode should support all unreal engine features.
      2. Order Independent Transparency (OIT): OIT mode supports most Unreal Engine features, but is currently limited to 4 dynamic lights (same as the forward renderer). Additionally, there are two OIT modes: Shortcut (recommended), and K-Buffer Linked List (experimental, performance heavy). The mode used can be set from a Console Variable. Information on how each mode works can be found here.
    • Velocity Rendering
      • To support Temporal Anti Aliasing and more that Unreal needs.
    • Physics asset integration (partial)

    Want to help?


    Please do! My goal is for this to become a community project where many developers can contribute. There are are many things that can be improved and several features that are not fully implemented and we want your help! See the issues on github for starters. Feel free to open new issues as well.

    Please follow the Unreal Engine Coding standards.

    Join the TressFX for Unreal discord server to coordinate work and discuss ideas: https://discord.gg/aM5Ge5Y

    Bugs? Yes. When you encounter bugs please open an issue.

    Authors
    Attached Files
    Last edited by kostenickj; 12-07-2019, 08:02 AM.
    TressFX For Unreal | Morph Tools Plugin

    #2
    Diving in with a post to handle any Sample updates in the future!

    https://github.com/CraigMason/UE4TressFX-Sample

    Comment


      #3
      This looks awesome! Congratulations and thank you so much for your work!

      Testing this is on my schedule for this week
      Unreal Meetup Franken - Unreal Engine 4 Meetup
      Hands for VR - Space HDRI [Marketplace]

      Comment


        #4
        Originally posted by Ben_Cykyria View Post
        This looks awesome! Congratulations and thank you so much for your work!

        Testing this is on my schedule for this week
        Thanks . Looking forward to your feedback!
        TressFX For Unreal | Morph Tools Plugin

        Comment


          #5
          Thanks i hope i will find some time to test your branch, i have a question which Blender ver you support?

          Comment


            #6
            Originally posted by M4gpul View Post
            Thanks i hope i will find some time to test your branch, i have a question which Blender ver you support?
            Currently the exporter only support 2.79. Does not yet support 2.8
            TressFX For Unreal | Morph Tools Plugin

            Comment


              #7
              Hey I found a little time to check out the engine fork. This is fantastic work and the performance is really great.
              I saw in the FAQ that you don't plan to support VR (forward renderer and instanced stereo). I tried to activate both and the project crashes right away on load, unsurprisingly.
              Can you estimate how difficult it would be for you to support TressFX in VR?
              Unreal Meetup Franken - Unreal Engine 4 Meetup
              Hands for VR - Space HDRI [Marketplace]

              Comment


                #8
                Originally posted by Ben_Cykyria View Post
                Hey I found a little time to check out the engine fork. This is fantastic work and the performance is really great.
                I saw in the FAQ that you don't plan to support VR (forward renderer and instanced stereo). I tried to activate both and the project crashes right away on load, unsurprisingly.
                Can you estimate how difficult it would be for you to support TressFX in VR?
                I don't personally think it would be difficult. It would be fairly straightforward actually for anyone who knows how the rendering module works. It would just take quite a bit of time, and I simply don't have the time to invest in it right now. I also don't use VR in any of my projects so i cant justify the time investment when my time is already pretty limited.

                If you were to make a go at it doing it yourself, i would do my best to assist where i can
                TressFX For Unreal | Morph Tools Plugin

                Comment


                  #9
                  Originally posted by kostenickj View Post

                  I don't personally think it would be difficult. It would be fairly straightforward actually for anyone who knows how the rendering module works. It would just take quite a bit of time, and I simply don't have the time to invest in it right now. I also don't use VR in any of my projects so i cant justify the time investment when my time is already pretty limited.

                  If you were to make a go at it doing it yourself, i would do my best to assist where i can
                  I've never touched the rendering module Time is an issue, too.

                  However, I'd like to give it a try sooner or later. Do you know any documentation I should read beforehand or would you suggest to grab the debugger and dive in and see how far I get?
                  Unreal Meetup Franken - Unreal Engine 4 Meetup
                  Hands for VR - Space HDRI [Marketplace]

                  Comment


                    #10
                    Originally posted by Ben_Cykyria View Post

                    I've never touched the rendering module Time is an issue, too.

                    However, I'd like to give it a try sooner or later. Do you know any documentation I should read beforehand or would you suggest to grab the debugger and dive in and see how far I get?
                    The main rending docs are here: https://docs.unrealengine.com/en-US/...ing/index.html

                    I would read through those and the just dive in. You can find all tressfx code pretty easy with a search. Its all wrapped in begin/end comments so you can see where the changes were made. If you have specific questions about how stuff works just ask! For quicker answers message me on discord in the channel
                    TressFX For Unreal | Morph Tools Plugin

                    Comment


                      #11
                      Great works! Downloading and testing...
                      BTW.Does bransh 4..22TFXDev_kostenickj compile and work properly?And is there some test demos in bransh 4..22TFXDev_kostenickj?

                      Comment


                        #12
                        Originally posted by mayaworks View Post
                        Great works! Downloading and testing...
                        BTW.Does bransh 4..22TFXDev_kostenickj compile and work properly?And is there some test demos in bransh 4..22TFXDev_kostenickj?
                        If you want to use 4.22 branch, use 422TFXDev. _Kostenickj is my personal branch
                        TressFX For Unreal | Morph Tools Plugin

                        Comment


                          #13
                          https://gpuopen.com/tressfx-4-1-engi...deon-cauldron/
                          TressFX 4.1, Engine Integration with Unreal 4.22 and Radeon™ Cauldron

                          Comment

                          Working...
                          X