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

xs_buffer API changed? #55

Closed
dk opened this issue Mar 28, 2017 · 3 comments
Closed

xs_buffer API changed? #55

dk opened this issue Mar 28, 2017 · 3 comments

Comments

@dk
Copy link
Contributor

dk commented Mar 28, 2017

Hello,

I'm still trying to make the shadertoy working, but it seems that there are not a lot of coherent effort going on. There's that bug which I'm not sure how to fix correctly:

Argument "\0\0\0\0\0\0\0\0" isn't numeric in subroutine entry at lib/OpenGL/Shader/OpenGL4.pm at line 154.

The line is

glGetShaderiv_c( ... , xs_buffer( $ok, 8))

But I'm confused - is it that xs_buffer supposed to return an PTR2IV(SvPV($ok)) here, or glGetShaderiv_c() should extract it from $ok, or it is the missing glGetShaderiv_p that needs to be used instead?

That looks like a trivial bug, but it would be nice if we could somehow make an effort to bring the two projects to a status that is not a nightmare to install.

Dmitry

@wchristian
Copy link
Collaborator

I don't have it all in memory right now, but xs_buffer underwent some changes because its original form does not work in all Perl versions: #16

@devel-chm
Copy link
Collaborator

The latest incarnation of xs_buffer and such documentation as we have would be in the pod and source for the OpenGL::Modern::Helpers. Also in OpenGL::Modern::Helpers are some implementations of some routines "_p" variants compliments of Mithaldu.

Work is underway to implement native XS routines for the various OpenGL API functions but you should be able to use the current OpenGL::Modern to get the job done but things will continue to evolve so I can't promise that things won't still need to be fixed until the real XS bindings are done.

At the moment, I've documented the interfaces for what I've called the "priority" routines which are basically the set of routines used by Mithaldu, Corian, PDL, and a couple of others. I'm starting to do some rough implementations for XS from that and extracting the patterns needed for automated code generation from those first implementations.

Once a first version is done, then I would like to implement automatic code generation from the function signatures extracted from the GLEW headers.

@mohawk2
Copy link
Contributor

mohawk2 commented Sep 16, 2024

Since the shadertoy works beautifully, I believe this issue can be closed, so I am doing so.

@mohawk2 mohawk2 closed this as completed Sep 16, 2024
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

No branches or pull requests

4 participants