lavapipe: Pass lvp_ray_flags into lvp_aabb_intersection_cb

Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28187>
This commit is contained in:
Konstantin Seurer 2024-03-12 16:44:17 +01:00 committed by Marge Bot
parent bdab90d120
commit 5e0b8334ec
3 changed files with 5 additions and 3 deletions

View file

@ -453,7 +453,8 @@ struct traversal_data {
static void
handle_candidate_aabb(nir_builder *b, struct lvp_leaf_intersection *intersection,
const struct lvp_ray_traversal_args *args)
const struct lvp_ray_traversal_args *args,
const struct lvp_ray_flags *ray_flags)
{
struct traversal_data *data = args->data;
struct ray_query_vars *vars = data->vars;

View file

@ -343,7 +343,7 @@ lvp_build_aabb_case(nir_builder *b, const struct lvp_ray_traversal_args *args,
not_cull = nir_iand(b, not_cull, ray_flags->no_skip_aabbs);
nir_push_if(b, not_cull);
{
args->aabb_cb(b, &intersection, args);
args->aabb_cb(b, &intersection, args, ray_flags);
}
nir_pop_if(b, NULL);
}

View file

@ -36,7 +36,8 @@ struct lvp_leaf_intersection {
};
typedef void (*lvp_aabb_intersection_cb)(nir_builder *b, struct lvp_leaf_intersection *intersection,
const struct lvp_ray_traversal_args *args);
const struct lvp_ray_traversal_args *args,
const struct lvp_ray_flags *ray_flags);
struct lvp_triangle_intersection {
struct lvp_leaf_intersection base;