diff --git a/lib/common/src/bvh.rs b/lib/common/src/bvh.rs index 9c45cd9..5309ae4 100644 --- a/lib/common/src/bvh.rs +++ b/lib/common/src/bvh.rs @@ -159,7 +159,7 @@ impl<L> BvhNode<L>{ start_time:Ratio<Planar64,Planar64>, f:&F, ) - where + where T:Ord+Copy, Ratio<Planar64,Planar64>:From<T>, F:Fn(&L,&Ray)->Option<T>, @@ -185,7 +185,7 @@ impl<L> BvhNode<L>{ ray:&Ray, start_time:T, time_limit:T, - f:&F, + f:F, )->Option<(T,&L)> where T:Ord+Copy, @@ -200,7 +200,7 @@ impl<L> BvhNode<L>{ let time_limit=time_limit.into(); let mut collector=InstructionCollector::new(time_limit); // break open all nodes that contain ray.origin and populate nodes with future intersection times - self.populate_nodes(&mut collector,&mut nodes,ray,start_time,f); + self.populate_nodes(&mut collector,&mut nodes,ray,start_time,&f); // swim through nodes one at a time while let Some((t,node))=nodes.pop_first(){