Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Volumetric Light Beam - Volumetric Lighting solution compatible with Mobile, VR and WebGL

Discussion in 'Assets and Asset Store' started by techsalad, Oct 9, 2017.

  1. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    ScreenFeaturesList.png
    >> Get it on the Asset Store
    >> WebGL Demo
    >> Android, Oculus / Meta Quest, PC VR, PC and Mac OSX Demos

    >> Documentation


    The simple and efficient volumetric lighting solution compatible with every platforms: Windows PC, Mac OS X, Linux, WebGL, iOS, Android, VR, Oculus Quest, AR, Built-in/Legacy Render Pipeline, SRP (URP, LWRP & HDRP)!

    Presentation
    Volumetric Light Beam is the perfect, easy and cheap way to simulate density, depth and volume for your spotlights and flashlights, even on Mobile!
    It greatly improves the lighting of your scenes by automatically and efficiently generating truly volumetric procedural beams of light to render high quality light shafts rays effects.

    ScreenShowcase.png

    ScreenSRP.png

    ScreenVR.png



    Two different Volumetric Light Beam implementations, each one optimized for specific use-cases:
    - SD Beams (legacy beams) are super fast with limited features (no true volumetric shadow nor cookie support): they are optimized to run on mobile and standalone VR (Oculus Quest).
    - HD Beams offer more advanced features (true volumetric shadow & cookie) but are heavier on performance: they should be used only on high-end platforms (PC & consoles).

    Screen2Implementations.png

    Showcased in great released games
    Volumetric Light Beam is a production ready plugin proven by awesome released games featuring it:

    How to use it?
    Volumetric Light Beam is designed to be extremely easy to use. No setup is required. You don't have to link multiple objects together. You just need to use 1 simple new component. You can literally add a new light beam in 2 clicks!
    In the Unity's "Create" menu, browse to Light, and choose either one of the new entity:
    - Volumetric Beam: creates a new standalone beam of light (no lights attached).
    - Volumetric Beam and Spotlight: creates a new Spot-light with a beam of light attached to it.
    In addition, you can add a Beam of light to any of your previously existing lights (or any GameObject) by just attaching the "Volumetric Light Beam" component to them.

    You can precisely customize the rendering of each beam of light by adjusting a set of user-friendly properties. For even faster nice looking results, some properties are automatically binded to the Spot light attached.



    Features
    - Supports Volumetric Shadows and Volumetric Cookies (HD Beams).
    - Truly volumetric FX: works even if you are INSIDE the beam of light.
    - Incredibly easy to use and integrate / Import it instantly / Zero setup required.
    - Procedural generation: everything is dynamically computed under the hood.
    - Add unlimited light beams everywhere: alternative solutions usually require realtime lights only: this plugin doesn't. You can make a baked light volumetric, or even add beams without any light.
    - Dynamic 3D Noise feature to simulate animated volumetric fog/mist/smoke effects.
    - Volumetric Dust Particles feature to simulate highly detailed dustlights and mote effects.
    - Dynamic Occlusion: light beams can be blocked by moving geometry.
    - Trigger Zone feature: you can track objects passing through the light beams.
    - Fully dynamic: change or animate every properties during playtime from Script, Animator or Timeline.
    - GPU Instancing: render and batch thousands of beams in 1 single drawcall. Try it by yourself!
    - Super FAST w/ low memory footprint: doesn't require any post-process, command buffers, nor compute shaders: works great even on low-performance platforms such as Mobiles and WebGL.
    - Optimized for VR: supports all Stereo Rendering Methods: Multi Pass, Single Pass and Single Pass Instanced or Multiview (see video)!
    - AR Ready: supports both Apple iOS ARKit and Google Android ARCore.
    - Smooth intersection with geometry and camera.
    - In addition to working with the Built-in Legacy Render Pipeline, it fully supports the Universal Render Pipeline (URP) and the High Definition Pipeline (HDRP).
    - Supports many graphics variants: Deferred and Forward rendering path, Gamma and Linear color space, HDR colors, multiple blending modes.
    - Highly configurable (layers, tags, render queue, 2D Sorting Layers and Order in Layer, shader pass...).
    - Works with perspective and orthographic cameras out of the box.
    - Supports Unity built-in fog.
    - WYSIWYG: every modification is instantly visible in scene view: no need to toggle between editor and play mode to see your changes.
    - Full source code available / no DLL. The light beam setup and handling is fully exposed through a powerful API.
    - Detailed documentation
    - Supports from Unity 2018.4.0, 2019.X, 2020.X, 2021.X, 2022.X and 2023.X versions.
    - Sample scenes included: showcase demo and heavy Stress Test scene featuring 400 Volumetric Spotlights.

    Note that this asset is NOT a fullscreen Post Process / image effect. This is NOT similar to Unity's built-in Sun Shafts image effect.
    Instead, Volumetric Light Beam will generate optimized geometry and material for each light beam. This technique has several advantages:
    - More granularity: precisely customize each light beam independently.
    - You can add light beams anywhere, even at locations where there is no light.
    - When attached to a spot-light, it supports realtime, baked and mixed modes.
    - Much easier to integrate with your own pipeline.
    - Runs faster. No Post Process to add to your camera.
    - Supports low-end platforms like mobile.



    Limitations
    - It only supports 'spotlights' (beams shaped like a cone). Point lights or directional lights are not supported.
    - *The plugin fully works with Deferred Rendering path: like any semi-transparent objects, beams are rendered using a Forward rendering pass on top of the Deferred one. This is a well known limitation of the Deferred Rendering technique.
    - Since this plugin requires custom scripts execution, it won't work for a VRChat world using the VRCSDK.


    Hope you will find this plugin useful! Feel free to reach us if you need help, or to suggest some improvements/features.
    Please consider rating and writing a review on the Asset Store page if you like it!

    Thanks :)
     
    Last edited: Dec 3, 2022
    hippocoder, alexanderameye and ZJP like this.
  2. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Added a Stress Test demo featuring 400 dynamic Volumetric Spotlights.
    Check it in this WebGL demo!

    ScreenStressTest.png


    This demo will be included in the next plugin update.

    Hope you'll like it :)
     
  3. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Just posted a new showcase video which highlights how to use the plugin:


    A new version has been submitted to Unity and should be available next week. This update will include performance improvements, new property to show/hide the cone cap, and various bug fixes.
     
  4. hidex

    hidex

    Joined:
    Sep 12, 2014
    Posts:
    3
    hi
    please help me.
    I used this asset in a VR project.However, in the editor, cones are also displayed on the HMD, but nothing is displayed on the EXE that was built.Unity version is 2017.1.1p4.
    I will upload images so please check.
     

    Attached Files:

  5. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi @hidex ,
    I will look into it. Could you provide me these information about your issue:
    - Have you tried to export the EXE without VR? Can you see the beams in this case?
    - Do you use Single or Multi pass rendering for VR?
    Screenshot_9.png
    Thanks
     
  6. hidex

    hidex

    Joined:
    Sep 12, 2014
    Posts:
    3
    Thanks to help.

    >- Have you tried to export the EXE without VR? Can you see the beams in this case?
    I tryed uncheck "Virtual Reality Supported" option to export the EXE.But the results were the same.

    >- Do you use Single or Multi pass rendering for VR?
    I tried both but the result was the same.

    *I am sorry for poor English. Thank you.
     
  7. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Thanks @hidex. I found the problem. There is a new bug in the latest version 1.02. Sorry about that...

    I will fix it and push the update to the Asset Store today.
    I can give you a fix in the afternoon. Please send me an email to techsaladunity@gmail.com so I can send you a unitypackage.

    Sorry for the inconvenience!
     
  8. hidex

    hidex

    Joined:
    Sep 12, 2014
    Posts:
    3
    Thank you for your prompt response!
    I am waiting for bug fixes.
    *I also sent an e-mail.
     
  9. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Just to let you know, the bug has been fixed and a new version (1.03) has been submitted to the AssetStore.
    If you experience the issue with the current version of the plugin and need the fix ASAP, please contact me by email (techsaladunity@gmail.com) with your invoice number, so I can send you a unitypackage.

    Sorry for the inconvenience!
     
  10. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    The version 1.03 is now available on the AssetStore!
     
  11. Crystan

    Crystan

    Joined:
    Oct 11, 2014
    Posts:
    20
    Hi,

    your asset looks really great and I was looking for a good volumetric light solution for quite some time and I believe I've found it. :)

    Anyway, I'm planing on using your asset in a 3D environment that consists for the most part of 2D sprites. Do your light rays work properly with 2D sprites? Especially ones with full transparent areas (like player sprite etc). I'm also using a custom shader (created with the Shadero Shader editor) in case that makes any difference.
     
  12. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi Crystan,
    Thank you for your message and your kind words.
    To be honest, with the current version of the plugin, it won't work with 2D sprites. However it's really super simple to handle: I could add a "Sorting Layer" property on the light beam, so you could tweak when the beams are rendered in comparison to the other sprites layers. I ran a quick test in a 2D game and it works just fine like that:


    If you are interested in this feature, I could implement it ASAP. Let me know if it would work for you.
    Thanks
     
    Last edited: Oct 23, 2017
  13. Crystan

    Crystan

    Joined:
    Oct 11, 2014
    Posts:
    20
    Thanks for the quick reply!

    I think I misinterpret the way the asset works: I thought it would allow me to create "god ray" similar effects. For some reason i didn't notice that this wasn't exactly the case when I played the demo. However, your asset will def. become usefull in the near future for another project (or later in my current) which is currently in concept phase, since it's nevertheless a really nice looking asset.
     
  14. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    No worries @Crystan and thanks:)

    I am really excited to announce that the 3D Noise feature will be available very soon in the next update! It will use a 3D noise texture to simulate a truly volumetric fog/mist/smoke effect and will allow even better light beam rendering.

    Here is a sneak peek of this feature:
     
    Last edited: Oct 24, 2017
  15. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    The 1.1 update has been submitted to the AssetStore and should be available next week. This is a huge update featuring many major improvements:
    • New 3D Noise feature to simulate dynamic and volumetric fog, mist and smoke.
    • add multi-object editing support.
    • improve global configuration, with global noise properties and geometry layer ID.
    • major optimizations thanks to shader's multi compile.


    Hope you'll like it :)
     
  16. bawenang

    bawenang

    Joined:
    Aug 18, 2012
    Posts:
    119
    Hi @techsalad, I've bought your asset. It's working and it is quite good. But I've got a slight problem. My source of light is a rectangular spot light. How do I make it like have a rectangular beam?

    Thanks.
     
  17. bawenang

    bawenang

    Joined:
    Aug 18, 2012
    Posts:
    119
    Oh yeah and also, Animator doesn't work in the light beam. How do I animate it? Eg. Changing the length / angle of the beam.
     
  18. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi @bawenang
    Thanks for your purchase and your message.

    Regarding the feature which would allow to change parameters dynamically at runtime (like length / angle), this is specified in the development roadmap, and is planned to be supported in an upcoming update.

    About rectangular spotlights, this is a very interesting idea. I quickly tried to setup a Volumetric Light Beam with 4 sides only, but the result is not satisfying since it requires special computation for the normals. This is a really interesting feature though, and could definitely be implemented.

    About your needs, which feature would you need in priority? Changing parameters at runtime or rectangular/square light beam?

    Thanks again for your relevant suggestions.
     
  19. bawenang

    bawenang

    Joined:
    Aug 18, 2012
    Posts:
    119
    Hi @techsalad

    Thanks for the quick response. For my needs, we probably need the changing parameters more. Since I need to show the animation of the light beam when it is starting to go on / off.
     
  20. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Thanks for your valuable feedback. I would be happy to help, so I will focus on this feature first. I cannot give you an ETA though, but I'll let you know.
    Thanks :)
     
  21. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi @bawenang
    I wanted to let you know that I'm working on the feature. Some pretty big changes are mandatory in order to be able to modify/animate properties such as the spotlight angle without having to regenerate the full mesh each frame (which would be terrible performance-wise).

    I have now a WIP version of this feature running. Basically it will allow to modify via Script or via Animator (almost) every properties of the Light Beam and/or of the Light during playtime. The only properties you cannot modify is the number of sides of the cone mesh (the tessellation), because it would obviously require to regenerate the mesh. But I think it's a really minor limitation :)

    Here is a sneak peek video of this feature:


    If you are interested in having a pre-version of this feature before the release, please send me an email (techsaladunity@gmail.com) with your invoice number. This way you could check if the feature fulfills your needs, and I could work on some modifications if needed.

    Thanks
     
    Last edited: Nov 5, 2017
    hippocoder and bawenang like this.
  22. bawenang

    bawenang

    Joined:
    Aug 18, 2012
    Posts:
    119
    Wow. Thanks for the swift reply.
     
  23. Thoronnim_Crystalia

    Thoronnim_Crystalia

    Joined:
    Jan 24, 2017
    Posts:
    29
    Hi,

    I'm configuring the Light Beam for our scenario (just bought your product, which is absolutely brilliant), and I'm noticing that when a spot light is turned off and the player turns it on at runtime, it takes some moment - freezing everything - in order to generate the mesh...

    After that, it works properly and it has no impact on the performances, but this lag - while turning on the light - is quite annoying.

    Can we avoid the runtime generation, providing a pre-generated cone mesh?

    Obviously, if you have any other suggestion, it should be great!!

    Thank you,
    Emanuele
     
  24. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi Emanuele,
    Thank you for your kind words and your purchase :)
    I am really sorry about the issue you are experimenting. To be honest, I haven't thought at this scenario.
    I haven't investigated yet, but I'm confident it could be fixed quite easily. I will take a look at it next week and I'll keep you you updated.
    Again, if you are interested in receiving a pre-version once I will a fix working, feel free to send me an email with your invoice number at techsaladunity@gmail.com
    Thanks :)
     
  25. Thoronnim_Crystalia

    Thoronnim_Crystalia

    Joined:
    Jan 24, 2017
    Posts:
    29
    Thank you again for your support! :)

    I haven't the time to investigate properly, but maybe the creation of the mesh at runtime is not the cause, as I (wrongly) said previously. Because I noticed that after the creation of the first cone (with the lag issue), the next ones (we have several spot lights which can be turned on/off) are created instantaneously without any lag! o_O

    So, the lag happens only the first time and thus it seems that the creation of the mesh is not the resposible of this issue. Sorry, my mistake!

    Instead, going deeper, I debugged the Config class - called while instancing, so just exactly the first time! - I noticed that the line 57

    Code (CSharp):
    1. var found = Resources.LoadAll<Config>("");
    is very very slow... and I think we found the cause of the first-time-lag. Also, in order to give you a more accurate idea, we are working on huge scenarios - thousands of Gameobjects :eek: - so, maybe the LoadAll method searches in all the Resource folders... and this can take some time!!

    Obviously, if you need some more detail, just let me know!
    Thank you again,
    Emanuele
     
  26. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi Emanuele,
    Thanks for your very precise report. I just ran some profiling and indeed, this unique call (which only happens the first time) can be quite slow. As a quick fix, could you try to just change this line of code with instead the following:
    Code (CSharp):
    1. var found = Resources.LoadAll<Config>("Config");
    It seems to be way faster. Please let me know if it works with your scenario.

    In case it's still a problem, another quick fix would be to force this call during loading to prevent it to happen during gameplay. So you could just "touch" the Config instance in your loading code. Something like that:
    Code (CSharp):
    1.  
    2. void YourLoadingCode()
    3. {
    4.     VLB.Config.Instance.GetInstanceID(); // force the initialization of VLB config during loading
    5.     // load your stuff
    6.     // ...
    7. }
    8.  
    Please let me know :)
     
  27. Thoronnim_Crystalia

    Thoronnim_Crystalia

    Joined:
    Jan 24, 2017
    Posts:
    29
    Yeah!! :):)
    Perfect! You hit the target.

    I just used your first suggestion and the lag disappeared. Thank you again!
    Emanuele
     
    techsalad likes this.
  28. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Thanks for the feedback! Really glad that this issue is now fixed for you, but sorry for the inconvenience!

    This fix will be part of the next update to be released.
     
    Thoronnim_Crystalia likes this.
  29. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi @bawenang
    The feature to dynamically animate beams in realtime is done, and I am so excited about it!!! :).
    It allows to dynamically modify properties during playtime from Script, from an Animator or from a Timeline asset (new feature of Unity 2017). That's pretty cool!

    To enable this feature, you will have to check a new property called 'Track changes during Playtime' on the Beam(s) you want to modify.
    Screenshot_11.png

    Once enabled, you can modify every properties expect "Sides" and "Cap Geom" (because they would require to regenerate the mesh). Thanks to a quite deep refactor, all the computations are now done on the GPU: modifying in realtime properties such as the "spot angle" or the "truncated radius" are now almost free performance-wise.

    However, to be totally honest and transparent, enabling this feature requires to update the beam material at each frame, which could cost a very minor performance drop if enabled on hundreds of instances. That's why this feature is disabled by default, and I would recommend to enable it only on beam instances you really want to animate.

    The update will be submitted soon to the AssetStore. If you want to receive it before, let me know :)
    Thanks
     
    Thoronnim_Crystalia likes this.
  30. Gamrek

    Gamrek

    Joined:
    Sep 28, 2010
    Posts:
    164
    Hi,

    Can the spot light have a cookie texture to determine its shape?
     
  31. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi Gamrek,
    If you set a cookie texture on your spotlight, it won't change the shape of the beam (which will stay as a cone). This feature is currently not supported, but is part of the development roadmap.
    Thanks for your suggestion!
     
  32. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    The update 1.11 is now live on the AssetStore. Here is the changelist:
    - Support property changes during Playtime: you can now dynamically animate every properties of the beam and/or the spotlight via Script, Animator or Timeline. Make sure to check the new 'trackChangesDuringPlaytime' property to enable this feature (thanks to suggestion from bawenang)
    - Performance improvements (thanks to report from Thoronnim_Crystalia)

    I didn't have the time to produce a video showcasing this new improvements and features yet, but I will do it next week.

    The next update 1.12 will be available very soon and will fix some minor issues related to the multi-object editing features.
     
    Lars-Steenhoff and VIC20 like this.
  33. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,513
    very nice asset! I'm happy, I have one question about the spotlight, the the camera look directly in the spotlight you would expect the view to become bright so that your blinded by the light, what happens instead is that the light almost disappears, so the effect is less strong, Is there something that I can do to make it more bright when facing the spotlight directly head on?
     
  34. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi Lars,
    Thanks for your message, and I'm glad that you find the asset useful!
    If you are not satisfied with the rendering of the beam when you look at it from the inside, try to tweak the values below the "Inside" category. The "Boost Distance" property is specially designed for this case: boosting the beam intensity near the source when you look from the inside.
    Screenshot_12.png

    I think this should fix your problem. Please let me know :)
    Thanks
     
  35. VIC20

    VIC20

    Joined:
    Jan 19, 2008
    Posts:
    2,686
    When looking from behind the light beam becomes less visible and when looking directly from behind it is invisible. Do you think you might find a way to fix that without hurting the excellent performance?
     
    Lars-Steenhoff likes this.
  36. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi Vic,

    Thanks for your feedback. I want to properly understand the issue before trying to fix it :)

    My point is that the beam is supposed to become less visible the more you look at it from behind.
    The more the camera is behind the cone beam, the more the camera view and the beam cone directions are parallel/collateral. And so the less it's supposed to be visible.
    Screenshot_13.png

    With the current version, the parameter which controls how visible the beam is compared to the camera position (when looking from the outside) is "outside side thickness". A larger thickness means the beam will be more visible when you are behind it, but also when you look at it from the side, which is maybe not what you want.

    If you are not satisfied with the result in a specific situation, I would be happy to investigate. In this case, I would really appreciate if you could share to me more details about your case (the more the better) like:
    - the exact properties values of you beam (screenshot of the inspector)
    - screenshots and/or video of the result ingame/in editor highlighting the problem
    (If you don't want to share this info publicly, please send me an email at techsaladunity@gmail.com)

    Looking forward to helping you :)
    Thanks
     
  37. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,513
    I boosted the inside but now I have a sharp edge on the beginning of the spotlight, any way I can remove that?

    Screen Shot 2017-11-16 at 12.52.40.png
     
  38. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Looks awesome!

    Regarding the sharp edges, I think that's because your "boost distance" is too big. But I guess you had to put it very large in order to have the effect you wanted when looking at the beam from the inside.

    I can investigate on a way to improve the rendering when looking in the same (or opposite) direction than the beam. This should cover bother your and @VIC20 cases. Like adding a "glare" factor.

    Please send me an email so I can send you a WIP update of the asset ASAP. This would help me designing this feature to fully satisfy your needs.

    Thanks
     
  39. VIC20

    VIC20

    Joined:
    Jan 19, 2008
    Posts:
    2,686
    I want to create ship search lights with it.

    I’ve played around a lot with it today to figure out if I can find a setting that works as I wanted but the borders of the beam are either to hard or not visible when looking from behind.

    The problem is the Outside only. A side thickness of 0.9 is the best compromise so far to get the light beam when looking from behind. But the beam looks way too hard at this settings when looking from any other angles – while this would be convincing for a strong search light at a super clear day it would not be convincing as soon as it gets a a little bit foggy.

    The look I want is similar to this (At 00:28 you can look at the light from behind in this movie)


    This is a search light at a clear day:


    This is what I’ve made with in a test project. I’ve found no better settings yet, I think the beam itself is smooth enough but I wish I could boost the light much more when looking from behind. I also would like to boost the Inside more but then both will add up too much quickly so I have to reduce its alpha.



     
  40. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi Vic.
    Thanks for your message.
    I currently work on an update to improve the rendering. I think you will like it.
    Please send me an email so I could provide you a WIP version you could try.
    Thanks
     
  41. abedieckman

    abedieckman

    Joined:
    Nov 22, 2017
    Posts:
    6
    Hi there! First, thanks so much for this product. I've been dying to find an EASY tool that approximates the kind of volumetric lighting I want and this seems like exactly it. I'm very excited!

    My only question is if there's any way to modify the geometry of the beam's source. Right now it seems you can only create circular beams of with whatever amount of sides you want. However, this circular shape does not fit with most window-frame shapes, and of course volumetric lighting often appears as sunlight shines through a window. In my own game project this would be ideal as there are many windows for sunlight to shine through, but they are not circular (or even square in some cases).

    So I'm wondering if there's a way to use a custom mesh-shape instead of the default circle/cone, or if this is a feature that might be supported in the near future?

    Thanks very much again!
     
    Thoronnim_Crystalia likes this.
  42. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Hi abedieckman,

    Thank you very much for your message :)

    You are totally right: right now, it's only possible to generate circular/cone beams.
    I plan in a future update to support box/rectangular shapes, to make the beams fit with regular windows (like in buildings). You are not the only one to request this feature, so I will definitely investigate it :)

    You talk about a "custom mesh-shape": what do you have in mind? Does the support of rectangular beams would be enough for your needs, or would you need a more complex shape? In this case, would it be possible to provide me a screen/mockup of the kind of shape you would need?

    Thank you!
     
  43. abedieckman

    abedieckman

    Joined:
    Nov 22, 2017
    Posts:
    6
    Thanks so much for your quick reply!

    Boxes/rectangles would be fantastic and very useful!

    As for a custom mesh shape, I guess what I'm suggesting is to plug in any custom-modeled flat polygon plane and use that in place of a circle or even a square. To give you an example I have some spaceship windows in my game that look more detailed, like in the thumbnail attached, and if I could use the "glass" plane shape I have in the window as the source of my volumetric beam, I think that would look really great.

    I can imagine there are less detailed examples that would be very useful to people as well, like church windows and such.
     

    Attached Files:

    Lars-Steenhoff likes this.
  44. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    Thank you very much for the details :)
    I will definitely investigate these features. My plan is to work on the box/rectangle beams first, since it could satisfy most of the cases and it's much easier to implement.
     
  45. abedieckman

    abedieckman

    Joined:
    Nov 22, 2017
    Posts:
    6
    Fantastic! Thanks so much for being attentive to user's issues.
     
    techsalad likes this.
  46. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    The new Volumetric Light Beam 1.2 update has been submitted to the AssetStore and will be available really soon!

    This is really a major update. Thanks to your feedback, the rendering has been drastically improved, especially when looking at the beam from behind and from the inside (when looking directly at the light source). Very long light beams look also much much better now.

    In order to achieve that, some (breaking) changes have been made to the plugin:
    - Merged properties Inside and Outside 'Side Thickness' to a single 'Side Thickness' which controls the global beam thickness.
    - Removed property boostDistanceInside
    - Added property glareFrontal (which basically replace boostDistanceInside): Boost intensity factor when looking at the beam from the inside directly at the source.
    - Added property glareBehind: Boost intensity factor when looking at the beam from behind.

    VLB1.2.png

    Here is the new showcase video:


    I am pretty sure you will like this new update!

    Looking forward to showing you what's coming next!! I am super excited about it :)
    Thanks :)
     
  47. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,513
    any chance you can make volumetric shadows for the light?
     
  48. techsalad

    techsalad

    Joined:
    Oct 9, 2017
    Posts:
    376
    The way the asset renders volumetric beams is quite different than the usual technique which generally uses a fullscreen post process. This means this asset allows to render volumetric beams efficiently with better performance, but it's also a bit more limited.

    So if you mean realtime and dynamic shadows like that:
    Screenshot_1.png
    IMHO, this is not possible with the current technique and with such performance. I plan to investigate it, but I honestly cannot guarantee that it will work as well as you can see in this image. Anyway, this is clearly not a "free feature": it would have a significant performance cost.

    However, if you want "static and fake" shadows (by using a cookie texture), I think this is much more doable. This could be useful for example to generate shadows produced by a fan like that:
    Screenshot_14.png
    I also plan to investigate a way to achieve such effects.

    In short, if you want to achieve realtime occlusion/shadows, I would recommend you to look for another solution.
     
  49. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,513
    The second one is also cool, the first one is already possible with this one
    https://github.com/Unity-Technologies/VolumetricLighting

    but yea its a bit slow.

    I can definitely see a use for static shadows, they could even animate like you say like a fan, interesting stuff!

    Thanks for all the good work, its a really great asset !
     
    Last edited: Nov 24, 2017
    techsalad likes this.
  50. VIC20

    VIC20

    Joined:
    Jan 19, 2008
    Posts:
    2,686
    Yes, the 2nd one would be great!
     
    techsalad likes this.