Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

File API uses 32 bit integers #33962

Closed
nathanfranke opened this issue Nov 28, 2019 · 5 comments
Closed

File API uses 32 bit integers #33962

nathanfranke opened this issue Nov 28, 2019 · 5 comments

Comments

@nathanfranke
Copy link
Contributor

nathanfranke commented Nov 28, 2019

Godot version:
3.2 Beta 2

OS/device including version:

Issue description:
Godot.File methods such as get_len() and get_buffer(int) return/take 32 bit signed integers, meaning over ~2GB files cannot be read

Steps to reproduce:

Minimal reproduction project:

Related to #288

@bruvzg
Copy link
Member

bruvzg commented Nov 28, 2019

There's PR to address this #27247

@girng
Copy link

girng commented Nov 28, 2019

What kind of game asset is over 2GB?

@akien-mga
Copy link
Member

akien-mga commented Nov 28, 2019

What kind of game asset is over 2GB?

That's not really relevant to the issue, but anyway:

$ du -sh projects/tps-demo/level/geometry/demolevel.dae
322M   projects/tps-demo/level/geometry/demolevel.dae

That's just for the very small TPS demo level. Not 2GB, but not that far from this order of magnitude.

And more importantly, .pck packages can definitely be over 2GB: #27168.

@akien-mga akien-mga added this to the 4.0 milestone Nov 28, 2019
@slapin
Copy link
Contributor

slapin commented Nov 28, 2019

Well, for your tetris you don't need this, I'm sure. But "not all games need this" banner is a bit rugged now, don't you think?

In general why set limits when you don't have to?
Also limits like this hit in unusual cases, when, for example you use Godot as a tool to prepare your game assets (you have a city in blend file, you export it and then generate all lods/annotation/paths, split it into chunks for loading in Godot as part of import process. This way you don't need to patch engine too much to implement tooling required to do your job. If you need to patch engine for everything, then what remains?

But I wonder that even this small limitaton relaxation has its resistance, imagine how hard it s to "sell" new features to people who don't want anything.

@akien-mga
Copy link
Member

Closing as superseded by godotengine/godot-proposals#400 to keep everything in one place.

# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

No branches or pull requests

8 participants