how do you even accidentally create a shader on anyther thread
how do you even accidentally create a shader on anyther thread
var rotator = Quaternion<float>.CreateFromAxisAngle(Vector3D<float>.UnitY, MathUtils.Radians(0.01f * 360.0f));
var position = new Vector3D<float>(100.0f, 0.0f, 0.0f);
var nextPosition = Vector3D.Transform<float>(position, rotator);vk.GetInstanceProcAddr only returns PfnVoidFunction which doesn't contain what i need... is there a built-in way with silk or am I missing something?struct Triangle
{
int id;
vec3 v1;
vec3 v2;
vec3 v3;
vec3 nor;
};
struct RayHit
{
int triangleID;
float distanceHitAt;
vec3 inRayPos, inRayDir;
vec3 outRayPos, outRayDir;
vec3 surfacePos, surfaceNormal;
};
layout(std430, binding = 0) buffer SSBO {
RayHit HitData1[RAY_BOUNCE_MAX];
Triangle modelTriangles[];
}RTSceneData;C#
struct SSBO {
RayHit HitData1[RAY_BOUNCE_MAX];
Triangle modelTriangles[];
}
.
.
SSBO[] sceneData;
.
.
.
Gl.BufferData<SSBO>(BufferTargetARB.ShaderStorageBuffer, sceneData, BufferUsageARB.DynamicDraw);var rotator = Quaternion<float>.CreateFromAxisAngle(Vector3D<float>.UnitY, MathUtils.Radians(0.01f * 360.0f));
var position = new Vector3D<float>(100.0f, 0.0f, 0.0f);
var nextPosition = Vector3D.Transform<float>(position, rotator);