Search Unity

Highlighting System [Released]

Discussion in 'Assets and Asset Store' started by slice3d, Jul 10, 2012.

  1. greengremline

    greengremline

    Joined:
    Sep 16, 2015
    Posts:
    183
    Awesome looking forward to trying this out! Btw, the asset store is showing me that Highlighting system is no longer available when i click on the Available here link from your website, and when I try to update from inside Unity, it shows the package as deprecated and the latest version as 4.3
    @slice3d
     
  2. slice3d

    slice3d

    Joined:
    May 7, 2011
    Posts:
    207
    @StormchaserZA You're welcome! I hope you guys will enjoy all the new features once it will be released.

    @nbg_yalta No, but thanks for an interesting idea! I'll think about implementing this feature in the upcoming updates.

    @zornor90 2 weeks have passed and updated v5.0 package is still under review in the Unity Asset Store (previously that was a matter of several days). :( They have warned me though that they are experiencing "longer than normal review times" due to high load, whatever that means. Unfortunately I can't do anything to speed up this process.
     
  3. greengremline

    greengremline

    Joined:
    Sep 16, 2015
    Posts:
    183
    Ah that's frustrating, no worries looking forward to it! Btw out of curiosity is 5.0 no longer affected by post pro bloom or does that come later?
     
  4. slice3d

    slice3d

    Joined:
    May 7, 2011
    Posts:
    207
    As some of you might already have noticed - Highlighting System v5.0 has been released in the Unity Asset Store!

    @zornor90 There was an issue with the first version of the Unity Post-Processing Stack, where it was impossible to integrate custom Image Effects without requiring a bunch of modifications in it's source code, but Post-Processing Stack v2 looks promising, so I'll give it another try.
     
  5. lascoin

    lascoin

    Joined:
    Jan 25, 2013
    Posts:
    16
    Code (CSharp):
    1.  
    2. set_colorKeys is not allowed to be called from a MonoBehaviour constructor (or instance field initializer), call it in Awake or Start instead. Called from MonoBehaviour 'Highlighter' on game object 'GameObject'.
    3. See "Script Serialization" page in the Unity Manual for further details.
    4. UnityEngine.Gradient:set_colorKeys(Gradient, GradientColorKey[])
    5. HighlightingSystem.Highlighter:.ctor() (at Assets/Third Party/HighlightingSystem/Scripts/Highlighter.cs:259)
    6. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    7.  
    Getting this when adding the 'Highlighter' component to an object on editor version 2018.2.0b2
     
    Last edited: May 24, 2018
  6. slice3d

    slice3d

    Joined:
    May 7, 2011
    Posts:
    207
    @lascoin Thank you for your bug report! I wonder why I don't see this error. Could you please tell me which Unity Editor version you're using?
     
  7. lascoin

    lascoin

    Joined:
    Jan 25, 2013
    Posts:
    16
    Updated the original post: 2018.2.0b2
     
  8. slice3d

    slice3d

    Joined:
    May 7, 2011
    Posts:
    207
    @lascoin Oh wow, as of Unity 2018.2.0b1 - this is no longer allowed to set default values of the Gradient fields, and they're not providing Gradient constructor which takes color and alpha keys. Ok, here's the fix.
     
    Last edited: May 24, 2018
  9. lascoin

    lascoin

    Joined:
    Jan 25, 2013
    Posts:
    16
    Thanks! Confirmed working. And just for anyone else reading this:

     
  10. th3z0d1ac

    th3z0d1ac

    Joined:
    May 14, 2014
    Posts:
    15
    Hey!

    I bought the asset, it's really good. However I have about 5-6 Android test devices. Most of them works, but there's two older devices where no glow or highlight get's rendered. Newer devices are render the highlight without any problem. But older ones not. How to solve this? My game depends on this highlighting system. So I can't leave weaker devices without glowing.
     
  11. slice3d

    slice3d

    Joined:
    May 7, 2011
    Posts:
    207
    @th3z0d1ac Hey,
    Glad you liked Highlighting System. Sorry to hear you're having such issues!
    I'm using only standard Unity rendering functions (nothing undocumented or hacky), so that means these devices doesn't support built-in Unity rendering functionality. So unfortunately, there is a low chance I can do anything in order to fix this (neither Unity Technologies can).
    Does demo scenes work on your devices, or highlighting is completely missing? Could you please show me the screenshots made on these devices? Do you see any errors in logs gathered from builds running on these devices (especially the ones, stating that certain Unity rendering feature is not supported)? Could you please find your devices here and post the links so I'll have complete list of specs?
     
  12. nbg_yalta

    nbg_yalta

    Joined:
    Oct 3, 2012
    Posts:
    378
    @slice3d looking forward for this feature, will definitely buy it..
     
  13. th3z0d1ac

    th3z0d1ac

    Joined:
    May 14, 2014
    Posts:
    15
    Hey thanks for the answer. I don't see any kind of errors in the logs, however I try to check them out again.

    The link to the device : https://www.gsmarena.com/alcatel_pixi_4_(7)-7847.php

    Screenshot_20180527-105753.png Screenshot_20180527-105750.png
     
  14. matej_mnoucek

    matej_mnoucek

    Joined:
    Mar 6, 2014
    Posts:
    17
    Hi guys! Has anybody made this work with the latest Google VR/Cardboard SDK? The provided YouTube tutorial is no longer useful as a lot of things has changed...

    The problem is that when I run the Android app with VR mode on there is no highlight at all. Normally it works fine. I am using Unity 2018.1 now.

    Thanks!
     
    Last edited: Jul 16, 2018
  15. Jinmin1986

    Jinmin1986

    Joined:
    Jul 23, 2018
    Posts:
    1
    Hi anyone know whether this could work on PS4?
     
  16. Kholeslaw

    Kholeslaw

    Joined:
    May 7, 2013
    Posts:
    35
    This is a great Highlighting system.
    Has anyone solved how to deal with sprites highlighting through sprites in front of them? I'm using the latest release.
     

    Attached Files:

  17. jlelez

    jlelez

    Joined:
    Jul 9, 2015
    Posts:
    1
    Hello, i find this asset very useful, good job ! However i have a problem and i can't make it work with the new feature (Shader graph) because the rendering pipeline is different. The cause : LightWeightAsset in the graphics settings. Do you know if it's possible to fix that ?
     
    jterry likes this.
  18. FlawlessResponse

    FlawlessResponse

    Joined:
    Sep 3, 2018
    Posts:
    1
    1) Does not work when the collider on the object is Box Collider 2D
    2) Cannot be added to an object during runtime via myObject.AddComponent<Highlighter>() because it does not extend MonoBehavior.

    Edit: It works great otherwise and is what i needed. workaround for #1 is to not use 2D colliders. workaround for #2 is to instantiate a prefab with the highlighter already added.
     
    Last edited: Sep 7, 2018
  19. Helixis

    Helixis

    Joined:
    Feb 27, 2013
    Posts:
    5
    Hi, I've having a problem trying to use this plugin in VR. I'm using 2018.2.0, and if I use multi pass rendering and have post processing enabled on the camera, the highlighting effect is distorted in the right eye.
    highlightbug.png
    As you can see the left eye highlights the ladder properly, the right eye doesn't. I can switch to single pass, or disable post processing but this makes the scene look noticeably different and worse. Is there any fix for this?
     
  20. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    @slice3d
    Hi, I'm using amplify imposter for my game's optimizations and the highlighting system for focused items, but met an issue with small objects that uses the imposters:

    upload_2018-10-15_16-20-38.png
    When the highlighting system is working on a mesh, then it looks fine.

    But when the LOD change to the imposter:
    upload_2018-10-15_16-21-57.png

    The highlight effect got wrong. How can I let the imposter also shows the mesh highlights or make the highlight effect rotate with the imposter billboard?
     
    Last edited: Oct 15, 2018
  21. slice3d

    slice3d

    Joined:
    May 7, 2011
    Posts:
    207
    @th3z0d1ac
    Hey,
    I'm sorry but I was unable to find Alcatel Pixi 4 in any device test clouds/farms so I can't figure out why Highlighting System doesn't work on this particular device. :(
    Have you been able to fetch device logs and see if there are any errors? There must be something reported by the HighlightingBase.CheckSupported().

    @matej_mnoucek
    Hi!
    Please make sure that Depth Format is set to 24-bit depth | 8-bit stencil as described here.

    @Jinmin1986
    Hi,
    I haven't tested it personally since I don't have a PS4 devkit, but as far as I'm aware - Highlighting System works on PS4.

    @Kholeslaw
    Thank you!
    Highlighting System was developed as a highlighting solution for 3D objects, so I'm not supporting 2D to full extent (I'm doing some research in this domain though). But does adding Highlighter component to this blue rectangle sprite and turning on Occluder mode does what you need? (You will probably have to enable Overlay mode too).

    @jlelez
    Hello,
    Thank you! Unfortunately, Scriptable Render Pipeline is currently not supported, but that's planned for the future updates. Sorry for the inconvenience!

    @FlawlessResponse
    1) You mean '2D colliders are not supported by the RaycastController demo script'? That's not an issue since this script's purpose is to simply show you one of the possible ways to hook up Highlighting System to your Unity project, and it was never supposed to be production-ready. You can fix this particular issue you're having by replacing the call to Physics.Raycast() with Physics2D.Raycast() in RaycastController.cs.

    2) That's not true - Highlighter component derives from HighlighterCore which is derived from MonoBehaviour. See an example script here if you want to add Highlighter component at runtime.

    @Helixis
    Hi,
    I'm sorry, but under the 'post processing' you mean Unity Post-Processing Stack?

    @Harekelas
    Hi,
    Pretty sure they're doing some fancy renderers switching at runtime so the Highlighting System doesn't know anything about that (Highlighter.SetDirty() doesn't get called) and custom transparent shader tricks. I just can't buy every other asset on the asset store and make sure Highlighting System works with it, so I'm afraid that's on you to make those two assets work together, but to give you the clues where to start - read this first and then learn how Initialize() method works in HighlighterRenderer.cs script.
     
  22. Helixis

    Helixis

    Joined:
    Feb 27, 2013
    Posts:
    5
    Yes, the new 2018 version. We've got a global post processing volume and a profile with a few effects. We tried disabling individual effects, even down to no effects, but the only thing that worked was turning off the entire post processing layer on the camera.
     
  23. QuincyC

    QuincyC

    Joined:
    Jun 5, 2018
    Posts:
    10
    I'm just here to report a performance issue. This all started when somebody pointed out that my new build is CRAWLING on his celeron laptop. Digging into what's going on, I found that my resource usage was through the roof even when not doing/showing anything: 1.22gb texture memory usage, >1ms or 70% GPU usage (on a GTX 1080!!!). For reference, my whole app is 90mb and 11mb of that is textures.

    A little background, my app is 90% UI with a 3D view that pops up and I use this plugin to highlight some objects in that view. So of course I have a camera in my hierarchy with a HighlightingRenderer on it.

    Long story short, I just tried disabling the HighlightingRenderer component and it now I'm at ~500mb texture memory and 0.22ms or 12% GPU usage. This is a pretty extreme hit to take just to have the ability to highlight something, and a serious deal breaker. I'd assume this is caused by some lack of optimization in the HighlightingRenderer but I have not looked into it at all.
     
  24. Zoranner

    Zoranner

    Joined:
    Feb 24, 2017
    Posts:
    6
    From Highlighting System 5.0 & Unity 2017.4.16

    @slice3d Hello, can u help me? I encountered some problems. When I use my model, highlighting will make mistakes in some parts. like this: 8D4FB0CD-8EEB-40D1-BAE1-0CA172CB093C.jpeg
    some parts are right:
    29D2E937-6563-40CD-8DCB-D6691A54E631.jpeg

    AND my model is here: http://portal.xpn3d.com/files/toolbox.fbx

    2018.12.18 Update:
    Change [Cull Back] to [Cull Off] in the HighlightingCut.shader can fix this mistake on PC, but it still happens on iOS.
     
    Last edited: Dec 18, 2018
  25. bugfinders

    bugfinders

    Joined:
    Jul 5, 2018
    Posts:
    1,800
    Does this work on real small objects? I bought a similar asset selected effect - outline and that doesnt work on small objects
     
  26. BurmesterVR

    BurmesterVR

    Joined:
    Sep 9, 2016
    Posts:
    6
    Hi... very nice highlighter system! :) This might be an unusual use case, but I need an option to "mirror" some models in my project, and of course the fastest way to do that is to simply set them to a negative scale value on the axis I want to mirror, but I found your system stops highlighting as soon as the objects scale becomes negative. Any chance of a fix for this?

    Many thanks!
     
  27. JosephGovi_TechArtist

    JosephGovi_TechArtist

    Joined:
    Oct 3, 2018
    Posts:
    4
    Hiya,

    Great system, going to be useful for a lot of our projects!

    Wanted to know if there is an easy method for having the fill alpha be a different value when hovering on different objects.

    Thanks

    Joe
     
  28. Nevade

    Nevade

    Joined:
    Jul 10, 2017
    Posts:
    8
    Hi!

    I'm having some trouble on IOS with the Highlight system!
    I've built my app for PC/Android/Ios.
    On PC and Android it's all OK. In IOS the highlight fill the object like the bug of the negative scale value. Of course the Object has a positive scale and on the other platform the hightlight works well.
    There's some incompatibility (i'm using a IPad Mini) or other know issues?
    Thanks!
     
  29. ChaosResolution

    ChaosResolution

    Joined:
    Jan 22, 2013
    Posts:
    80
    Hi! Any more updates on getting this working with the HDRP?
     
  30. bugfinders

    bugfinders

    Joined:
    Jul 5, 2018
    Posts:
    1,800
    is this still supported? no response to this since mid nov.
     
  31. BurmesterVR

    BurmesterVR

    Joined:
    Sep 9, 2016
    Posts:
    6
    Anyone heard from this developer recently?
     
  32. slice3d

    slice3d

    Joined:
    May 7, 2011
    Posts:
    207
    @Helixis
    I'm sorry for the inconvenience, but Unity Post-Processing Stack is not yet supported by the Highlighting System. This is planned for the upcoming update.

    @QuincyC
    Sorry to hear you're having such issues. That's definitely not right! There's probably some corner-case in your setup, which is triggering such issues (might be totally unrelated to the Highlighting System at all). GTX 1080 is far above any requirements for the Highlighting System, considering that I can barely see any performance regression when I turn on Highlighting System on my old Android phone. I'll be happy to investigate this if you'll provide me with a sample project.

    @Zoranner
    Hello! Unity 2017.4.17 fails to import your model. :(
    ImportFBXErrors.png
    But you're right - most likely this is due to culling (some parts of this model have negative scale?). I will expose culling option in Highlighter settings in the upcoming update, so you will be able to control it per-Highlighter.

    @bugfinders
    Since Highlighting System is an Image Effect - it works the same way with small objects as it does with big but distant ones, so you can see the effect in this WebGL demo by moving camera far away from the scene. As you can see - highlighting details lost when you use blurry presets, but if you switch to the 'Solid 1px' or 'Solid 2px' presets (the ones which use Downsampling = None) in the upper-right corner - then distance or size does not affect highlighting quality at all.

    @BurmesterVR
    Thank you!
    That's because for such objects - front-facing geometry should be culled instead of back-facing geometry. I will expose the option to control that in Highlighter settings in the upcoming update. For now - please use this hotfix.

    @JosephGovi_TechArtist
    Thank you!
    If you're highlighting only one object at a time - then simply change fillAlpha on the HighlightingRenderer component as you need, but if you're highlighting multiple objects and want different fillAlpha settings - then no, this is currently not possible. I will continue looking for the options to implement that.

    @Nevade
    I'm not aware of such issues. Please send me your sample project along with other details to reproduce this issue, so I'll be able to test it on my iPad Mini.

    @ChaosResolution
    No, not yet - HDRP is still in preview and is changing a lot internally. I had a bad time earlier catching up to the frequent API changes in Unity while particular feature was still in development (see Playables as an example), so I'll prefer to wait for the final implementation instead of making mess in Highlighting System's code. Sorry for the inconvenience!
     
    greengremline and Ramsdal like this.
  33. strich

    strich

    Joined:
    Aug 14, 2012
    Posts:
    375
    Is it possible to fade the outlines in world space? IE the outline fades to nothing based on the spherical distance from the cursor position?
     
  34. slice3d

    slice3d

    Joined:
    May 7, 2011
    Posts:
    207
    @strich
    I'm not sure what you mean exactly, but most likely the answer is no - Highlighting System is an Image Effect and works in screen space, not world space.
     
  35. kevin-masson

    kevin-masson

    Joined:
    Sep 24, 2018
    Posts:
    73
    Hey, I got a question about the following code in HighlightingBase:

    Code (CSharp):
    1. // Upscale blurred texture and cut stencil from it
    2.             renderBuffer.Blit(oddEven ? blur1ID : blur2ID, highlightingBufferID, cutMaterial);
    Shouldn't this be executed only when the buffer is blurred (iterations > 0) ?
     
  36. Davood_Kharmanzar

    Davood_Kharmanzar

    Joined:
    Sep 20, 2017
    Posts:
    411
    hello,
    does it support on SRP HD [HDRP] on unity 2018.2.x ??
     
  37. henkjan

    henkjan

    Joined:
    Aug 1, 2013
    Posts:
    146
    Hi,
    I've tried it in our new project which uses LWRP. As fare as I can see it doesn't support LWRP. Or do I do something wrong?
     
  38. kevin-masson

    kevin-masson

    Joined:
    Sep 24, 2018
    Posts:
    73
    No it does not. The shader needs to be edited.
     
  39. baneand

    baneand

    Joined:
    Dec 3, 2013
    Posts:
    8
    @slice3d Hi! I have used the highlighting plugin in 2018.3 unity in VR and everything worked fine. Yesterday I updated to new unity 2019 and suddenly highlighting is acting weird. It is like axis are tumbled or something like that, it is difficult to describe. But they are moving with Rift cameras and they are moving in odd directions (they are not stationary on object which needs to be highlighted). Can anyone check this or has anyone encountered something similar?
     
  40. Knil

    Knil

    Joined:
    Nov 13, 2013
    Posts:
    66
    If you are having issue with compatibility with the post processing stack disable "Directly to Camera Target" on Post Process Layer.
     
    jterry likes this.
  41. baneand

    baneand

    Joined:
    Dec 3, 2013
    Posts:
    8
    Where is that exactly?
     
  42. Knil

    Knil

    Joined:
    Nov 13, 2013
    Posts:
    66
    This will not fix the VR issue, we are running into that as well in Tabletop Simulator. This is if you are using the Unity post processing stack v2.
     
  43. CN2

    CN2

    Joined:
    Sep 14, 2012
    Posts:
    4
    @slice3d We are having a performance issue with the highlighting using forward rendering. Specifically it is increasing our draw calls by almost 50% and significantly reducing our FPS on mobile (iOS). We have noticed that duplicating any one of the objects in the demo scenes causes a similar increase in draw calls. Unfortunately using deferred rendering is not an option at this point.

    Steps to reproduce:
    1) Make 100 duplicates of the unhighlighted cube in the scene 04 Occlusion
    2) Remove the HighlightingRenderer from the main camera
    3) Note that draw calls are 20 with >100 batched draw calls
    4) Add the HighlightingRenderer back onto the main camera
    5) Note the draw calls are now 40 with batched draw calls >200

    Environment: Unity 2018.1.3f1 on Mac OSX High Sierra building to iOS 12.1 on iPad Pro
     
  44. CN2

    CN2

    Joined:
    Sep 14, 2012
    Posts:
    4
    @slice3d We are using the fillAlpha to highlight items that are occluded. When 2 items are overlapping and have different colors the rendering of the fill appears to be arbitrary (i.e. one item may appear behind another when it is in front in the depth buffer). Is there is something that could be done to affect this ordering? We are not looking for depth ordering but rather priority ordering (would consider multiple ordered instances of HighlightRenderer if not significantly more expensive).
     
  45. BleuCobalt

    BleuCobalt

    Joined:
    May 7, 2018
    Posts:
    3
    Hello,
    Are you working on an LWRP version of this product ?
    We need exactly the service this product is providing, but in LWRP.
    thanks for creating it,
    all my encouragements for the conversion to the new SRPs
     
  46. ankitkhetrapal

    ankitkhetrapal

    Joined:
    Jul 6, 2017
    Posts:
    1
    Hi,

    We have been using this plugin for quite some time now, but recently we upgraded our VR project(currently testing on HTC Vive) to unity version 2019.1.0f1. And since updating, we are getting issues with the highlight in VR(works fine in standalone mode). All the highlights are appearing inverted and above the model mesh(see grab for reference). It was working absolutely fine till unity 2018.3. Kindlysuggest a solution.


    GrabIssue.png
     
  47. hurleybird

    hurleybird

    Joined:
    Mar 4, 2013
    Posts:
    258
    I finally figured out why some of my objects would be a given a solid color over the entire model instead of an outline. I was randomly changing a transform scale value from 1 to -1 to increase variety (in this case, an asteroid that looks different when flipped). This breaks HighlightingSystem completely. Please update the asset so it works with negatively scaled GameObjects.

    Edit: Ok, the "Cull Off" change fixed it.
     
  48. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    Do you plan on bringing this ability back?
     
  49. Somneuro

    Somneuro

    Joined:
    Jun 6, 2019
    Posts:
    2
    Will this be compatible with playmaker if I try to add it as a script?
     
  50. PsilocybPsps

    PsilocybPsps

    Joined:
    Aug 20, 2013
    Posts:
    18
    good day!
    is it possible to make the distance the appearance of the stroke?
    Suppose if I get close to the door, the effect begins to highlight it
     

    Attached Files:

    • axcx.png
      axcx.png
      File size:
      303.4 KB
      Views:
      503