Skip to content

Build with GDK - #526

Draft
emiyl wants to merge 33 commits into
ButterscotchRunner:mainfrom
emiyl:xbox
Draft

Build with GDK#526
emiyl wants to merge 33 commits into
ButterscotchRunner:mainfrom
emiyl:xbox

Conversation

@emiyl

@emiyl emiyl commented Sep 11, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

@unknownindividualpersonnel

unknownindividualpersonnel commented Sep 12, 2026

Copy link
Copy Markdown

god damn it i thought this was og xbox

@emiyl

emiyl commented Sep 12, 2026

Copy link
Copy Markdown
Collaborator Author

no opengl on original xbox (except a project that targets 1.x (we target minimum 2.0)), so that probably won't happen

@leap0x7b

leap0x7b commented Sep 12, 2026

Copy link
Copy Markdown

no opengl on original xbox (except a project that targets 1.x (we target minimum 2.0)), so that probably won't happen

the ps2 port doesn't use opengl and instead uses the gs gpu directly on the low-level, for the og xbox you can use nxdk and use the nvidia gpu directly on the low-level without using opengl, though since butterscotch basically supports every c compiler under the sun you might as well just use the official sdk and use directx instead

@leap0x7b

Copy link
Copy Markdown

ok there's this https://github.com/MrMilenko/OXDK which makes the original sdk work outside of windows and should be able to build projects built with the original sdk, we could use this for the ci

@Un1q32

Un1q32 commented Sep 12, 2026

Copy link
Copy Markdown
Collaborator

If it's an nvidia GPU I wonder if someone could just port the nouveau driver.

@emiyl emiyl changed the title Xbox port Build with GDK Sep 12, 2026
@leap0x7b

Copy link
Copy Markdown

If it's an nvidia GPU I wonder if someone could just port the nouveau driver.

nxdk directly uses the nvidia gpu on the low level, nouveau is a linux thing and is meant for operating systems, not homebrew apps, there's an opengl wrapper for the low level nxdk gpu api though

@Un1q32

Un1q32 commented Sep 12, 2026

Copy link
Copy Markdown
Collaborator

nouveau is a linux thing and is meant for operating systems, not homebrew apps

nouveau is what gets used for OpenGL on the switch, and I'm pretty sure the switch doesn't run Linux.

@leap0x7b

Copy link
Copy Markdown

nouveau is a linux thing and is meant for operating systems, not homebrew apps

nouveau is what gets used for OpenGL on the switch, and I'm pretty sure the switch doesn't run Linux.

i literally couldn't find anything about the switch using nouveau thing, just some french articles about the switch 2, i genuinely have no idea what are you even talking about

@leap0x7b

Copy link
Copy Markdown

ok nvm actually i just didn't look far enough https://github.com/devkitPro/pacman-packages/tree/master/switch/libdrm_nouveau

@leap0x7b

Copy link
Copy Markdown

though porting nouveau would still be unnecessary anyway since there are still plenty of opengl ports for nxdk in https://github.com/XboxDev/nxdk/wiki/Projects-using-nxdk, that or you can just use directx on the original sdk

@Un1q32

Un1q32 commented Sep 12, 2026

Copy link
Copy Markdown
Collaborator

nouveau would have the GL_ARB_framebuffer_object or GL_EXT_framebuffer_object extension, which is required to run the legacy-gl renderer. None of the OpenGL implementations on the page you linked seem to have it.

@Un1q32

Un1q32 commented Sep 12, 2026

Copy link
Copy Markdown
Collaborator

Also, nouveau is still maintained and likely much more stable than random 10 star github projects.

@cobaltgit

Copy link
Copy Markdown
Collaborator

Only other alternative is rewriting legacy-gl to do the surface stuff in software which will destroy performance

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.

5 participants