Search Unity

Old School Pixel Fx

Discussion in 'Works In Progress' started by Gobla, Oct 17, 2014.

  1. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    About
    Old School Pixel FX is the ultimate tool to apply any old school or retro pixel fx on your project. Suitable for PRO Windows/Linux/Mac/Web builds. Mobile PRO is untested but suspected to work as well.

    Ideal for your classic point & click adventure games as well as psuedo classic system simulators like the atari, nes and others.

    Important Fix for Unity 5 (Personal & Pro!)
    Simple fix to make it work in Unity 5 (even in Unity Personal Edition WEB&PC (NON-PRO) !):
    - Remove old default "Image Effects" folder (if you do not use it for other fx other than Old School Pixel Fx!!!!)
    - Import the default pacakge "Effects" (Assets->Import Package->Effects)
    - Add "import UnityStandardAssets.ImageEffects;" as a top line to OldSchoolPixel.js
    - Should all be working.

    Asset store
    https://www.assetstore.unity3d.com/en/#!/content/23703

    Features
    • Choose any resolution for your game that is lower than the resolution of the viewport.
    • Apply ANY image to be used as colormap. Old School Pixel FX will automatically create a new color map for you.
    • Maximum of 512 colors.
    • Attached 23 colormaps from: https://code.google.com/p/grafx2/wiki/PaletteRepository
    • Can be used in in both orthographic and perspective.
    • Works in VertexLit, Forward and Deferred Rendering.
    • Runtime colormap switch is possible.
    Cost
    Normally: 5 Dollar. The first week: 2 dollar!

    Sample Sceenshots:








    Original scene:
     
    Last edited: Mar 29, 2015
    AthosK likes this.
  2. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    Added the option to disable the either the resolution or the colormap FX on runtime.
     
  3. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
  4. joni-giuro

    joni-giuro

    Joined:
    Nov 21, 2013
    Posts:
    434
    Looks good. How does it perform? Does it run on mobile?
     
  5. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    The total render time for All PostFX (that includes the built-in Unity components as well) with the profiler on my test laptop is 0.7 ms on the highest quality and 0.1 ms on the lowest quality for the demo scene.

    I haven't been able to try this on mobile since I don't have a mobile PRO license. However it is expected to work fine.
     
  6. quantumsheep

    quantumsheep

    Joined:
    Mar 9, 2013
    Posts:
    37
    Hey there!

    Was excited to try this out with Unity 5, but get this error when I import the package:

    Assets/OldSchoolPixelFX/Standard Assets/Image Effects (Pro Only)/OldSchoolPixelFX.js(6,39): BCE0018: The name 'PostEffectsBase' does not denote a valid type ('not found'). Did you mean 'UnityStandardAssets.ImageEffects.PostEffectsBase'?

    Will there be an update at all, or any advice?

    Thanks!

    QS =D
     
  7. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351

    There most certainly will! I just have to wait a few more days until I can buy the 4 => 5 upgrade since I do not have enough funds to buy it this moment.

    But as a tip: Try to change 'PostEffectBase' in OldSchoolFixelFX.js by 'UnityStandardAssets.ImageEffects.PostEffectBase' and it might work just like that.
     
  8. Schneider21

    Schneider21

    Joined:
    Feb 6, 2014
    Posts:
    2,907
    As soon as Unity 5 is supported, this is a must-buy for me.
     
  9. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    Simple fix to make it work in Unity 5 (even in Unity Personal Edition WEB/PC (NON-PRO) !):
    - Remove old default "Image Effects" folder (if you do not use it for other fx other than Old School Pixel Fx!!!!)
    - Import the default pacakge "Effects" (Assets->Import Package->Effects)
    - Add "import UnityStandardAssets.ImageEffects;" as a top line to OldSchoolPixel.js
    - Should all be working.
     
    Last edited: Mar 29, 2015
    quantumsheep likes this.
  10. Schneider21

    Schneider21

    Joined:
    Feb 6, 2014
    Posts:
    2,907
    Nice. After lunch purchase, then. :)
     
  11. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    We use Unity 5 for last features like PBR , not to play dowgraded graphics :D
     
  12. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    You are free of course to use and create with Unity whatever you want. But if you ever need to have a retro effect, you know where to get it ;).
     
    zenGarden and Manny Calavera like this.
  13. quantumsheep

    quantumsheep

    Joined:
    Mar 9, 2013
    Posts:
    37
    This fixed things, thanks!

    I've spent the afternoon going back in time! Also: Playing with this package :D

    Cheers! It's great fun!

    QS =D
     
    Gobla likes this.
  14. hon_jyn

    hon_jyn

    Joined:
    Jan 29, 2015
    Posts:
    4
    Hello,

    I got this warning:

    "The image effect Main Camera (OldSchoolPixelFX) has been disabled as it's not supported on the current platform."

    What am i doing wrong?

    Thanks.
     
  15. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    What version of Unity are you using?
     
  16. hon_jyn

    hon_jyn

    Joined:
    Jan 29, 2015
    Posts:
    4
    version 5, my project is a Android project.
     
  17. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    I don't think that Android default supports image effects at all if you don't have Android PRO.
    Can't seem to find that right now.

    Edit: Correction it seems that android doesn't supports 3D textures. I will look into this.

    Edit 2: Found the exact issue. I will make an Android & IOS friendly version and add this to the package.
     
    Last edited: Mar 29, 2015
  18. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    I am glad to announce that I've created a new and improved version of the Old School Pixel FX that is now fully tested on Android as well with hardly any impact on the performance.

    Small deviations in the color due to the texture conversion have also been removed now resulting in a prefect color match for your carefully picked palettes.

    The changes will be submitted to the asset store tomorrow morning.

    Do note that that is absolutely the last month you can get this package for the $2 it costs now. By the end of April it WILL become $5.
     
  19. hon_jyn

    hon_jyn

    Joined:
    Jan 29, 2015
    Posts:
    4
    I already buy it. Do i just need to download it again? I will test it when i get home.

    Thank you very much.
     
  20. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    As soon as the update is available you can hit "Update" in the In-Unity assetstore since you already bought it. Do note that due to Unity's quality check it can take up to a week until the asset is accepted! So please be patient until it is accepted. I will post a message here when it is ready.
     
  21. dueyvee

    dueyvee

    Joined:
    Apr 1, 2015
    Posts:
    1
    Sorry man i can't figure out how to set this up. I dont have Unity 4 Pro but I have Unity 5. Will it make a difference what version I use.
    Thanks
     
  22. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    It does not make a difference after the update that I send to Unity at the beginning of the week. You can wait until the update is accepted (I expect the ending of this week or the beginning of next week) and it should work perfectly right away.

    If you want to start with it now you have to remove any remaining "~/Standard Assets/Image Effect/" folders other than the one in the folder "OldSchoolPixelFx". Then import Effects (Assets->Import Package->Effects). Open the file OldSchoolPixelFx.js and add "import UnityStandardAssets.ImageEffects;" as a top line. It should be working now.

    If not please tell me what step you get stuck.
     
  23. LaneFox

    LaneFox

    Joined:
    Jun 29, 2011
    Posts:
    6,484
    Looks like a sick retro filter! Would be nice to see a video of it being used. Pixel-y filters can lose a lot of their quality/consistency when animated.
     
  24. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    Thanks! I will make a video later on today and post it here.

    Edit: Something came in between. Will fix ASAP.
     
    Last edited: Apr 1, 2015
  25. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
  26. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    quantumsheep likes this.
  27. pkolbe

    pkolbe

    Joined:
    Oct 2, 2013
    Posts:
    8
    Is there a way to change the downscale at runtime? I'm trying to use this on mobile and need it to adapt to different resolutions, but I am having difficulties doing this. What I have in the editor seems to override any changes I make. I really want to make sure what I set the downscale to divides cleanly by the screen resolution of the device.

    Also, could you possibly add a setting to cleanly downscale by DPI?
     
    Last edited: Apr 22, 2015
  28. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    Can you copy paste the code you have used. I have no problem changing the resolution from an external script by simply changing osp.width and osp.height (osp = OldSchoolPixelFXMobile reference).

     
  29. pkolbe

    pkolbe

    Joined:
    Oct 2, 2013
    Posts:
    8
    Thanks for the response. I was just fiddling with the source to try to make that happen with no luck. I'll try it with an external script using osp. If that doesn't work as expected I'll let you know.
     
  30. J-F

    J-F

    Joined:
    Nov 8, 2012
    Posts:
    101
    I just bought this too and it looks great.
    But is there any way of doing any kind of dithering for color transitions?
    I would like to have bayer dithering in my game.
     
  31. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    I will look into this and add the most suited form of dithering.
     
  32. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    There we go, new dithering modes based on ordered dithering. Allows the use of your own dithering maps as well:
     

    Attached Files:

    J-F and quantumsheep like this.
  33. Lolzder

    Lolzder

    Joined:
    Jan 7, 2014
    Posts:
    2
    whenever i import OldSchoolPixelFX, i get this error

    Assets/OldSchoolPixelFX/Standard Assets/Image Effects (Pro Only)/OldSchoolPixelFX.js(8,39): BCE0018: The name 'PostEffectsBase' does not denote a valid type ('not found').

    note I am using 5.1
     
  34. J-F

    J-F

    Joined:
    Nov 8, 2012
    Posts:
    101
    Have you imported the image effects asset from assets/import package...?
     
  35. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    Yes, you need to import the Standard Unity Package named "Effect".
     
  36. B_Sides

    B_Sides

    Joined:
    Jun 10, 2015
    Posts:
    2
    Maybe I'm missing something obvious, but I have the Demo scene open and I can't seem to figure out how to use dithering. I'd really appreciate if Gobla could point the way :) Thanks in advance!
     
  37. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    Omg. My sincere apologies. I did upload the package but never submitted (finalized) it in the web form... :(:(:(

    I submitted it now and it should be in the update in a few days...

    Again my sincere apologies:confused:.
     
  38. B_Sides

    B_Sides

    Joined:
    Jun 10, 2015
    Posts:
    2
    No worries! Thanks for the quick reply and submitting the updated package. I look forward to checking it out! :)
     
  39. Gobla

    Gobla

    Joined:
    May 28, 2012
    Posts:
    351
    For those that want to import the package on runtime it could occur that settings are not properly applied. I've made a fix that handles this and is submitted with the next package. For now you can do the following:


    In "OldSchoolPixelFX.js", "OldSchoolPixelFXDither.js", "OldSchoolPixelFXMobile.js" and/or "OldSchoolPixelFXDitherMobile.js" change the following:

    Add:
    Code (JavaScript):
    1. public var backupTexture : Texture2D;
    Below:
    Code (JavaScript):
    1. public var basedOnTempTex : String = "";
    =========================================

    In the function:
    Code (JavaScript):
    1. public function Convert (temp2DTex : Texture2D, path : String) {
    Add:
    Code (JavaScript):
    1. backupTexture = temp2DTex;
    Below:
    Code (JavaScript):
    1. converted3DLut2D.Apply ();
    =========================================

    Finally, add the following function to the code:
    Code (JavaScript):
    1.     function Awake() {
    2.         if (converted3DLut2D == null && backupTexture != null) {
    3.             Convert(backupTexture,basedOnTempTex);
    4.         }
    5.     }
    Enjoy!
     
  40. J-F

    J-F

    Joined:
    Nov 8, 2012
    Posts:
    101
    I have made some quick demonstrations using the pixel fx shader.
    Some videos:


     
    Gobla likes this.
  41. Zebbi

    Zebbi

    Joined:
    Jan 17, 2017
    Posts:
    209
    This asset looks so cool, shame it's been depreciated!
     
    StevenPicard likes this.
  42. bsimser

    bsimser

    Joined:
    Sep 8, 2014
    Posts:
    34
    I hate coming across cool assets that get deprecated. Sure this is old but it looks good. Wish more developers would just open source or make the assets available for free.
     
    StevenPicard likes this.
unityunity