sebcrozet/kiss3d

Support u32 face index

virtualritz opened this issue · 8 comments

Mesh::faces is currently Vec<Point3<u16>>.

It would be great to make this u32 to allow meshes with >64k points.
Either always or as a variant, as e.g. in bevy's IndexFormat.

I'd be willing to attempt to implement this and submit a PR if it would be accepted.

Hi! The problem with meshes with u32 indices is that they are not compatible with WebGL 1.0. So we can't only allow u32. Using a variant would be an accepted solution, yes.

Is that really a problem? I mean do you know what % of your crate's users rely on WebGl 1.0 compatibility?

Is that really a problem? I mean do you know what % of your crate's users rely on WebGl 1.0 compatibility?

I don't know the percentage but I am one of these users. WebGl 2.0 isn't well supported on Safari without enabling some experimental features: https://caniuse.com/webgl2

Any update on this?

WebGL 2 is now supported in Safari, it seems.

Bump this, I cannot load certain large meshes due to this. Any updates/workarounds?

It's been 11 months now that Safari 15 with WebGl 2 support was released. Looking at caniuse.com it seems only fringe browsers do not support this version.