Comments (14)
I enabled debug_textures in lightmapper_rd. It seems to happen during the blendseams step.
This is the secondary light pass:
All other passes look completely fine to me.
from godot.
Also encountered it on beveled geometry, so it's not limited to concave shapes. Only sharp edges currently bake with no bugs. Updated the MRP to include this
from godot.
I wonder if it's something that can trigger due to the nature of the concave shape and the rays probably hitting inside of the cylinder rather than outside.
I don't think it's related to the shape, I'm fairly certain I've seen the same issue on one of my modular test scenes using planes in which it's also unaffected by denoiser settings:
from godot.
This is what lm_blendseams.glsl
draws in debug mode:
The sharp edge might mean that it's using a wrong uv offset when blending
This is the part of the shader that blends lines:
godot/modules/lightmapper_rd/lm_blendseams.glsl
Lines 44 to 70 in 78cce19
These are the stages that blend seams in lines mode using that shader:
godot/modules/lightmapper_rd/lightmapper_rd.cpp
Lines 1929 to 1939 in 78cce19
godot/modules/lightmapper_rd/lightmapper_rd.cpp
Lines 1951 to 1963 in 78cce19
from godot.
It would be nice to also hear what the blendseams step is trying to achieve
Without it you get... seams
BTW even when it's not doing the "same color for the entire stripe" artifact, it's still not doing a super great job at blending seams:
This is what it looks like when you don't blend with original color (if you swap this for Vector3(0, 0, 1.0)
):
godot/modules/lightmapper_rd/lightmapper_rd.cpp
Line 1918 in 78cce19
I also had some artifacts before where individual triangles of a mesh got outlined with stripes. So there's more than one problem to solve with seam blending
from godot.
BTW even when it's not doing the "same color for the entire stripe" artifact, it's still not doing a super great job at blending seams
It doesn't seem like the colour actually is the same for the whole stripe, that's an optical illusion due to the gradient :)
The main issue here is that the seam indexing is wrong, and some seams are back to front. Flipping the seam UV on the X axis fixes all the seams in those screenshots, but all the other seams that weren't previously broken become broken in the exact same way.
from godot.
As I said in the issue, how was the shape generated? Can you compare the result to when you do it from importing an OBJ?
from godot.
These are really strange artifacts:
It looks like it's happening after denoising and dilation. Changing denoising parameters doesn't affect the shape, but does make it smoother. The dilated pixels themselves look normal to me.
Using a higher texel scale, those bands remain at the same width of 3 pixels.
from godot.
As I said in the issue, how was the shape generated? Can you compare the result to when you do it from importing an OBJ?
I imported gltf. Both gltf and the blend file that it came from are in the MRP
Tried exporting as OBJ, same result
from godot.
Can you compare the result to when you do it from importing an OBJ?
I don't think this is a UV issue that's carrying over into the raytracer, unless I misunderstood the issue you referenced in the other post. It seems to happen after all that somehow. Otherwise the dilated pixels would carry over the same values as those stripes, and the denoiser would at the very least make the shape of those stripes significantly less sharp.
from godot.
I wonder if it's something that can trigger due to the nature of the concave shape and the rays probably hitting inside of the cylinder rather than outside. It's a bit odd it happens on the seams but it could explain why if it's being traced at the very edge of the seam. That's why I ask about the UV2, since it could be pushing it towards one of the edges perhaps since I only see one side of the seam being blurry. That hints that it's tracing from the right side on the pixel at one edge but not on the other edge.
from godot.
I enabled debug_textures in lightmapper_rd. It seems to happen during the blendseams step.
Interesting. I haven't really delved into the seams blend step yet so I can't give much info about that.
from godot.
Paging @reduz since he implemented the lightmapper (along with the blendseams step). Maybe he's got some ideas on what may be happening here. It would be nice to also hear what the blendseams step is trying to achieve.
To me the lightmaps seem to look fine after the secondary pass as is, so it might be worth exploring some bakes without the blendseams step. That said though, that may be a naive suggestion because I don't really understand blendseams.
from godot.
It doesn't seem like the colour actually is the same for the whole stripe
Yeah you're right I just double checked at 100% opacity, they aren't single color
from godot.
Related Issues (20)
- In AnimationTree and AnimationPlayer, rapid crossfading in Dominant mode can make inconsistent results.
- OpenBSD build is broken due to compilation errors HOT 2
- Editor Feature Profiles: Selection of CheckBox in Tree does not remember folding for Profile that is not set a Current
- Area 2d in child of instantiated scene behaves differently HOT 2
- get_path() in Resource returns a empty string when it is created on disk. HOT 2
- Linux build error "retrieve: program binary cache file is corrupted. Ignoring and removing." HOT 4
- Can not set back '_subresources' param in import setting to default. HOT 1
- There is still a transparency issue with setting ALPHA=1.0 in the shader script
- Geometry2D.merge_polygons will always return polygons with counter-clock-wise HOT 1
- Compatibility OmniLight turns everything green, only for XRCamera HOT 1
- Godot crashes when script window is made floating and the engine is minimized HOT 3
- Tileset custom data shows as index (not name) in select mode (4.3) HOT 2
- [3.x] `ViewportContainer` unexpectedly turns off physics interpolation HOT 1
- Editor interface doesn't recover after resuming Suspend - Windows 7
- Editor crashes doesn't recover after resuming Suspend - Windows 7 HOT 2
- Built-in scripts of child nodes in editor require editor restart to reload HOT 2
- Animation player not playing animation clips for first time HOT 1
- Godot Export generates build with no main scene selected (no warning or error)
- Remote Debug for web exports is sometimes wrong
- Custom features tags are not respected for custom project settings HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from godot.