48 const float xf = co[0] * (
float)res[0] - 0.5f;
49 const float yf = co[1] * (
float)res[1] - 0.5f;
50 const float zf = co[2] * (
float)res[2] - 0.5f;
56 _clamp(x + 1, 0, res[0] - 1),
59 _clamp(y, 0, res[1] - 1) * res[0],
60 _clamp(y + 1, 0, res[1] - 1) * res[0],
63 _clamp(
z, 0, res[2] - 1) * res[0] * res[1],
64 _clamp(
z + 1, 0, res[2] - 1) * res[0] * res[1],
67 const float dx = xf - (
float)x;
68 const float dy = yf - (
float)y;
69 const float dz = zf - (
float)
z;
71 const float u[2] = {1.0f - dx, dx};
72 const float v[2] = {1.0f - dy, dy};
73 const float w[2] = {1.0f - dz, dz};
76 (
v[0] * (u[0] * data[xc[0] + yc[0] + zc[0]] + u[1] * data[xc[1] + yc[0] + zc[0]]) +
77 v[1] * (u[0] * data[xc[0] + yc[1] + zc[0]] + u[1] * data[xc[1] + yc[1] + zc[0]])) +
79 (
v[0] * (u[0] * data[xc[0] + yc[0] + zc[1]] + u[1] * data[xc[1] + yc[0] + zc[1]]) +
80 v[1] * (u[0] * data[xc[0] + yc[1] + zc[1]] + u[1] * data[xc[1] + yc[1] + zc[1]]));
draw_view push_constant(Type::INT, "radiance_src") .push_constant(Type capture_info_buf storage_buf(1, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .push_constant(Type draw_view int