Commit Graph

11616 Commits

Author SHA1 Message Date
Joshua Barretto
ecf97a53cd Regular warping 2022-05-15 10:19:57 +01:00
Marcel
2855627ca2 Merge branch 'path-finding-fixes' into 'master'
Fix path finding bugs

See merge request veloren/veloren!3376
2022-05-14 17:53:34 +00:00
Joshua Barretto
e5c49af547 Faster, prettier, and less troublesome terrain warping 2022-05-14 17:00:03 +01:00
Hugo Peixoto
74d4e4f45e Fix path finding calculation of starting point
When a chaser's route finishes calculating, the chaser may already be a
few blocks away from the starting position, thanks to movement inertia.
The path finding code finds the point along the route closest to the
chaser's position.

This calculation only considered the xy coordinates when finding the
closest point. This caused issues whenever the calculated route goes
below the chaser's position (for example, when the chaser is on top of a
bridge and the route circled around to go under the bridge). In this
case, there was a chance that the closest point was the one below the
bridge. This caused the chaser to try to move directly to a directly
inaccessible block.

The fix was to remove the xy() filter so that the closest point
algorithm also considered the z coordinate.
2022-05-14 16:41:45 +01:00
Hugo Peixoto
b681ad79ce Fix heuristic to restart route in chase()
We had a random chance of restarting the route to avoid getting the
chaser stuck. This didn't work properly because the rerouting code was
only triggered if `self.route.is_none()` or if the target moved
significantly, and the random chance branch only set `bearing` to `None`.

This change sets `self.route = None` to trigger rerouting.
2022-05-14 16:41:45 +01:00
Hugo Peixoto
ba6d1bce60 Remove unnecessary code
We had an unnecessary unwrap_or_else() preceded by a question mark
operator, which means that the or_else clause could never be called.
2022-05-14 16:41:45 +01:00
Samuel Keiffer
ff16fc52c9 Merge branch 'holychowders/add_stealth_stat_to_bag_ui' into 'master'
Add stealth stat to Bag UI.

See merge request veloren/veloren!3369
2022-05-14 15:24:26 +00:00
holychowders
be0e322219 Remove "(Items)" from stealth stat descriptions. 2022-05-14 09:34:57 -05:00
holychowders
63f829be66 Add icon to stealth stat in Bag UI.
- Thanks to Toaster for making the icon.
2022-05-12 20:28:23 -05:00
holychowders
916d1d03f8 Update changelog. 2022-05-12 20:28:23 -05:00
holychowders
ff905fab95 Add stealth stat to Bag UI. NOTE: Needs icon. 2022-05-12 20:26:43 -05:00
Marcel
8c72ed9012 Merge branch 'xMAC94x/terrain_sending' into 'master'
xmac94x/terrain sending

See merge request veloren/veloren!3368
2022-05-11 20:16:07 +00:00
Marcel Märtens
1b76874342 renamings and using unstable sort according to a code review 2022-05-11 21:50:41 +02:00
Marcel Märtens
637e63fbe2 switch from a Component to a Ressource with an Eventbus
Set CHUNK_SITE to 10 which results in a mean of 13ms per Slowjob. Its good if it stays under 30ms so it has less influence on ticks.
Some performance values measured with a AMD Ryzen 1700X:
 - voxygen and server and swarm (25 clients, 10 vd) on one machine.
 - total runtime was 240s
 - CHUNK_GENERATOR total time is 486s with a mean of 40ms
 - CHUNK_SERIALIZER total time is 18.19s with a mean of 13ms, so in total its a order of magnitude lower
   Trancy confirms this, the Serialize backlog is usually handled within 1-2 ticks.
 - terrain::sys total time 1.2s, mean 188us
 - msg::terrain::sys total time 812ms, mean 125us
 - terrain::sync total time 12ms, mean 1,85us
 - chunk_serialize::sys total time 69ms, mean 10us
 - chunk_send::sys total time 50ms, mean 7us

so all in all total time for serializsation is 20.33 of which 89% are spend outside of the ECS
2022-05-11 21:04:17 +02:00
Marcel Märtens
efe284a673 make the client request a few more chunks to compensate for the delay in serialisation 2022-05-11 20:22:24 +02:00
Marcel Märtens
8e47d02f8d add metrics and trigger slowjobs in chunks of 25 2022-05-11 20:22:23 +02:00
Marcel Märtens
9b53693783 switch to a system where chunk_serialize will start a SlowJow that is then consumed by chunk_send 2022-05-11 20:22:21 +02:00
Marcel Märtens
6c756c2440 first implementation of defering serialisation 2022-05-11 20:22:19 +02:00
Marcel
07239c3056 Merge branch 'zesterer/lod-test-world-fix' into 'master'
Fixed LoD on test worlds

See merge request veloren/veloren!3371
2022-05-11 18:21:33 +00:00
Joshua Barretto
d530c29d98 Fixed LoD on test worlds 2022-05-11 19:06:41 +01:00
Joshua Barretto
e02f8aee65 Merge branch 'zesterer/lod-objects' into 'master'
LoD Objects (inc. Trees)

See merge request veloren/veloren!3367
2022-05-11 14:56:12 +00:00
Joshua Barretto
b42ee3fce2 Avoid expense when LoD voxels are disabled 2022-05-11 15:20:19 +01:00
Joshua Barretto
01e1cb34b0 Fixed minor LoD issues 2022-05-11 15:00:44 +01:00
Joshua Barretto
f21a64e898 Better oak model 2022-05-11 14:47:11 +01:00
Joshua Barretto
894e94bb2c Made 0 LoD distance not load anything 2022-05-11 13:07:57 +01:00
Joshua Barretto
9ac84c0a3a Improved LoD models 2022-05-11 12:20:42 +01:00
Joshua Barretto
2f7678582b Merge branch 'zesterer-master-patch-11561' into 'master'
Fixed bad entity spawns

See merge request veloren/veloren!3370
2022-05-10 23:48:33 +00:00
Joshua Barretto
515abc2b89 Fixed bad entity spawns 2022-05-10 23:25:22 +00:00
Joshua Barretto
5e1f16fb7a Better tree colours 2022-05-11 00:15:05 +01:00
Joshua Barretto
907ba3dcbc Added giant trees to LoD 2022-05-10 20:30:48 +01:00
Joshua Barretto
d4fd9d2d0e Added LoD houses 2022-05-10 19:19:46 +01:00
Joshua Barretto
7382aab13a Upped default LoD distance 2022-05-10 17:12:12 +01:00
Joshua Barretto
c7e51a6c59 Added frustum culling for LoD objects 2022-05-10 16:21:14 +01:00
Joshua Barretto
19d19df63c Flush LoD distance on login 2022-05-10 15:43:53 +01:00
Joshua Barretto
06300bc75f Updated changelog 2022-05-10 12:56:24 +01:00
Samuel Keiffer
1bd33bb997 Merge branch 'holychowders/streamline_stealth_coefficient' into 'master'
Distinguish armor and sneaking stealth; Show stealth as percentage in Stats UI.

Closes #1525

See merge request veloren/veloren!3352
2022-05-10 11:41:49 +00:00
Joshua Barretto
f35c98d1a1 Added LoD distance setting 2022-05-10 12:40:06 +01:00
Joshua Barretto
add9e5f9fe Better snow cover 2022-05-10 12:40:06 +01:00
Joshua Barretto
c199d17deb Better snow cover 2022-05-10 12:40:06 +01:00
Joshua Barretto
63c8ea58b9 Unbork normals 2022-05-10 12:40:06 +01:00
Joshua Barretto
2d7aa1aaa3 Added no terrain pop experimental shader 2022-05-10 12:40:06 +01:00
Joshua Barretto
596ae73117 Added NoLodVoxels option 2022-05-10 12:40:06 +01:00
Joshua Barretto
39e8b5d468 Hacky normals 2022-05-10 12:40:06 +01:00
Joshua Barretto
c3f30b2188 Offset for side/top texture 2022-05-10 12:40:06 +01:00
Joshua Barretto
3693a439ac Better reflections 2022-05-10 12:40:06 +01:00
Joshua Barretto
e4e50cb50e Better pulldown 2022-05-10 12:40:06 +01:00
Joshua Barretto
a9b2018383 Better snow cover 2022-05-10 12:40:06 +01:00
Joshua Barretto
79ce90a2e4 convert LoD assets to Git LFS 2022-05-10 12:39:50 +01:00
Joshua Barretto
2df01385d2 Voxelise trees 2022-05-10 12:38:37 +01:00
Joshua Barretto
3881d2ea38 Fixed i16 underflow 2022-05-10 12:38:36 +01:00