I know Unity Terrain isn’t the most robust thing but has anyone ever seen this issue where a plane (in this case, the water) clips trees/details at certain angles?
I had the same issue with a particle effect that I was able to fix by creating a unique Sorting Layer, but Sorting Layers in 3D...?
Anyway, I have never seen this one before, so hopefully, one of you knows how to fix it.
Is your water transparent?
I had this problem and it was because the water's transparency shader was rendering in front of the detail transparency shader.
I haven't found a solution so far. I just switched my water to an opaque shader...
Try switching your water to opaque. If that fixes the problem than you know it's a problem with the detail/water transparency shader.
Related
UPDATE: As #BenHayward suspected, this is a bug. <link>
I have a very simple setup of cubes on a plane comprising a grid of quads. A directional light is shining down at the scene at an angle, producing a set of shadows from the cubes onto the quads.
Now I'm trying to produce an explosion effect with Unity's particle system, but when I add a point light to the particle system it causes all the directional-lighting shadows to disappear, whether they're in line of sight of the particle or not.
The shadows reappear when the particle is destroyed. Replicating the particle effect with pure C# doesn't cause any problems.
(Oh, and obviously I'm using the deferred rendering path.)
Any ideas? This is driving me off the wall.
[EDIT: I should have mentioned that the point light added to the particle system is set to cast shadows. The Unity standard particle pack has shadow-casting disabled by default. They too cause the problem when I turn the shadow-casting on.]
Based on the project that you linked to, it seems as though the particle system is causing the shadow cast from the directional light to flicker on and off quickly. I suspect this is a bug, since if it were intended behaviour, I wouldn't expect it to flicker in this manner.
In cases where this is not a bug, the problem can be caused by a couple of issues:
You can only have a certain number of dynamic (shadow casting) lights in your scene which are seen by the camera frustum. By default, this number is quite low (I think it's 4). You can increase this number by going to Edit > Project Settings > Quality. Set the Pixel Light count higher from its default value. You will need to increase this value to be greater than the total number of lights in your effect. Higher values will allow more lights to be rendered on the screen, but this reduces performance.
It depends on the shaders which you are using to receive the shadows. Some shaders will only render shadows for one directional light. The light which is used isn't necessarily too easy to determine. If you are using the standard Unity shader this shouldn't be a problem. But if you are using a mobile compatible surface shader or something you've written yourself then this could be the cause of the problem.
Also, for an explosion, I'd recommend using just one single point light (not lights attached to each particle), as this is all that is required. Any more lights would result in considerable performance impact on the GPU especially if there are more than one explosion in the scene at any one time.
I recreated the scene as you described, i can't recreate your issue.
i mostly followed this tutorial, and added a few cubes in a plane:
https://unity3d.com/learn/tutorials/topics/graphics/adding-lighting-particles
I will need a screenshot of your lights componnents, both the directional and the point light, the particles, and the cubes (mostly the material); I cannot comment because i dont have enough reputation yet, so i'll delete this once you add the screenshots;
I placed a light in my scene.
It is lighting the ground when i'm facing that light but when I turn the opposite direction, the light on the ground vanishes.
I think this might be some Unity's default behaviour.
Is there a way I can solve this issue?
Unity uses frustum culling to save performance, so it only draws items that are within the camera's viewing area. As a result of this, the particles behind you are not drawn, and any lights attached to them aren't either.
Scene-crucial lights aren't normally attached to particles, so it's normally not a concern if they're hidden along with their particles.
For conventional lights (not attached to particles), Unity should render the light as long as it affects objects within the camera frustum. If you use a conventional light, you should see better results.
Looks like you may have to disable occlusion culling. Unity3D Manual
I have the following scene
As you can see the ball in front of me has a very extreme shadow on it's back. How could I make it less extreme? I would like to still see the triangles that compose the Ico sphere but darker and without having to change the sun's position.
I tried to play with my light values, shader value, changed shaders, etc. but without any success. I guess I'm lacking some basic knowledges regarding lightning. Any help / tip would be greatly appreciated!
Thanks.
Models which have light issues or seem to have a permanent black poly may have flipped normals and will not display light correctly. Whichever 3d modelling program is used to make the models will be able to flip a normal for you.
I'm having an issue with 3d objects doing some kind of weird z fighting or climbing on top of each other depending on where the camera is moved to. I have posted some pictures to help illustrate the problem. Each rectangular "building" contains textured cubes of all the same size. The corner cubes do overlap somewhat. As you can see from the picture, every object is the same height. This is seen in the scene editor as well as the final rendered product. Can anyone explain what is causing this and how it can it possibly be fixed? Thank you :)
So the problem was the texture using transparency shader. After googling there seemed to be all kinds of issues with the unity transparency shader that involve workarounds. Two solutions to this is to either turn off transparency, or put the camera in orthographic mode.
I'm new to Lighting in 3D. Just started working with Unity3D. I was creating a sample for myself to test shadows and there is a problem.
As you can see that i have created two simple walls with two cubes. Also I have setup a directional light. Let's go the backside of the walls to view the problem
Technically the front wall should be blocking the shadow of the back wall. But it is not. I have painted a read line to show that where the shadow of front wall is overlapping the shadow of the other, meaning going all the was through the wall. Why is that happening. Help please...
set your shader to DIFFUSE. i have the same problem and solved this. my spotlight is passing thor
that is interesting indeed, i have used unity3d for 5 plus years and never seen or noticed this. however, this might seem like a weird request, could you set the ground and the two cubes to bumped diffuse and make sure the cubes are touching the ground.
Since the shader that is used might allow shadows to pass, secondly, could you go to player settings and check if you are using forward of differed rendering, since their lighting techniques are very different they might have different results.
but all in all, best guess is that the shader you are using allows shadows to pass.