Search Unity

  1. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  2. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice
  3. Dismiss Notice

[RELEASED] Projector Simulator Pro

Discussion in 'Assets and Asset Store' started by shwhjw, Feb 16, 2020.

  1. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86


    Hi all!

    Some of you may already be familiar with Projector Simulator (PS), an asset which allows you to have realistic image/video projectors in your Unity project. As it happens, PS started being used for designing and visualising real-world projection systems, and I got several requests for features specific to design work that were outside the scope of PS as the intended audience (game developers) would not need such features.

    This is where Projector Simulator Pro (PSP) comes in. PSP is based on the same underlying code as PS, but has many features tailored to working with real-world projection design. As I work in projection design myself, I know what tools can come in useful and what features are missing from other projection design software.

    If you work with projectors then you might want to check out the store page here!
    • Tool to create projector definitions, including chassis size and lens characteristics (zoom, shift, protrusion etc)
    • Procedural screen geometry, or import your own
    • Analysis mode to analyse expected image quality (resolution/luminance) from given eyepoint, results in heatmap on screen geometry (with ability to measure individual screen points)
    • Equirectangular or aitoff rendering from eyepoint position (analysis mode or not)
    • Projection Mapping and CAVE simulation
    • Cable-routing tools
    • Report generation
    • Design Wizard for rapid design of flat and cylindrical screens
    • Orthographic rendering with 1m grid overlay
    • Optical tracking volume analysis
    • Export to SKP format
    • Shader-based implementation, allowing the smooth editing of multiple projectors simultaneously
    • Create projector groups using Unity's heirarchy. Edit whole groups by selecting the parent.
     
    Last edited: Jun 2, 2024
    wardy1979 likes this.
  2. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
    Hi all,

    Unfortunately we are having some issues with Unity v2021. Best to stick to v2018.4 - v2020 until this is resolved.

    Best regards,
    WG

    Edit: resolved
     
    Last edited: Oct 6, 2023
  3. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
  4. arjobmasher

    arjobmasher

    Joined:
    Jan 5, 2020
    Posts:
    2
    RENDER PIPELINE COMPATIBILITIES? URP?
     
    Last edited: Oct 24, 2021
  5. DannyWoo

    DannyWoo

    Joined:
    Oct 25, 2012
    Posts:
    24
    Don't you have any plan to add mapping and blending for the actual projector?
     
  6. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
    Sorry for neglecting the thread, HDRP is now supported!

    The Projection Mapping feature allows some warping simulation if you can map your projected content onto the screen model as an emissive texture (example included in the asset package). It would be nice to add some manual warping and automatic blending which I will investigate. I know some users have used this asset in combination with PSP to drive real projection systems.
     
  7. wardy1979

    wardy1979

    Joined:
    Jan 21, 2017
    Posts:
    2
    Hi. Really impressive software. I was interested in modelling a projection mapping installation for a small mountain. Its approx 120m by 80m. Would your software be suitable for such a task? I also noticed you had a projector profile file for the Digital projection Titan projector in your overview video. Is this something you have in a built in library?
     
  8. 100fat

    100fat

    Joined:
    Feb 15, 2013
    Posts:
    2
    Hi! This looks like a cool asset. One question. Is it possible to extract an equirectangular image from a mapped sphere? This way we can use this image as a template for our mapping.

    Thanks in advance!
     
  9. Mehrdadderafshi

    Mehrdadderafshi

    Joined:
    Apr 3, 2022
    Posts:
    1
    hey there when I want to select video as an image to project it wont show up in the list it shows only 2d images. Also the documentation is so outdates and still with the old UI could u please update that
     
  10. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
    Hi, yes I think this should be possible, just place an eyepoint in the centre of the sphere and render an equirectangular image with it via the Projection Design Tools window.

    I think I responded to your Youtube comment but in case you didn't see it, there are instructions on projecting a video on page 24 of the manual.

    I've now got email notifications turned on for this thread so hopefully will be quicker to respond in future.
     
  11. kentoywong

    kentoywong

    Joined:
    Jan 5, 2023
    Posts:
    3
    Hi, when running the cave demo in Pro version, the camera far clipping plane is set to be 100. I think it is due to the fact the cave script is setting the the camera projection matrix. How could I change the far clipping plane to be 1000?
     
  12. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
    Hi kentoywong,

    You are correct that it looks like the script is setting the far plane to 100, but I found that changing the far plane in the template camera prefab seems to work.
    upload_2023-12-17_18-23-25.png

    upload_2023-12-17_18-24-0.png upload_2023-12-17_18-25-14.png

    So it seems like the far plane in the projection matrix is ignored when assigning it to a camera. It's been a while since I wrote that code, but maybe this is just how Unity handles it and it doesn't override the camera's original clipping planes.

    Kind regards,
    Simon.
     
  13. kentoywong

    kentoywong

    Joined:
    Jan 5, 2023
    Posts:
    3
    Hi thanks man, Yes I know to change the clipping planes of camera prefab, but.....it is not working.
    In ProjectorSimProVirtualCAVE.cs, the
    cameras.projectionMatrix = Utils.Misc.ProjectionMatrixFromAngles(left, right, up, down, 0.05f);
    function is setting the projectionMatrix of the camera and seems to set the near clipping planes to be 0.05f. But I dont know how to add a paramater to set the far clipping planes to be something like 1000.
     
  14. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
    Odd that it behaves differently for me. Can you tell me which Unity version you're using, and whether you're using HDRP?

    Can you confirm the far plane does change when you change the hard coded 100 value?

    I'm on mobile atm but will try to send an updated script later today that includes a parameter for the far plane. If it works I'll include it in the next update.
     
  15. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
    @kentoywong I just sent you a message with some updated scripts attached. Please try overwriting the ones in your PSP/Scripts folder with them and let me know if that fixes the far plane issue.
     
  16. kentoywong

    kentoywong

    Joined:
    Jan 5, 2023
    Posts:
    3
    It works well!!
     
    shwhjw likes this.
  17. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
    Great! I'll include the fix in the next update.
     
    kentoywong likes this.
  18. innoarea

    innoarea

    Joined:
    Dec 21, 2016
    Posts:
    1
    Hello. I would like to make a cave but with other dimensions. How could I change the dimensions of the cave and the projections to make it look good?
     
  19. shwhjw

    shwhjw

    Joined:
    Mar 15, 2016
    Posts:
    86
    Hi innoarea, here's a link to the WebGL demo showing the example scenes in action, in case you haven't seen it: https://sim0wn3d.itch.io/projector-simulator-pro-webgl-demo

    Example scene #3 demonstrates CAVE functionality with the CAVE screen shape and the VirtualCAVE script. You can change the dimensions of the screen in the Unity Editor via the Projection Design Tools window. VirtualCAVE assumes each face has a single projector mapped perfectly onto it (for this reason the smaller faces e.g. sides probably need the projector to be set to a non-native aspect ratio).

    Example scene #4 demonstrates using the Projection Mapping functionality with VirtualCAVE functionality, which allows any projector layout to be used so you are no longer restricted to 1 projector per CAVE face. More detailed explanation of this setup here. This means you can have any CAVE dimensions with any number of projectors.