Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Addons: Remove HBAOPass. #27307

Closed
wants to merge 1 commit into from
Closed

Addons: Remove HBAOPass. #27307

wants to merge 1 commit into from

Conversation

Mugen87
Copy link
Collaborator

@Mugen87 Mugen87 commented Dec 4, 2023

Related issue: -

Description

I have explained in #27295 (comment) and #27296 (comment) why we should not have merged HBAOPass in the first place. I think it's better to revert and redirect users to https://github.com/N8python/n8ao if they want N8AO.

I should also mentioned that the addition of HBAOPass produced confusion in the community and (unfortunately yet another) somewhat toxic discussion at the forum (https://discourse.threejs.org/t/new-ambient-occlusion-example-hbao-vs-n8ao/58847).

@Rabbid76
Copy link
Contributor

Rabbid76 commented Dec 5, 2023

@CodyJasonBennett I'm not sure if a ❤️ is very empathetic in this case.

@CodyJasonBennett
Copy link
Contributor

I'm not sure what you're saying, but this is what I wrote on the forum:

Thank you for this. I was hesitant to even mirror this in public forks like three-stdlib since I was worried about community response and licensing. I noticed that significant code was copied/pasted verbatim, although there were physical enhancements. Maybe we can direct the author to the sources they referenced who have collaborated before so not all is lost.

@mrdoob
Copy link
Owner

mrdoob commented Dec 5, 2023

Maybe another way to sort this out would by modifying the current code so it actually uses the HBAO algorithm.

@Rabbid76 did you get to implement to algorithm when you worked on it? Was it too slow?

@Rabbid76
Copy link
Contributor

Rabbid76 commented Dec 5, 2023

@Mugen87 I was not satisfied with my HBAO implementation, but I developed a GTAO algorithm based on it, GTAO builds on HABO and develops it further. In this sense, GTAO is a dedicated HBAO algorithm. My algorithm is based on https://github.com/Patapom/GodComplex/blob/master/Tests/TestHBIL/2018%20Mayaux%20-%20Horizon-Based%20Indirect%20Lighting%20(HBIL).pdf. The code could be adapted very easily.

@Mugen87
Copy link
Collaborator Author

Mugen87 commented Dec 5, 2023

How about renaming HBAOPass to AOPass and implement GTAO?

In the next step, I would suggest to remove SSAOPass and SAOPass so we only have AOPass with hopefully the best solution of all three.

@Rabbid76
Copy link
Contributor

Rabbid76 commented Dec 5, 2023

I could do that this evening (MET)

@Mugen87
Copy link
Collaborator Author

Mugen87 commented Dec 5, 2023

Awesome! I vote for this approach!

@mrdoob Are you okay with that route?

@Mugen87 Mugen87 closed this Dec 5, 2023
@mrdoob
Copy link
Owner

mrdoob commented Dec 5, 2023

How about renaming HBAOPass to AOPass and implement GTAO?

In the next step, I would suggest to remove SSAOPass and SAOPass so we only have AOPass with hopefully the best solution of all three.

I think it would be better to name it GTAOPass for now.

Once that's done, we can compare all the approaches and discuss which ones are redundant.

@Mugen87
Copy link
Collaborator Author

Mugen87 commented Dec 5, 2023

I'm fine with that!

GTAO is awesome. For everyone who is interested in the technique, another interesting paper is https://www.activision.com/cdn/research/Practical_Real_Time_Strategies_for_Accurate_Indirect_Occlusion_NEW%20VERSION_COLOR.pdf

@Rabbid76
Copy link
Contributor

Rabbid76 commented Dec 5, 2023

@Mugen87 Yes, it is and I'll add it as a reference in the comments

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
4 participants