Particle System not showing up in game view, showing up in scene view
Hi everyone,
I've been looking around for this for a couple of days, but can't figure out what the exact issue is.
Essentially, the issue is this: I have multiple particle systems in my game, none of which are showing up on my camera. They are showing up in the scene view, and they are also showing up in the camera preview (when I click the camera in the hierarchy and a preview appears in the scene view tab).
I have four cameras. In order of depth, least to greatest:
1. Background camera. This is for when I pause the game and turn off the level, turning on the pause menu. This is just pointed towards the skybox. Depth: -100
2. Main camera. This is attached to the player, renders every layer except two: PlayerLayer and UILayer. This is the camera that should be drawing the particle systems, and the one whose camera previous shows the particle systems. Depth: 0
3. Player camera: This is also attached to the player, simply draws any parts of the player so that it doesn't clip through the geometry. Depth: 1
4. UI Camera: Draws the 2D UI on top of everything. Depth: 2
The particle systems are all on the default layer, which is drawn by the Main Camera.
I've read somewhere that canvases can block particle systems from drawing. If that's the case, here are the canvases I have:
1. Main UI Canvas: Simply has a couple of images around the sides. This canvas only draws to the UI Camera.
2. Pause Menu Canvas: Disabled by default, has images all around the canvas. This canvas only draws to the Background camera.
3. Hint Canvas: In case of a moment where we have to stop the game to show the player information, the hint game canvas has a full screen image. This is also disabled by default. This canvas only draws to the Background camera.
Does anyone have any idea as to where I should start?
Answer by nathanlink169 · May 29, 2017 at 10:29 AM
I've found the issue. The issue was that my main camera had an edge-detection script on it that was turning the particle systems invisible.
Can you elaborate a bit more on what in your camera script was turning off particle effects. I believe I am experiencing the same issue.
Answer by flashashe · Jun 24, 2019 at 03:02 PM
I know I am late like 2 years but that is because I started using unity recently encountered the problem during my second tutorial lesson. When you place a particle (you don't even need to place it, just click on it in your prefabs, now check the transformation component, and you will notice that z axys is negative, change it to positive number like 1, now your particle should start showing in both the game view and the scene view. This may not be the solution for everyone, but for me it is, at least for now.
Thanks buddy! It was actually a problem of Transform (z-axis) value in Unity 2D.
Same here, I had modified the scale of the particle system shape (being a negative number) I set it positive and rotated the GO to have the same effect I was looking for
Thank you so much for this i had this problem and i would never have figured it out
Answer by dmmsskn · Sep 16, 2017 at 05:40 AM
Try to change in Particle System object (tab Renderer) value of "Sorting Fudge" to -100
. It helps me.
Thank You very much. You just saved me from doing Hours of Research.
Answer by Jimmy31 · May 17, 2020 at 09:38 AM
well i was having this problem since 2 weeks and i finally found the solution. so i started my project with standard shaders but recently i changed it to universal render pipeline and the change caused the problem with my those particle systems which i instantiate from scripts with collider.normal rotation. the problem was they are unable to measure the depth of scene so i was looking for a solution and then i give all my particle system normal,tangent,UV2,UV3 streams but i didnt work also the console shows converting invalid MinMaxAABB UnityEngine.renderpipelinemanager:DoRenderLoop_Internal(RenderPipelinesset,intPtr,AtomicSafetyHandle) and converting invalid MinMaxAABB UnityEngine.GUIUtility:processEvent(Int32,Intptr) but then i found the solution and it is just go to
RenderPipelineAsset > general and enable the Depth Texture though the console still shows the errors but my particle systems are working correctly. hope it help someone.
Thank you!! Enabling the Depth Texture on my render pipeline asset worked for me! I'm curious to know, how did you find that out?
Yes, under camera->Rendering->Depth Texture On
Worked for me also. Thanks
Answer by Akamis · May 03, 2019 at 05:55 AM
Hi everyone ! I've been stuck with this issue for hour, and now i finally find my problems.
The Z axes was to close to my camera ! Because it's orthographic, my particule systeme was at 0 but my camera only began to render at 0.3 from 100.
So i just put my VFX at 10 and voila ! My particule system was finally render by the camera ! Don't forget to check the render layer in the the render tab.
Hope it's help someone !
To understand these things you need to know what algorithms are used to draw these.
In particular, particle systems use the pivot to decide if it is visible. Even if the particle system is 1km wide, if the pivot is not inside the frustum (visible area) of the camera, it will not be shown.
So, always, put your particle system pivot in front of the camera.
Thank you my friend! I already had two days with that same problem, in fact the tutorial I am doing (Ruby's adventure) every step I take, it brings me new problems and that is why I am spending a lot of time looking for answers among the users because Unity does not give or not $$anonymous$$now any of the answers.
O$$anonymous$$G THANK YOU! For 30$$anonymous$$ I was wondering why I can't see it...