Skip to content

Texture.width and Texture.height have wrong values #1

Open

Description

@jackolantern

A minimal example using "scarfy.png" from the raylib examples which has the dimensions 768 x 128 :

texture = rl.load_texture("resources/scarfy.png")
print("Texture:", texture.id, texture.width, texture.height, texture.mipmaps, texture.format)

gives the output

Texture: 3298534883331 4294967424 139994459013127 140731655587712 140731655587952

The lower 32 bits of the width, height and mipmaps values are correct, it is the upper 32 bits that gives rise to these bizarre values (format and id may be correct as well, I am not sure).

On my system compiling raylib using the defaults results in the size of an int and a long being different. I noticed that the generated bindings have the line Int = c_long but changing the definition to be c_int gives the output:

Texture: 3298534883331 128 1 7 32766

Any idea how to address this?

Activity

  1. overdev commented on Aug 8, 2023

    @overdev
    Owner

    Hi, @jackolantern. Sorry for the delay.

    That is quite strange. I'll have to confirm, but maybe the problem is because I didn't added any checks in the code to address this possibility.

    I fail to see exactly if and why having raylib built on your machine could cause this, but can you confirm whether the same thing happens when you use the binaries provided by raysan5? In case you discover the root cause to be on the binaries side of the binding, I probably already showed you the best of my knowledge (because I suck at C/C++, unfortunately).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions