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

Revised Inner Outer Inner mode for Classic mode #4417

Merged

Conversation

igiannakas
Copy link
Contributor

@igiannakas igiannakas commented Mar 11, 2024

Ported the Arachne enhancements to inner-outer-inner wall ordering mode to Classic. It should behave better when multiple external perimeters are present in the same island and gracefully fall back to outer first to preserve wall consistency when inner-outer-inner wall ordering cannot be respected.

This brings feature parity between Arachne and Classic wall ordering for inner outer inner.

@igiannakas
Copy link
Contributor Author

igiannakas commented Mar 11, 2024

Test done, benchy looks good!
IMG_3234

@SoftFever SoftFever added the enhancement New feature or request label Mar 13, 2024
@Eldenroot
Copy link
Contributor

Nice! thx!

@SoftFever
Copy link
Owner

@igiannakas
Do you have screenshot to demonstrate the improvement for the scenario you mentioned?

@igiannakas
Copy link
Contributor Author

Yeap:
Before:
Middle perimeter drawn before outer
image

After:
Outer perimeter drawn correctly before neighbouring inner perimeter
image

Before:
Middle perimeter drawn before outer
image

After:
Outer perimeter drawn correctly before neighbouring inner perimeter
image

@igiannakas
Copy link
Contributor Author

The above is the same issue that Arachne used to have before the revisions in the inner/outer/inner ordering mode -> basically middle perimeters are on occasion drawn before the outer perimeter when there are multiple external perimeters on the same island.

The revision enforces middle perimeters to be drawn after the external and if that is not possible it falls back to drawing the external perimeter first to minimise surface artefacts caused by the middle perimeter pushing out on the external ones if drawn first.

Basically porting the below to classic mode and the fixes that came from those:
#2276
#1861
#1352

@SoftFever
Copy link
Owner

Yeap: Before: Middle perimeter drawn before outer image

After: Outer perimeter drawn correctly before neighbouring inner perimeter image

Before: Middle perimeter drawn before outer image

After: Outer perimeter drawn correctly before neighbouring inner perimeter image

Awesome!
Thank you very much

Copy link
Owner

@SoftFever SoftFever left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.
Thank you

@SoftFever SoftFever merged commit b736a0b into SoftFever:main Mar 18, 2024
12 checks passed
@igiannakas igiannakas deleted the Revised-Inner-Outer-Inner-mode-for-Classic branch March 18, 2024 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants