mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Merge branch 'imbris/quickfix' into 'master'
Quick physics perf fix See merge request veloren/veloren!2177
This commit is contained in:
commit
0cc2a77d1d
@ -315,6 +315,19 @@ impl<'a> PhysicsData<'a> {
|
||||
projectile,
|
||||
char_state_maybe,
|
||||
)| {
|
||||
let mut entity_entity_collision_checks = 0;
|
||||
let mut entity_entity_collisions = 0;
|
||||
|
||||
// TODO: quick fix for bad performance at extrememly high velocities
|
||||
// use oriented rectangles at some threshold of displacement/radius
|
||||
// to query the spatial grid and limit max displacement per tick somehow
|
||||
if previous_cache.collision_boundary > 128.0 {
|
||||
return PhysicsMetrics {
|
||||
entity_entity_collision_checks,
|
||||
entity_entity_collisions,
|
||||
};
|
||||
}
|
||||
|
||||
let z_limits = calc_z_limit(char_state_maybe, collider);
|
||||
|
||||
// Resets touch_entities in physics
|
||||
@ -324,9 +337,6 @@ impl<'a> PhysicsData<'a> {
|
||||
|
||||
let mut vel_delta = Vec3::zero();
|
||||
|
||||
let mut entity_entity_collision_checks = 0;
|
||||
let mut entity_entity_collisions = 0;
|
||||
|
||||
let query_center = previous_cache.center.xy();
|
||||
let query_radius = previous_cache.collision_boundary;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user