Having trouble porting basic GLFW C++ example to D

Joakim dlang at joakim.fea.st
Sat Oct 7 03:47:27 UTC 2017


On Saturday, 7 October 2017 at 03:12:09 UTC, Matt Jones wrote:
> I've been trying to port a basic GLFW C++ example to D. The C++ 
> version shows the textures correctly. But the D version shows 
> nothing. The code is almost identical.

Heh, that's the problem.

> Does anyone know why the D version does not work?
>
> https://github.com/workhorsy/d_glfw

I ran into this myself, took me awhile to track it down.  I too 
took the size of dynamic arrays this way:

https://github.com/workhorsy/d_glfw/blob/master/dlang/source/main.d#L158
https://github.com/workhorsy/d_glfw/blob/master/dlang/source/main.d#L161

That will give you 2 words for a slice or dynamic array, the 
length and pointer.  What you want is the length of the array

https://github.com/joakim-noah/android/blob/master/samples/Teapot/jni/TeapotRenderer.d#L192

multiplied by the size of the element

https://github.com/joakim-noah/android/blob/master/samples/Teapot/jni/TeapotRenderer.d#L195

Sizeof works for static arrays, but is different for slices: 
that's likely your problem.


More information about the Digitalmars-d-learn mailing list