Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Int64 functions? #639

Closed
ghost opened this issue Jun 14, 2017 · 3 comments
Closed

Int64 functions? #639

ghost opened this issue Jun 14, 2017 · 3 comments
Assignees
Milestone

Comments

@ghost
Copy link

ghost commented Jun 14, 2017

Here is new ARB int64 functions.
https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_gpu_shader_int64.txt

Also AMD have:
https://khronos.org/registry/OpenGL/extensions/AMD/AMD_gpu_shader_int16.txt
https://khronos.org/registry/OpenGL/extensions/AMD/AMD_gpu_shader_half_float.txt

I want to propose to add packing functions, and operations for int64 vectors and numbers.

@Groovounet Groovounet self-assigned this Jun 14, 2017
@Groovounet Groovounet added this to the GLM 0.9.9 milestone Jun 14, 2017
@Groovounet
Copy link
Member

Sounds like a great idea!

Add:
| Returns an unsigned 32- or 64-bit integer obtained |
| int packInt2x16 (i16vec2 v) | by packing the components of a two- or |
| int64_t packInt4x16 (i16vec4 v) | four-component 16-bit signed or unsigned integer |
| uint packUint2x16(u16vec2 v) | vector, respectively. The first vector component |
| uint64_t packUint4x16(u16vec4 v) | specifies the 16 least significant bits; the |
| | last component specifies the 16 most significant |
| | bits. |
+-----------------------------------+------------------------------------------------------+
| | Returns a signed or unsigned integer vector built |
| i16vec2 unpackInt2x16 (int v)| from a 32- or 64-bit signed or unsigned integer |
| i16vec4 unpackInt4x16 (int64_t v)| scalar, respectively. The first component of the |
| u16vec2 unpackUint2x16(uint v)| vector contains the 16 least significant bits of the |
| u16vec4 unpackUint4x16(uint64_t v)| input; the last component specifies the 16 most |
| | significant bits. |

@Groovounet
Copy link
Member

This issue is fixed in master branch for GLM 0.9.9 release.

I added also packing function for all primitive integer types.

Thanks,
Christophe

@ghost
Copy link
Author

ghost commented Jun 24, 2017

Have in CUDA support?

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

No branches or pull requests

1 participant