this is (probably) not that important as it would have been 5 years ago since gmrt is on the horizon and likely to shake all of this up anyway, but i did some little experiments with putting a bunch of Vector3 stuff in a dll and the results are surprising enough that i feel like there might be something wrong with the tests
the c++ isn't all that interesting
struct Vector3 {
float x, y, z;
};
dllex double v3_add(const Vector3* a, const Vector3* b, Vector3* out) {
out->x = a->x + b->x;
out->y = a->y + b->y;
out->z = a->z + b->z;
return 1.0;
}```
so the difference has to be overhead of calling the function for some reason, right?