Commit Graph

98 Commits

Author SHA1 Message Date
Joshua Barretto
3f2e22f039 Exponential interpolation for linear damping
With an additional approximation to allow for the same size jumps given different framerates.
2019-09-09 19:11:40 +00:00
Joshua Barretto
933e48ac3b Merge branch 'fix-jump-height' into 'master'
Fix jump height

See merge request veloren/veloren!485
2019-09-08 15:50:08 +00:00
haslersn
1796c09ca1 common: Rework volume API
See the doc comments in `common/src/vol.rs` for more information on
the API itself.

The changes include:

* Consistent `Err`/`Error` naming.
  * Types are named `...Error`.
  * `enum` variants are named `...Err`.
* Rename `VolMap{2d, 3d}` -> `VolGrid{2d, 3d}`. This is in preparation
  to an upcoming change where a “map” in the game related sense will
  be added.
* Add volume iterators. There are two types of them:
  * _Position_ iterators obtained from the trait `IntoPosIterator`
    using the method
    `fn pos_iter(self, lower_bound: Vec3<i32>, upper_bound: Vec3<i32>) -> ...`
    which returns an iterator over `Vec3<i32>`.
  * _Volume_ iterators obtained from the trait `IntoVolIterator`
    using the method
    `fn vol_iter(self, lower_bound: Vec3<i32>, upper_bound: Vec3<i32>) -> ...`
    which returns an iterator over `(Vec3<i32>, &Self::Vox)`.
  Those traits will usually be implemented by references to volume
  types (i.e. `impl IntoVolIterator<'a> for &'a T` where `T` is some
  type which usually implements several volume traits, such as `Chunk`).
  * _Position_ iterators iterate over the positions valid for that
    volume.
  * _Volume_ iterators do the same but return not only the position
    but also the voxel at that position, in each iteration.
* Introduce trait `RectSizedVol` for the use case which we have with
  `Chonk`: A `Chonk` is sized only in x and y direction.
* Introduce traits `RasterableVol`, `RectRasterableVol`
  * `RasterableVol` represents a volume that is compile-time sized and has
    its lower bound at `(0, 0, 0)`. The name `RasterableVol` was chosen
    because such a volume can be used with `VolGrid3d`.
  * `RectRasterableVol` represents a volume that is compile-time sized at
    least in x and y direction and has its lower bound at `(0, 0, z)`.
    There's no requirement on he lower bound or size in z direction.
    The name `RectRasterableVol` was chosen because such a volume can be
    used with `VolGrid2d`.
2019-09-06 15:43:31 +02:00
Andrew Pritchard
05dff792fc Deref instead of clone vel 2019-09-06 14:22:58 +08:00
Andrew Pritchard
b4c74279b7 Vec3 is apprently *not* Copy, Set near plane to 0.1 to prevent tirangle flickering 2019-09-06 13:24:42 +08:00
Andrew Pritchard
b4d5663fed Vec3 is copy 2019-09-06 12:04:20 +08:00
Andrew Pritchard
5b82808df0 Merge branch 'master' into 'fix-jump-height'
# Conflicts:
#   common/src/sys/phys.rs
2019-09-05 13:07:46 +00:00
Andrew Pritchard
d0b2f7565a Revert "Revert "Exponential interpolation for linear damping""
This reverts commit 8b9a3ae1df.
2019-09-05 18:24:38 +08:00
Andrew Pritchard
8b9a3ae1df Revert "Exponential interpolation for linear damping"
This reverts commit 94b9f50efa.
2019-09-05 18:24:22 +08:00
Andrew Pritchard
94b9f50efa Exponential interpolation for linear damping
With an additional approximation to allow for the same size jumps given different framerates.
2019-09-05 17:07:15 +08:00
Imbris
52d84248ec Remove all warnings 2019-09-04 19:03:49 -04:00
timokoesters
952ec35857
Remove warnings 2019-08-29 19:54:53 +02:00
timokoesters
05f2f168fd
Make falldamage local, don't use force update for local, cleanup 2019-08-26 13:12:43 +02:00
timokoesters
eb34e5bb27
fmt 2019-08-26 13:12:43 +02:00
Songtronix
814e858720
Split Events in ServerEvent and LocalEvent 2019-08-26 13:12:41 +02:00
timokoesters
0bb70d8182
Fix water 2019-08-26 13:12:36 +02:00
timokoesters
799c73d43a
Fix characterstate in movement.rs, not phys.rs 2019-08-26 13:12:35 +02:00
timokoesters
5d5ccd7b99
Move from state components to single CharaterState struct
This makes split animations easy and improves overall code quality
2019-08-26 13:12:34 +02:00
Vechro
c40e15f070 Fix velocity when stuck 2019-08-21 20:17:19 +03:00
Joshua Barretto
825d8bb632 Fixed water in caves, made water reflection vary with lighting 2019-08-18 10:33:18 +01:00
Joshua Barretto
192f5d355f Switched to EventBus system 2019-08-07 16:39:16 +01:00
Joshua Barretto
98a913195b Added entity event system, fixed fall damage 2019-08-07 10:50:49 +01:00
telastrus
e4f2c73b85 undo unnecessary pub mod
fixed comments

fixed other comment
2019-08-06 22:46:25 -04:00
telastrus
0eafd42c0f fall damage + velocity debug 2019-08-06 17:51:13 -04:00
Joshua Barretto
73a44d0fb1 Collision fixes, better camera in build mode 2019-08-06 16:00:14 +01:00
Monty Marz
d180c47edc Pfau/combat 2019-08-03 21:11:57 +00:00
Joshua Barretto
c33892e8af Made entity collisions z-dependent 2019-08-03 19:09:01 +01:00
Joshua Barretto
3063546a58 Added entity pushback 2019-08-03 12:26:05 +01:00
Joshua Barretto
39fc1d6b71 Added entity pickup, changed item model 2019-08-01 09:12:00 +01:00
Joshua Barretto
fc49293874 Clickthrough on items 2019-08-01 09:09:26 +01:00
Joshua Barretto
31f8794c39 Started work on inventory manipulation 2019-08-01 09:09:26 +01:00
Joshua Barretto
123a78552a Fixed block-hopping on edges, added correct inventory slots 2019-08-01 09:09:26 +01:00
Joshua Barretto
1dc654dde7 Added object entities 2019-07-21 19:22:49 +01:00
Joshua Barretto
d4821b8de8 Better fog 2019-07-21 00:32:36 +01:00
Joshua Barretto
bbd7f579d2 Fix for clipping 2019-07-09 15:07:53 +01:00
Joshua Barretto
9f6f9cb25f Fixed block snapping at lower framerates 2019-07-09 14:04:30 +01:00
Joshua Barretto
0f0f28284c Added 'perfect' collisions 2019-07-09 13:37:51 +01:00
Joshua Barretto
6bb48760d7 Fixed jittering collision bug 2019-07-09 11:51:00 +01:00
Justin Shipsey
1c10ff756f Holding weapon while running/jumping/standing 2019-07-06 19:00:05 +00:00
timokoesters
f5da167ce5
Fix warnings and clippy recommendations in common 2019-07-02 15:48:25 +02:00
Joshua Barretto
0de505b74c fmt 2019-06-30 23:46:55 +01:00
Joshua Barretto
14d9071670 Fixed minor physics bugs 2019-06-30 23:46:46 +01:00
Joshua Barretto
b35832c37d Prevent movement in unloaded chunks 2019-06-30 19:54:13 +01:00
Joshua Barretto
2985f94751 Prevented stalling when jumping before a block-hopping 2019-06-30 19:54:13 +01:00
Joshua Barretto
af755c0964 fmt 2019-06-29 22:47:24 +01:00
Joshua Barretto
f2df3a9d18 Block-hopping fix, better dusk shaders 2019-06-29 22:47:24 +01:00
Joshua Barretto
f1ba97ae7a Merge branch 'timo-rolling-fix' into 'master'
Rolling bugs + NPC bugs + "Impossible" bug

See merge request veloren/veloren!265
2019-06-29 21:47:05 +00:00
timokoesters
d235374d8e
Fix npc and death bug 2019-06-29 22:43:44 +02:00
timokoesters
5fcf6ededa
magnitude_squared everywhere, actionstate everywhere, constant for moving 2019-06-29 22:11:21 +02:00
Joshua Barretto
324de39bfe fmt 2019-06-29 16:48:43 +01:00