Comments (6)
this is not what you ask but maybe interesting
https://glm.g-truc.net/0.9.1/api/a00248.html
I googled "hlsl alike math library" and first result:
https://github.com/redorav/hlslpp
from nabla.
that lots of optimisations already done and tested
That's a rather bold assumption ;)
from nabla.
That's a rather bold assumption ;)
you no need to be rude. just decline and that it. Sorry if my suggestion was inappropriate.
I genuinely curious how current solution in Nabla better in terms of testing and optimisation compared to glm. Maybe I can learn something or we both. I have experience myself writing optimised vector and matrix operations with SSE and NEON, but then found that glm has pretty similar results.
Anyway, I don't expect you answering on this. that was out of curiosity and some willingness to help/share idk..
from nabla.
you no need to be rude.
That's not me being rude ;)
I genuinely curious how current solution in Nabla better in terms of testing and optimisation compared to glm.
Its not, replacing the vector math API is a TODO for the future.
I have experience myself writing optimised vector and matrix operations with SSE and NEON, but then found that glm has pretty similar results.
AFAIK, glm only has SSE optimizations for vec4
and mat4
and no NEON.
Whatever additional SSE and NEON is produced, is only produced by "autovectorization".
Basically the SIMD is an afterthought not a requirement from the start.
Furthermore, we find that whatever library we start using as a CORE (needed, not optional) dependency for the core
or asset
namespace we end up having to fork and maintain because its missing stuff or simply to fix bugs (except for the libraries we use for the asset loaders).
A recent example I can give is SDL2 which we've wanted to use to initialize our OpenGL contexts and load function pointers, unfortunately thanks to such beauties like this
static SDL_VideoDevice *_this = NULL;
we wont be using SDL2 for any required video
functionality.
GLM is not something I want to fork and maintain.
from nabla.
@3d4m-vladimir we'll be moving to HLSL2021 in the near future.
Do you have any suggestions for a GLM-like library but which has an identical syntax/type names to HLSL ?
from nabla.
HLSL2021 does the job.
from nabla.
Related Issues (20)
- Asset ImageFilters do use extents in texel dimensions incorrectly HOT 3
- Small Vector Optimization for `dynamic_array`
- `CPipelineBarrierCmd` and `CWaitEventsCmd` need the definitions of `S{Buffer/Image}MemoryBarrier` HOT 2
- Material Compiler V2 HOT 7
- Bug encountered when loading a TGA file HOT 1
- Fix Threadsafeness of Refcounting on Descriptor Pools and Sets HOT 1
- Make sure Shared Library Load order is respected on Linux/POSIX
- IEventCallback API methods HOT 1
- Replace `core::SRange` with `std::span` and other templated usages with `std::view` concept template HOT 1
- Update Readme.md build instructions unclear
- ImGUI Improvements HOT 1
- Support ASTC HDR texture formats
- Implement Descriptor Set Update Templates HOT 1
- Implement + require `VK_KHR_surface_maintenance1` and `VK_KHR_swapchain_maintenance1`
- Require `ray_tracing_maintenance1`
- Implement `VK_EXT_opacity_micromap`
- Implement `VK_EXT_shader_tile_image` when it gets released and supported on desktop GPUs
- Leverage guarantees of `KHR_maintenance4`
- Major refactor of ICPUBuffer needed
- The Nabla repository is a little too large to casually include in projects (due to unused git objects) HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nabla.