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

Another outline algorithm based on depth buffer #6492

Merged
merged 6 commits into from
Sep 3, 2024

Conversation

Noisyfox
Copy link
Collaborator

@Noisyfox Noisyfox commented Aug 18, 2024

image

Based on the algorithm by leoneruggiero: https://www.shadertoy.com/view/DslXz2

Still not perfect. might combine a normal based edge detection algorithm and try the Sobel kernel too.

And I'll add a preference option to disable this too. Now there is an option in the View menu to toggle this on & off. It's off by default for now, as it's still experimental.

@Noisyfox Noisyfox marked this pull request as draft August 18, 2024 11:34
@discip
Copy link
Contributor

discip commented Aug 18, 2024

I'm surprised you're still working on this. 😃

Unfortunately, under Linux (Manjaro) some artifacts occur when either the mouse or the object is moved.

artifacts

@Noisyfox
Copy link
Collaborator Author

Sigh... this doesn't work on macOS... Gonna use a different approach then.

@discip
Copy link
Contributor

discip commented Aug 19, 2024

That's unfortunate. 😔
It seemed very promising.

@discip
Copy link
Contributor

discip commented Aug 19, 2024

I'm not sure if this should solve the reported issue, but unfortunately, that behavior persists after 70495a3.

@kylek29
Copy link

kylek29 commented Aug 28, 2024

I like it, I know you're looking for a solution that works across all OS builds, but maybe add it as an experimental?

It's so hard to edit text in some scenarios because it vanishes into the surrounding model. Ideally, this would be a toggle in the View drop-down (or hotkey, etc.).

@Noisyfox
Copy link
Collaborator Author

I'm surprised you're still working on this. 😃

Unfortunately, under Linux (Manjaro) some artifacts occur when either the mouse or the object is moved.

artifacts artifacts

Are you using the Manjaro GNOME version?

@Noisyfox
Copy link
Collaborator Author

Noisyfox commented Aug 30, 2024

Currently Orca uses OpenGL 2.0 on macOS, which is quite outdated and lack of some new features, and I guess it has some thing to do with this outline not working too.

Apple does support OpenGL 4.1 on macOS, but with core profile only. Unfortunately Orca currently requires OpenGL 4.1 compatibility profile because it uses some fixed pipeline draw calls such as glPopAttrib and glLineWidth etc, which will have to be replaced by shaders. I plan to do this in a separate branch instead of squeezing everything into this PR.

As for now, I will add an option in preference (or the view menu) to turn this outline on & off (in case it causes any articats/performance issues) and get this merged first, then dealing with issues such as macOS compatibility and artifacts on some Linux distos.

@Noisyfox Noisyfox marked this pull request as ready for review August 30, 2024 15:21
@discip
Copy link
Contributor

discip commented Aug 31, 2024

Are you using the Manjaro GNOME version?

Sorry, I missed your question.
Yes, it's GNOME.

@Noisyfox
Copy link
Collaborator Author

Are you using the Manjaro GNOME version?

Sorry, I missed your question. Yes, it's GNOME.

I installed it in VMware but unfortunately I couldn't reproduce this issue. This might have something to do with the gpu driver I think.

@discip
Copy link
Contributor

discip commented Aug 31, 2024

Just in case this would be of any help.
Here is my setup:

System Details Report


Report details

  • Date generated: 2024-08-31 03:02:11

Hardware Information:

  • Hardware Model: ASUS ROG STRIX X670E-E GAMING WIFI
  • Memory: 32,0 GiB
  • Processor: AMD Ryzen™ 9 7950X3D × 32
  • Graphics: AMD Radeon™ RX 7900 XTX
  • Disk Capacity: 2,0 TB

Software Information:

  • Firmware Version: 2007
  • OS Name: Manjaro Linux
  • OS Build: rolling
  • OS Type: 64-bit
  • GNOME Version: 46
  • Windowing System: Wayland
  • Kernel Version: Linux 6.8.12-3-MANJARO

@Noisyfox
Copy link
Collaborator Author

Maybe some AMD driver issue? Idk...

@Noisyfox
Copy link
Collaborator Author

Noisyfox commented Aug 31, 2024

image
Good news. After using OpenGL 4.1 on macOS the outline works properly now.
Any masOS users that are interested in this could try the PR #6622

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.

LGTM
Thank you

@SoftFever SoftFever merged commit 5cc83b9 into SoftFever:main Sep 3, 2024
15 checks passed
@Noisyfox Noisyfox deleted the dev/outline-2 branch September 4, 2024 00:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants