#colors washed
1 messages · Page 1 of 1 (latest)
this is how it looks now, I've had to bump the ambient occlusion to 1.6 so the brightness would somewhat match what Im trying to achieve
which is this
Is this lit whit a realtime light ? In the center part of the image ?
Or is this only from the lightmap ?
There is a realtime directional light in the scene and a point light on the ground but the point light doesn't seem to do a thing because its intensity is set to 1
When in scene view with its light mode on, the scene looks much closer to what I'm trying to achieve
Is there any way of achieving the same aspect?
I may be wrong, but isn't the original game using only lightmaps, and no dynamic lighting ?
In that case, to have the exact same look, just use an unlit shader
You're correct, the game uses only lightmaps and the shadows are baked
this is the scene view with its lights off
and now on
We tried going with dynamic shadows so the game would look a bit "revamped"
I would suggest to try to not use the lightmaps in the shader, and re-create the lighting in unity, eventually by baking new lightmaps withing unity directly
That sounds like a plan
Is there any way of making surfaces not look like the light is right next to them other than reducing the smoothness?
I tried bumping the intensity of those point lights but then the surfaces of meshes and sprites would get that light thing on them
something like this
even with the smoothness all the way down to 0.2 or something
The washed-outness looks to be caused by ambient lighting, probably from the sky
Increasing ambient occlusion makes it stronger so you probably don't want that
The root of the problem is trying to use physically based materials to get a look they were not designed for without understanding how they operate
The important question would be, what kind of look do you actually want?
That's also correct! sadboys Trying to learn as I go 😦
I'm trying to get the closest I can to this one, without anything baked... Ditching the lightmap and using the point lights intensity seems to be key, however I can't get rid of the "smoothness" spots
let me grab a print of how it looks with points intensity bumped
This is how it looks with dynamic point lights and no lightmap
cant seem to get the light to bounce(is that the correct term?) on the ground and the sprites look like that
this is the ground shader
Can't exactly tell what the problem over there is but
If you want to imitate the look exactly, you'll need to use a material for the ground that's lit only by lightmaps, an completely unlit material for the 3D objects combined with a static shadow meshes so they influence the lightmap
And something like what you already had for the sprites, I suppose
and this is the sprite shader
A lot of the undesired lighting you see is because of ambient and specular lighting
If you switch the shader from metallic to specular, you can control specularity
With AO and specular color all at zero you won't have direct or indirect reflections anymore making surfaces washed out or glossy
How the lighting works in the reference and how to replicate it in unity is not a simple question to answer, but this specularity trick might solve some of your problems at least
I'll give this trick a try
Another option was to have the shaders as unlit but then I'd lose the shadows, is there any way of making them cast shadows when unlit?
I think it's simpler to duplicate the mesh with this shadows only option
🤔
Thanks, I'll give them a try and update
that option worries me performance wise... could that be a problem?
i have some hundreds of meshes on the scene
The shadow caster and the surface are rendered separately by the GPU even if they are just one mesh
The cost of shadow casting meshes is proportional to shadow casting lights affecting them
If baked, they only need to be rendered during the baking process
I see... So the problem with light points and the ground was that I have many lights as the map is a bit big
If I turn all the others off and let just the one I want on, it will bounce on the ground
this is the size of the map
I'll write a script to toggle them if I'm close enough... cant do much at editor time because these maps are parsed from a data file at runtime
Are those light ranges? They seem really excessive
yes, it's what the game files tells us to render... perhaps we have a different unit
(if that's a thing)
It doesn't make much sense for the light range to extend much beyond the room it's in
Or for any light range to be bigger than its effective intensity
The range is used specifically to limit lights from having to render too many shadow casters
If you disable them when they're out of screen then it shouldn't matter
I'll try doing that, yes
I've combined both lightmaps and point lights and it seems a bit better
however couldnt get rid of that light effect on the sprite even with the specular trick (which i might have done wrong)
The surfaces will still recieve lighting, just not reflections
I'm guessing Ragnarok uses some completely custom thing for sprite lighting
Probably calculating the distance to nearest light and using that data to light the whole sprite uniformly, if I had to guess
I can find their shaders if you think that would help
There's this one https://github.com/vthibault/roBrowser/blob/master/src/Renderer/SpriteRenderer.js#L26 and this one https://github.com/vthibault/roBrowser/blob/master/src/Renderer/SpriteRenderer.js#L26
It looks like it's unlit but still manages to apply shadow?