1
0
mirror of https://github.com/rwengine/openrw.git synced 2024-11-07 03:12:36 +01:00
Commit Graph

1706 Commits

Author SHA1 Message Date
Daniel Evans
be2816c398
Merge pull request #572 from danhedron/test_update/IPL
Remove data dependency from LoaderIPL tests
2018-08-08 00:34:27 +01:00
Daniel Evans
a0eb668f79 Simplify IPL tests by adding output and comparison operators 2018-08-07 23:15:20 +01:00
Daniel Evans
31f32b2173
Merge pull request #571 from madebr/kerning
Add font-dependent kerning
2018-08-07 23:06:12 +01:00
Daniel Evans
457364eca3
Merge pull request #566 from paulkocialkowski/vehicles
Various vehicle improvements
2018-08-07 23:05:58 +01:00
Paul Kocialkowski
ff9ccd5f07 rwengine: Set the linear velocity to a zero vector when stopped
Vehicles have a tendency to move on their own when they are stopped, due
to their interactions with other surfaces that result in a non-zero
velocity.

Since we have a threshold with the isStopped() method, fix this situation
by setting the linear velocity and wheels rotation (that otherwise also
rotate on their own) to zero vectors.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-08-07 21:25:30 +02:00
Anonymous Maarten
9cfd9bb21b tools/rwfont: Add font texture creator 2018-08-07 12:39:59 +02:00
Anonymous Maarten
1bde51a155 cmake: add optional rwtools directory 2018-08-07 12:39:59 +02:00
Anonymous Maarten
99dca06dbc rwengine: avoid crash of rwviewer/rwgmae when rendering incomplete color string
The string "~g" would crash rwviewer.
2018-08-07 12:39:59 +02:00
Anonymous Maarten
f85f6e3391 rwviewer: keep unconvertible characters in the string as they are 2018-08-07 12:39:59 +02:00
Anonymous Maarten
f0c0bd33ef rwlib: make '~' visible in rwviewer and utf8 strings 2018-08-07 12:39:59 +02:00
Anonymous Maarten
09026ae8b0 rwengine: allow newline in GameString's 2018-08-07 12:39:05 +02:00
Anonymous Maarten
38fca841e7 rwengine: add font-dependent kerning 2018-08-07 12:39:05 +02:00
Daniel Evans
7938f8678f Add LoaderIPL tests for inst section 2018-08-07 01:18:01 +01:00
Daniel Evans
f95427c136
Merge pull request #540 from ShFil119/remove_FileHandle
Remove unneeded FileHandle (aka shared_ptr)
2018-08-07 00:31:19 +01:00
Daniel Evans
2a50194f5b Change LoaderIPL tests to use test-local data 2018-08-06 23:48:16 +01:00
Daniel Evans
0af9b23fe1 Add stream interface to LoaderIPL and use it in test 2018-08-06 23:37:37 +01:00
Daniel Evans
413df08ea9 Extract zone data tests to be more explicit 2018-08-06 23:25:03 +01:00
Daniel Evans
09a092475e Test Fixture 2018-08-06 23:02:07 +01:00
Filip Gawin
f3a718611e Convert data of FileContentsInfo to unique_ptr
I've removed copy ctor and copy assign operator.
We use here unique_ptr so copying should not happen.
2018-08-06 23:08:34 +02:00
Daniel Evans
634a3940ac
Merge pull request #570 from danhedron/test_up/IDE
Remove data dependency from LoaderIDE test suite
2018-08-06 21:43:46 +01:00
Filip Gawin
27333efd8c Remove unneed FileHandle (aka shared_ptr) 2018-08-06 22:42:09 +02:00
Daniel Evans
3941dde8d6 Add overload for lexical_cast<T> to select the base of the conversion 2018-08-06 20:45:40 +01:00
Daniel Evans
b68af53c97 Use BOOST_TEST instead of BOOST_CHECK_* 2018-08-06 20:40:43 +01:00
Daniel Evans
0743ac9681
Merge pull request #528 from madebr/fonts
Convert utf8 string to GameStrings using current font mapping + add string viewer to rwviewer
2018-08-06 20:25:38 +01:00
Daniel Evans
b14bcc8a12 Rename ObjectDataTests suite to LoaderIDETests 2018-08-06 00:03:32 +01:00
Daniel Evans
fc64c5e87e Add more object tests and fix a ped info bug
The car mask ped info member was being loaded as base 10 instead of base 16
2018-08-05 23:55:20 +01:00
Anonymous Maarten
a15413f997 rwlib+rwengine+rwviewer: address feedback comments 2018-08-06 00:16:33 +02:00
Paul Kocialkowski
295cb25cb0 Improve jump by getting inertia from the previous movement
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-08-05 23:08:51 +01:00
Daniel Evans
a8b2b94b05 Extract stream construction into fixture 2018-08-05 22:29:01 +01:00
Daniel Evans
3b7bb14de6 Extract object data assertions to functions 2018-08-05 22:22:13 +01:00
Anonymous Maarten
37fcebee40 rwlib+rwengine: add string conversion independent of font 2018-08-05 23:20:58 +02:00
Daniel Evans
81b7e5226a Use hard-coded test data in object data tests
This removes the dependency on the game data for these tests.
2018-08-05 21:39:43 +01:00
Daniel Evans
19368133b5 Extract IDE loading from file opening
This provides a way to parse IDE contents without a real file.
2018-08-05 21:23:36 +01:00
Daniel Evans
01a6ddb2b7 Extract Object Data test setup into fixture
The setup between the two tests is the same.
2018-08-05 21:14:18 +01:00
Daniel Evans
989762a66e Split object tests into individual cases
The object data test case contained multiple tests. Split them to increase test granularity and to provide more descriptive unit names.
2018-08-05 21:11:22 +01:00
Filip Gawin
491e5303d0 Replace std::ptr_fun with lambda
It is deprecated in c++11,
and remove in c++17.
2018-08-04 23:16:04 +01:00
Filip Gawin
4baeeb9ae8 Replace raw ptr with unique_ptr in CollisionInstance 2018-08-04 14:22:10 +01:00
Anonymous Maarten
6d4b69b742 rwviewer: view stored texts + fonts 2018-08-04 01:17:13 +02:00
Anonymous Maarten
ee455bb157 rwviewer: select rows in object viewer 2018-08-04 01:17:13 +02:00
Anonymous Maarten
640af372ba rwengine+rwgame: convert utf8 to GameString depending on used font 2018-08-04 01:17:13 +02:00
Anonymous Maarten
12afe81a35 rwengine: spelling fix: 'Alignemnt' 2018-08-04 01:11:47 +02:00
Anonymous Maarten
2ad9667b50 rwengine: add per-font mapping + unicode support + tests 2018-08-04 01:11:47 +02:00
Daniel Evans
74a4398e69
Merge pull request #559 from ShFil119/casting
Remove old style casts
2018-08-03 23:47:00 +01:00
Anonymous Maarten
cdef8b935e ci: echo APPVEYOR_REPO_COMMIT and COMMIT_HASH + do not exit on mismatch 2018-08-03 19:39:08 +01:00
Filip Gawin
24b47a53f3 Remove unwanted memory leak in script 2018-08-02 21:39:36 +01:00
Paul Kocialkowski
17b6c13a6a rwgame: Adapt the friction slip based on handling data to ease steering
A constant friction slip for all vehicles does not seem to work very
well and most are rather hard to steer with. This introduces a somewhat
empirical formula to get a rather sane friction slip value based on
handling data, where coefficients are used in a way compatible with the
required friction slip value for most vehicles.

This is by far not a perfect approach and the steering on some vehicles
still feels out of line with the realistic expected behaviour, but most
remain fairly drivable.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-08-02 21:37:44 +02:00
Paul Kocialkowski
e3e8b3acb9 rwengine: Reduce vehicle roll influence to avoid easily flipping wheels
The current roll influence value makes it much too easy to flip vehicles
upside down. More generally, the vehicles tend to not stick to the ground
enough as they are too easily moved around when hit with another vehicle.

Reduce the roll influence value for vehicles to make them stick more to
the ground.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-08-02 21:37:44 +02:00
Paul Kocialkowski
20ac5b2a39 rwengine: Slow down engine force when the vehicle is braking
This introduces a linear reduction of the engine force when braking is
applied. The division factor increases with the steering angle to
max steering angle ratio, reducing the engine force by a factor of
up to 1.25.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-08-02 21:37:44 +02:00
Paul Kocialkowski
77b3df037e rwengine: Adapt the nominal engine force for our physics
This introduces a coefficient to adapt the nominal engine force to our
physics and ensure that top speed is not reached too fast.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-08-02 21:37:44 +02:00
Paul Kocialkowski
dce3b9af3a rwengine: Increase the engine force when starting up
Most vehicles are still slow to start and manoeuvre. For instance, it is
rather hard to precisely park in a parking space. In order to make
vehicles more reactive when starting (either forward or backward), the
engine force is increased at first and progressively decreased to its
nominal force, following the velocity increase up to half the maximum
velocity.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-08-02 21:37:44 +02:00