KhronosGroup / OpenGL-API

OpenGL and OpenGL ES API Issue Tracker
34 stars 5 forks source link

Function signature description error #94

Open smile-zyk opened 4 months ago

smile-zyk commented 4 months ago

There is a function signature error on page 369 of https://registry.khronos.org/OpenGL/specs/gl/glspec46.core.pdf

void MultiDrawArraysIndirectCount( enum mode, const
void *indirect, intptr drawcount, intptr maxdrawcount,
sizei stride );

According to the description below: maxdrawcount specifies the maximum number of draws that are expected to be stored in the buffer, The variable maxdrawcount seems to have a sizei type. And i found the signature of this function in glad as

#define glMultiDrawArraysIndirectCount glad_glMultiDrawArraysIndirectCount
typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC)(GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);

I think the type of intptr is very confusing and hard to understand

NogginBops commented 4 months ago

Was this ever fixed? Only thing I can find is this, but this is a while ago and the spec still seems to have this issue? https://github.com/KhronosGroup/OpenGL-API/issues/17

smile-zyk commented 3 months ago

Was this ever fixed? Only thing I can find is this, but this is a while ago and the spec still seems to have this issue? #17

I noticed that there are many other function signatures in opengl that also use ptr as the type for size (e.g., size in glBufferData), so I thought maybe this is a convention to ensure that this variable is always byte aligned?

zmike commented 3 months ago

@oddhack WG has resolved that this is an error. Please make the following changes: