فهرست منبع

Set `VertexAttribPointer` related calls to use `uintptr` instead of `rawptr` for the byte offset parameter

gingerBill 3 سال پیش
والد
کامیت
fc33cf6846
2فایلهای تغییر یافته به همراه12 افزوده شده و 12 حذف شده
  1. 4 4
      vendor/OpenGL/impl.odin
  2. 8 8
      vendor/OpenGL/wrappers.odin

+ 4 - 4
vendor/OpenGL/impl.odin

@@ -336,7 +336,7 @@ impl_GetUniformiv:             proc "c" (program: u32, location: i32, params: [^
 impl_GetVertexAttribdv:        proc "c" (index: u32, pname: u32, params: [^]f64)
 impl_GetVertexAttribfv:        proc "c" (index: u32, pname: u32, params: [^]f32)
 impl_GetVertexAttribiv:        proc "c" (index: u32, pname: u32, params: [^]i32)
-impl_GetVertexAttribPointerv:  proc "c" (index: u32, pname: u32, pointer: ^rawptr)
+impl_GetVertexAttribPointerv:  proc "c" (index: u32, pname: u32, pointer: ^uintptr)
 impl_IsProgram:                proc "c" (program: u32) -> bool
 impl_IsShader:                 proc "c" (shader: u32) -> bool
 impl_LinkProgram:              proc "c" (program: u32)
@@ -398,7 +398,7 @@ impl_VertexAttrib4sv:          proc "c" (index: u32, v: ^[4]i16)
 impl_VertexAttrib4ubv:         proc "c" (index: u32, v: ^[4]u8)
 impl_VertexAttrib4uiv:         proc "c" (index: u32, v: ^[4]u32)
 impl_VertexAttrib4usv:         proc "c" (index: u32, v: ^[4]u16)
-impl_VertexAttribPointer:      proc "c" (index: u32, size: i32, type: u32, normalized: bool, stride: i32, pointer: rawptr)
+impl_VertexAttribPointer:      proc "c" (index: u32, size: i32, type: u32, normalized: bool, stride: i32, pointer: uintptr)
 
 load_2_0 :: proc(set_proc_address: Set_Proc_Address_Type) {
 	set_proc_address(&impl_BlendEquationSeparate,    "glBlendEquationSeparate")
@@ -531,7 +531,7 @@ impl_GetTransformFeedbackVarying:         proc "c" (program: u32, index: u32, bu
 impl_ClampColor:                          proc "c" (target: u32, clamp: u32)
 impl_BeginConditionalRender:              proc "c" (id: u32, mode: u32)
 impl_EndConditionalRender:                proc "c" ()
-impl_VertexAttribIPointer:                proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: rawptr)
+impl_VertexAttribIPointer:                proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: uintptr)
 impl_GetVertexAttribIiv:                  proc "c" (index: u32, pname: u32, params: [^]i32)
 impl_GetVertexAttribIuiv:                 proc "c" (index: u32, pname: u32, params: [^]u32)
 impl_VertexAttribI1i:                     proc "c" (index: u32, x: i32)
@@ -1075,7 +1075,7 @@ impl_VertexAttribL1dv:          proc "c" (index: u32, v: ^f64)
 impl_VertexAttribL2dv:          proc "c" (index: u32, v: ^[2]f64)
 impl_VertexAttribL3dv:          proc "c" (index: u32, v: ^[3]f64)
 impl_VertexAttribL4dv:          proc "c" (index: u32, v: ^[4]f64)
-impl_VertexAttribLPointer:      proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: rawptr)
+impl_VertexAttribLPointer:      proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: uintptr)
 impl_GetVertexAttribLdv:        proc "c" (index: u32, pname: u32, params: [^]f64)
 impl_ViewportArrayv:            proc "c" (first: u32, count: i32, v: [^]f32)
 impl_ViewportIndexedf:          proc "c" (index: u32, x: f32, y: f32, w: f32, h: f32)

+ 8 - 8
vendor/OpenGL/wrappers.odin

@@ -146,7 +146,7 @@ when !ODIN_DEBUG {
 	GetVertexAttribdv        :: #force_inline proc "c" (index: u32, pname: u32, params: [^]f64)                                                     {        impl_GetVertexAttribdv(index, pname, params)                                          }
 	GetVertexAttribfv        :: #force_inline proc "c" (index: u32, pname: u32, params: [^]f32)                                                     {        impl_GetVertexAttribfv(index, pname, params)                                          }
 	GetVertexAttribiv        :: #force_inline proc "c" (index: u32, pname: u32, params: [^]i32)                                                     {        impl_GetVertexAttribiv(index, pname, params)                                          }
-	GetVertexAttribPointerv  :: #force_inline proc "c" (index: u32, pname: u32, pointer: ^rawptr)                                                   {        impl_GetVertexAttribPointerv(index, pname, pointer)                                   }
+	GetVertexAttribPointerv  :: #force_inline proc "c" (index: u32, pname: u32, pointer: ^uintptr)                                                   {        impl_GetVertexAttribPointerv(index, pname, pointer)                                   }
 	IsProgram                :: #force_inline proc "c" (program: u32) -> bool                                                                       { ret := impl_IsProgram(program);                                                   return ret }
 	IsShader                 :: #force_inline proc "c" (shader: u32) -> bool                                                                        { ret := impl_IsShader(shader);                                                     return ret }
 	LinkProgram              :: #force_inline proc "c" (program: u32)                                                                               {        impl_LinkProgram(program)                                                             }
@@ -208,7 +208,7 @@ when !ODIN_DEBUG {
 	VertexAttrib4ubv         :: #force_inline proc "c" (index: u32, v: ^[4]u8)                                                                       {        impl_VertexAttrib4ubv(index, v)                                                       }
 	VertexAttrib4uiv         :: #force_inline proc "c" (index: u32, v: ^[4]u32)                                                                      {        impl_VertexAttrib4uiv(index, v)                                                       }
 	VertexAttrib4usv         :: #force_inline proc "c" (index: u32, v: ^[4]u16)                                                                      {        impl_VertexAttrib4usv(index, v)                                                       }
-	VertexAttribPointer      :: #force_inline proc "c" (index: u32, size: i32, type: u32, normalized: bool, stride: i32, pointer: rawptr)           {        impl_VertexAttribPointer(index, size, type, normalized, stride, pointer)             }
+	VertexAttribPointer      :: #force_inline proc "c" (index: u32, size: i32, type: u32, normalized: bool, stride: i32, pointer: uintptr)           {        impl_VertexAttribPointer(index, size, type, normalized, stride, pointer)             }
 
 	// VERSION_2_1
 	UniformMatrix2x3fv :: #force_inline proc "c" (location: i32, count: i32, transpose: bool, value: [^]f32) { impl_UniformMatrix2x3fv(location, count, transpose, value) }
@@ -235,7 +235,7 @@ when !ODIN_DEBUG {
 	ClampColor                          :: #force_inline proc "c" (target: u32, clamp: u32)                                                                                                {        impl_ClampColor(target, clamp)                                                                         }
 	BeginConditionalRender              :: #force_inline proc "c" (id: u32, mode: u32)                                                                                                     {        impl_BeginConditionalRender(id, mode)                                                                  }
 	EndConditionalRender                :: #force_inline proc "c" ()                                                                                                                       {        impl_EndConditionalRender()                                                                            }
-	VertexAttribIPointer                :: #force_inline proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: rawptr)                                                         {        impl_VertexAttribIPointer(index, size, type, stride, pointer)                                         }
+	VertexAttribIPointer                :: #force_inline proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: uintptr)                                                         {        impl_VertexAttribIPointer(index, size, type, stride, pointer)                                         }
 	GetVertexAttribIiv                  :: #force_inline proc "c" (index: u32, pname: u32, params: [^]i32)                                                                                 {        impl_GetVertexAttribIiv(index, pname, params)                                                          }
 	GetVertexAttribIuiv                 :: #force_inline proc "c" (index: u32, pname: u32, params: [^]u32)                                                                                 {        impl_GetVertexAttribIuiv(index, pname, params)                                                         }
 	VertexAttribI1i                     :: #force_inline proc "c" (index: u32, x: i32)                                                                                                     {        impl_VertexAttribI1i(index, x)                                                                         }
@@ -525,7 +525,7 @@ when !ODIN_DEBUG {
 	VertexAttribL2dv          :: #force_inline proc "c" (index: u32, v: ^[2]f64)                                                       {        impl_VertexAttribL2dv(index, v)                                                          }
 	VertexAttribL3dv          :: #force_inline proc "c" (index: u32, v: ^[3]f64)                                                       {        impl_VertexAttribL3dv(index, v)                                                          }
 	VertexAttribL4dv          :: #force_inline proc "c" (index: u32, v: ^[4]f64)                                                       {        impl_VertexAttribL4dv(index, v)                                                          }
-	VertexAttribLPointer      :: #force_inline proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: rawptr)               {        impl_VertexAttribLPointer(index, size, type, stride, pointer)                           }
+	VertexAttribLPointer      :: #force_inline proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: uintptr)               {        impl_VertexAttribLPointer(index, size, type, stride, pointer)                           }
 	GetVertexAttribLdv        :: #force_inline proc "c" (index: u32, pname: u32, params: [^]f64)                                       {        impl_GetVertexAttribLdv(index, pname, params)                                            }
 	ViewportArrayv            :: #force_inline proc "c" (first: u32, count: i32, v: [^]f32)                                            {        impl_ViewportArrayv(first, count, v)                                                     }
 	ViewportIndexedf          :: #force_inline proc "c" (index: u32, x: f32, y: f32, w: f32, h: f32)                                   {        impl_ViewportIndexedf(index, x, y, w, h)                                                 }
@@ -947,7 +947,7 @@ when !ODIN_DEBUG {
 	GetVertexAttribdv        :: #force_inline proc "c" (index: u32, pname: u32, params: [^]f64, loc := #caller_location)                                                    {        impl_GetVertexAttribdv(index, pname, params);                              debug_helper(loc, 0, index, pname, params)                                           }
 	GetVertexAttribfv        :: #force_inline proc "c" (index: u32, pname: u32, params: [^]f32, loc := #caller_location)                                                    {        impl_GetVertexAttribfv(index, pname, params);                              debug_helper(loc, 0, index, pname, params)                                           }
 	GetVertexAttribiv        :: #force_inline proc "c" (index: u32, pname: u32, params: [^]i32, loc := #caller_location)                                                    {        impl_GetVertexAttribiv(index, pname, params);                              debug_helper(loc, 0, index, pname, params)                                           }
-	GetVertexAttribPointerv  :: #force_inline proc "c" (index: u32, pname: u32, pointer: ^rawptr, loc := #caller_location)                                                  {        impl_GetVertexAttribPointerv(index, pname, pointer);                       debug_helper(loc, 0, index, pname, pointer)                                          }
+	GetVertexAttribPointerv  :: #force_inline proc "c" (index: u32, pname: u32, pointer: ^uintptr, loc := #caller_location)                                                  {        impl_GetVertexAttribPointerv(index, pname, pointer);                       debug_helper(loc, 0, index, pname, pointer)                                          }
 	IsProgram                :: #force_inline proc "c" (program: u32, loc := #caller_location) -> bool                                                                      { ret := impl_IsProgram(program);                                                   debug_helper(loc, 1, ret, program);                                       return ret }
 	IsShader                 :: #force_inline proc "c" (shader: u32, loc := #caller_location) -> bool                                                                       { ret := impl_IsShader(shader);                                                     debug_helper(loc, 1, ret, shader);                                        return ret }
 	LinkProgram              :: #force_inline proc "c" (program: u32, loc := #caller_location)                                                                              {        impl_LinkProgram(program);                                                 debug_helper(loc, 0, program)                                                        }
@@ -1009,7 +1009,7 @@ when !ODIN_DEBUG {
 	VertexAttrib4ubv         :: #force_inline proc "c" (index: u32, v: ^[4]u8, loc := #caller_location)                                                                        {        impl_VertexAttrib4ubv(index, v);                                           debug_helper(loc, 0, index, v)                                                       }
 	VertexAttrib4uiv         :: #force_inline proc "c" (index: u32, v: ^[4]u32, loc := #caller_location)                                                                       {        impl_VertexAttrib4uiv(index, v);                                           debug_helper(loc, 0, index, v)                                                       }
 	VertexAttrib4usv         :: #force_inline proc "c" (index: u32, v: ^[4]u16, loc := #caller_location)                                                                       {        impl_VertexAttrib4usv(index, v);                                           debug_helper(loc, 0, index, v)                                                       }
-	VertexAttribPointer      :: #force_inline proc "c" (index: u32, size: i32, type: u32, normalized: bool, stride: i32, pointer: rawptr, loc := #caller_location)          {        impl_VertexAttribPointer(index, size, type, normalized, stride, pointer); debug_helper(loc, 0, index, size, type, normalized, stride, pointer)                }
+	VertexAttribPointer      :: #force_inline proc "c" (index: u32, size: i32, type: u32, normalized: bool, stride: i32, pointer: uintptr, loc := #caller_location)          {        impl_VertexAttribPointer(index, size, type, normalized, stride, pointer); debug_helper(loc, 0, index, size, type, normalized, stride, pointer)                }
 
 	// VERSION_2_1
 	UniformMatrix2x3fv :: #force_inline proc "c" (location: i32, count: i32, transpose: bool, value: [^]f32, loc := #caller_location) { impl_UniformMatrix2x3fv(location, count, transpose, value); debug_helper(loc, 0, location, count, transpose, value) }
@@ -1035,7 +1035,7 @@ when !ODIN_DEBUG {
 	ClampColor                          :: #force_inline proc "c" (target: u32, clamp: u32, loc := #caller_location)                                                                                                {        impl_ClampColor(target, clamp);                                                             debug_helper(loc, 0, target, clamp)                                                                    }
 	BeginConditionalRender              :: #force_inline proc "c" (id: u32, mode: u32, loc := #caller_location)                                                                                                     {        impl_BeginConditionalRender(id, mode);                                                      debug_helper(loc, 0, id, mode)                                                                         }
 	EndConditionalRender                :: #force_inline proc "c" (loc := #caller_location)                                                                                                                         {        impl_EndConditionalRender();                                                                debug_helper(loc, 0)                                                                                   }
-	VertexAttribIPointer                :: #force_inline proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: rawptr, loc := #caller_location)                                                         {        impl_VertexAttribIPointer(index, size, type, stride, pointer);                             debug_helper(loc, 0, index, size, type, stride, pointer)                                              }
+	VertexAttribIPointer                :: #force_inline proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: uintptr, loc := #caller_location)                                                         {        impl_VertexAttribIPointer(index, size, type, stride, pointer);                             debug_helper(loc, 0, index, size, type, stride, pointer)                                              }
 	GetVertexAttribIiv                  :: #force_inline proc "c" (index: u32, pname: u32, params: [^]i32, loc := #caller_location)                                                                                 {        impl_GetVertexAttribIiv(index, pname, params);                                              debug_helper(loc, 0, index, pname, params)                                                             }
 	GetVertexAttribIuiv                 :: #force_inline proc "c" (index: u32, pname: u32, params: [^]u32, loc := #caller_location)                                                                                 {        impl_GetVertexAttribIuiv(index, pname, params);                                             debug_helper(loc, 0, index, pname, params)                                                             }
 	VertexAttribI1i                     :: #force_inline proc "c" (index: u32, x: i32, loc := #caller_location)                                                                                                     {        impl_VertexAttribI1i(index, x);                                                             debug_helper(loc, 0, index, x)                                                                         }
@@ -1325,7 +1325,7 @@ when !ODIN_DEBUG {
 	VertexAttribL2dv          :: #force_inline proc "c" (index: u32, v: ^[2]f64, loc := #caller_location)                                                          {        impl_VertexAttribL2dv(index, v);                                              debug_helper(loc, 0, index, v)                                                   }
 	VertexAttribL3dv          :: #force_inline proc "c" (index: u32, v: ^[3]f64, loc := #caller_location)                                                          {        impl_VertexAttribL3dv(index, v);                                              debug_helper(loc, 0, index, v)                                                   }
 	VertexAttribL4dv          :: #force_inline proc "c" (index: u32, v: ^[4]f64, loc := #caller_location)                                                          {        impl_VertexAttribL4dv(index, v);                                              debug_helper(loc, 0, index, v)                                                   }
-	VertexAttribLPointer      :: #force_inline proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: rawptr, loc := #caller_location)               {        impl_VertexAttribLPointer(index, size, type, stride, pointer);               debug_helper(loc, 0, index, size, type, stride, pointer)                        }
+	VertexAttribLPointer      :: #force_inline proc "c" (index: u32, size: i32, type: u32, stride: i32, pointer: uintptr, loc := #caller_location)               {        impl_VertexAttribLPointer(index, size, type, stride, pointer);               debug_helper(loc, 0, index, size, type, stride, pointer)                        }
 	GetVertexAttribLdv        :: #force_inline proc "c" (index: u32, pname: u32, params: [^]f64, loc := #caller_location)                                       {        impl_GetVertexAttribLdv(index, pname, params);                                debug_helper(loc, 0, index, pname, params)                                       }
 	ViewportArrayv            :: #force_inline proc "c" (first: u32, count: i32, v: [^]f32, loc := #caller_location)                                            {        impl_ViewportArrayv(first, count, v);                                         debug_helper(loc, 0, first, count, v)                                            }
 	ViewportIndexedf          :: #force_inline proc "c" (index: u32, x: f32, y: f32, w: f32, h: f32, loc := #caller_location)                                   {        impl_ViewportIndexedf(index, x, y, w, h);                                     debug_helper(loc, 0, index, x, y, w, h)                                          }