User Tag List

Page 1 of 3 123 LastLast
Results 1 to 40 of 100

Thread: JBaldwin - UE4 Content Preview Thread

  1. #1
    0

    Lightbulb JBaldwin - UE4 Content Preview Thread

    I FINALLY got a bit of time to begin playing around with UE4. What better way than to dive into a fun shader!
    I am making an ocean shader and have roughed out some of the structural trigonometry and some of the simple physics equations. However, there is still several parameters that are not being calculated properly and some of the Trig. needs to be updated and modified. After that, I am going to be generating the smaller waves and tessellation. Once all the math is done, I will make the shader look pertty (Hopefully packed full of features such as translucent crest color)

    After I finish everything, I will write an e-article and post it up on my website showing a detailed breakdown of how I constructed it.

    -Jeremy-
    Attached Images Attached Images   

  2. #2
    0
    Particular reason some parts got masked out?

  3. #3
    0
    The math were not correct i believe like he said it will be posted when fully ready. He still has to finish the trigonometry and the smooth repetitive oscillation AKA Sine wave.
    VFX Artist
    Portfolio: Here

  4. #4
    0
    Sorry for the late reply. The masked out areas are incomplete parts of the equation. (Some of the master shader is also not finished.) Therefore I didn't want people building those parts only to find out that the gersnter wave was squashing too much.

    I am still trying to read a few papers to find out how I want to implement these.
    The current equations I am using are from nVidia, however for large ocean swells and large, slow moving choppy waves, I might be utilizing some of Jerry Tessendorf's work.

    ** As seen from nvidia **
    Simple waves:



    Sine Modification:



    Direction vs Circular:


    Gerstner Waves:




  5. #5
    0
    Oh nice! I'm looking forward to reading the detailed breakdown of this

  6. #6
    0
    Nice one
    Looking forward to seeing your results!

  7. #7
    0
    Veteran
    Join Date
    Mar 2014
    Posts
    541
    I also look forward to seeing this. Good luck!

  8. #8
    0
    If you want, you can use Gersner waves calculations from my own realization: https://forums.unrealengine.com/show...ll=1#post17164 . Material function is created mosly with HLSL code based on nVidia algorythm.

  9. #9
    0
    Thank you. The true goal of this is to really try and bridge the gap between mathematics and implementation in a modern game engine so that artists can understand. If only more people knew how wonderful and powerful the vertex animation was in UE3 and especially UE4, then it would boost their product quality. The more I talk to people, the more I find that the stumbling block is the actual conversion of math into nodes. This in-depth article will target that problem area and try to break down how things like (obtaining the sine of (equation)) can be constructed in Node View as well as (ex: Σ) is constructed with multiple complex node "trees".

    I am rusty at the more complex equations, therefore I am trying to learn a bit more from a petrophysicist "Name Withheld", when I hit a snag. This slows the progress down a bit, but not by much.
    This is proving to be a fun adventure so far, and I look forward to seeing all of the equations working in harmony.

  10. #10
    0
    Quote Originally Posted by JBaldwin View Post
    The more I talk to people, the more I find that the stumbling block is the actual conversion of math into nodes. This in-depth article will target that problem area and try to break down how things like (obtaining the sine of (equation)) can be constructed in Node View as well as (ex: Σ) is constructed with multiple complex node "trees".
    Absolutely agree. You're making a good thing

  11. #11
    0
    Ufna - I really appreciate the offer. However, to try and accomplish my goal, I am building everything in nodes so that artist may do this as well. The gerstner wave is just one of several options I hope to implement. Once the waves are working right, I am going to be looking into reflectance waves, wind curve over wave crest and influence, and many other options. Then later, I will build a tessellation equation to generate the many miniature waves and noise across the ocean surface. (Hopefully a foam generator as well - Using GPU particles). Doing this in node form is most likely not going to be as efficient, but the purpose of this is to implement everything in the most easily understood way (For the community). Most people flinch at code / HLSL or become discouraged, visual feedback and easy to follow spline connections within a node editor seem to yield better results when trying to simply learn a complex object.

  12. #12
    0
    I'll be really happy to participate if you not mind. I suppose I'm a big fan of ocean in UE, and my project is even open source now. You can find useful examples of ocean surface equations, height calculation both with and without tesselation, etc. Soon I'll add foam and splashes, as it's very important part for ships movement visuals FFT will be next, because it's much better and faster than Gerstner waves approach.

    We're working on the same things, and I'll be happy if some of my works will be helpful to your article.


    P.S. - I've moved Gerstner wave equation into node form: http://gyazo.com/40645b9619eb3e672d9df59debc8a390 .
    Last edited by ufna; 04-13-2014 at 05:34 PM.

  13. #13
    0
    Collaboration is something I am always up for (Especially when it is a project for the community). Do you happen to have skype?
    It is much faster than "forum tag" ^_^

  14. #14
    0
    Quote Originally Posted by JBaldwin View Post
    Collaboration is something I am always up for (Especially when it is a project for the community). Do you happen to have skype?
    It is much faster than "forum tag" ^_^
    Sure, PM'ed you
    Developer. Bass player. Cats owner. Unreal Engine addicted. Check my.alyamkin.com
    [Plugin] VaRest - REST API with blueprintable JSON plugin
    [Plugin] VaTexAltas - simple way to use texture atlases for UMG

  15. #15
    0
    I like you guys.

    Transferring Math into Nodes in UE has always been my main struggle, if you could simplify that and make it a reality for me Jeremy that would be great! Looking forward to this!

  16. #16
    0
    @TheJamsh yea lots and lots of hours are needed for FX artists to figure out a load of math and all. This will be very useful to everyone in here that isn't good with maths or even lazy
    VFX Artist
    Portfolio: Here

  17. #17
    0
    Update:
    New Micro Waves
    Modified Wave Algorithm
    Created Ocean Swell Simulation

    This is still in need of a lot more work.


  18. #18
    0
    Quote Originally Posted by JBaldwin View Post
    Update:
    New Micro Waves
    Modified Wave Algorithm
    Created Ocean Swell Simulation

    This is still in need of a lot more work.

    Looks really good! Keep up that work!

  19. #19
    0
    Quote Originally Posted by JBaldwin View Post
    Update:
    New Micro Waves
    Modified Wave Algorithm
    Created Ocean Swell Simulation
    Looks alive!

    Which spectrum did you used?
    Developer. Bass player. Cats owner. Unreal Engine addicted. Check my.alyamkin.com
    [Plugin] VaRest - REST API with blueprintable JSON plugin
    [Plugin] VaTexAltas - simple way to use texture atlases for UMG

  20. #20
    0
    Promoter

    Join Date
    Mar 2014
    Posts
    240
    Quote Originally Posted by JBaldwin View Post
    Update:
    New Micro Waves
    Modified Wave Algorithm
    Created Ocean Swell Simulation

    This is still in need of a lot more work.


    For some reason that was totally hypnotising :P

    Looking forward to the final outcome.

  21. #21
    0
    Quote Originally Posted by DennyR View Post
    For some reason that was totally hypnotising :P
    Same here : ) Waiting for more!

  22. #22
    0
    This is so frickin awesome.. I love you guys

    @ufna yaay sources!! I'm sure I will learn a lot from this thanks a ton!

    I can't wait to show some of the progress I have made with the sailing simulator thingy I'm making.

  23. #23
    0
    Glad everyone is enjoying it ^_^
    @ufna - I know we had talked yesterday about how bad Gerstner waves are for performance, but I decided (Since I already Started) I would finish it up and share it with everyone.
    The equations are practically the same accept for a few small things. (If I remember right) - I changed from multiplying the amplitude by (x,y) to dotting it. I also fixed the Φ addition. The direction is giving me issues so I am having to look into that.

    After I get everything working, I need to compile it into a scale-friendly format. Currently, this has about 50 parameters that all need to be modified. I am going to try to make a shader that allows you to go from a value of 0 - 1 which will model the ocean from calm seas to rough ocean swells.
    Attached Images Attached Images  

  24. #24
    0
    Update:
    Solved Animated Wave (Wind Direction)
    --------------------------------------------
    This allows for ocean waves to continue their behavior but their orientation can be modified.

    Here is a picture for anyone interested.
    Attached Images Attached Images  

  25. #25
    0
    *bump* - For anyone interested in the wind direction (Shown Above)^

  26. #26
    0
    Interesting, so that allows you to rotate the wind direction without getting really odd updates in the shader? Usually that makes it look like everything pans around some invisible/far away axis, so your only choice is to have no change in the wind direction.

  27. #27
    0
    Correct, this will solve that. You just need to be careful you don't implement it into the wrong part of the equation. If you re-produce the function as shown above, you will see the wind direction constantly update while the waves continue along their path with no warping or distortion.

    I was going to add more images but it seems I have uploaded 5 and that is the maximum? Wow that would stink if so >.<
    Apparently there was some sort of "Database Error"

  28. #28
    0
    You can use an image hosting site (like tinypic.com for example), no limits that way.

  29. #29
    0
    Thank you TK-Master.
    Yea, I guess I will do that. I just hate referencing images because if the link on "that" site ever gets damaged, then the forum no longer shows it. (That's why I like uploading to the forum directly)

    @TheJamsh - Here is an example of a huge set of ocean grids and the function applied to them. You can see there is no distortion or odd "polar" effects.


  30. #30
    0
    You can also upload them in the wiki

    https://wiki.unrealengine.com/Special:Upload

  31. #31
    0
    Quote Originally Posted by TK-Master View Post
    @ufna yaay sources!! I'm sure I will learn a lot from this thanks a ton!
    You're welcome

    Quote Originally Posted by JBaldwin View Post
    Glad everyone is enjoying it ^_^
    @ufna - I know we had talked yesterday about how bad Gerstner waves are for performance, but I decided (Since I already Started) I would finish it up and share it with everyone.
    The equations are practically the same accept for a few small things. (If I remember right) - I changed from multiplying the amplitude by (x,y) to dotting it. I also fixed the Φ addition. The direction is giving me issues so I am having to look into that.
    btw I saw a nice commit at github yesterday. It means we'll be able to implement transparency soon
    Developer. Bass player. Cats owner. Unreal Engine addicted. Check my.alyamkin.com
    [Plugin] VaRest - REST API with blueprintable JSON plugin
    [Plugin] VaTexAltas - simple way to use texture atlases for UMG

  32. #32
    0
    Awesome! I really can't wait for that. I also saw your feature request on Post Process addition ufna, very good call!
    I still need to learn quite a bit when it comes to the technical side of oceans and rendering.

  33. #33
    0
    Quote Originally Posted by ufna View Post
    Looks alive!

    Which spectrum did you used?
    Gamma + Infrared \m/ OH YEA!
    :P

  34. #34
    0
    Update:
    Small Choppy Ocean
    Hurricane Swells
    Fast Ocean Swell Sets


  35. #35
    0
    Man...I cant say how amazing this project looks! Looking forward to see more progress and try out some things by myself

    Keep up the good work! Very, very cool ^_^
    Check out UNREAL 4 Lighting Academy
    https://forums.unrealengine.com/show...ng-like-that-)

  36. #36
    0
    Quote Originally Posted by JBaldwin View Post
    Update:
    Small Choppy Ocean
    Hurricane Swells
    Fast Ocean Swell Sets

    Looks fantastic! Well done!

  37. #37
    0
    Veteran
    Join Date
    Mar 2014
    Posts
    541
    Quote Originally Posted by JBaldwin View Post
    Sorry for the late reply. The masked out areas are incomplete parts of the equation. (Some of the master shader is also not finished.) Therefore I didn't want people building those parts only to find out that the gersnter wave was squashing too much.

    I am still trying to read a few papers to find out how I want to implement these.
    The current equations I am using are from nVidia, however for large ocean swells and large, slow moving choppy waves, I might be utilizing some of Jerry Tessendorf's work.

    ** As seen from nvidia **
    Simple waves:



    Sine Modification:



    Direction vs Circular:


    Gerstner Waves:



    That is math right there.

  38. #38
    0
    Yes Trigonometry.

    @Jeremy good jab someone is pushing you to the right Direction? :P
    VFX Artist
    Portfolio: Here

  39. #39
    0
    Looking great! I don't know about you but I feel like going for a swim now

  40. #40
    0
    Thanks everyone. I am currently building in static switch parameters for each parameter (Time Consuming ). I am also building a blend system. You can use the one I am creating, (Or define your own) ocean stages.
    It works like this:
    - Shader mode "Located In Material Instance" = Ocean System or Manual Mode
    • Ocean System - Uses 2 sets of data preset in the master shader to blend from small choppy waves to hurricane swells. (All controlled by simply changing one parameter) (Easiest)
    • Manual Mode - Exposes all parameters for complete control (Hardest)


    This shader allows for multiple Master Shaders to be created
    It works like this:
    The demo Master Shader I am creating is geared towards storms. Both the Ocean System Data Sets and Manual Parameters have been set in the Master Shader to act as a "Storm Shader"
    Simply duplicate the Master Shader, and input data for whatever ocean system you want. Then create material instances off of that new shader. This will allow you to have multiple ocean system (Master Shaders)
    For Example:
    • Storm System (Master Shader + MICs) --"MICs" = Material Instance Constant*
    • Calm System (Master Shader + MICs)
    • Shallow Water System (Master Shader + MICs)
    • Deep Calm Water System (Master Shader + MICs)


    And Much More

Page 1 of 3 123 LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •