Commit graph

7 commits

Author SHA1 Message Date
Lwmte
95ff7091a9
Sound engine enhancements (#1141)
* Finalize features

* Add descriptions

* Amplify loudness output

* fix compile error

* Add subtitle parser for voice track

* Update bass.lib

* Return nil instead of empty string if no subtitle is found

* Allow to use newlines in subtitles

* Additionally try to load subtitles from /subtitles subdirectory

* Don't stop ambience when Lara dies

* Add option for turning subtitles on or off

* Update TombEngine.vcxproj

* Parse newlines correctly in subtitles

* Add millisecond constant

* Align menu

* Minor formatting; remove newlines preventing tooltips

---------

Co-authored-by: Kubsy <kubadd475@gmail.com>
Co-authored-by: Sezz <sezzary@outlook.com>
2023-06-17 12:02:51 +01:00
Lwmte
a4e32bf0e4 Update bass headers 2023-06-06 22:05:21 +02:00
hispidence
05a5a47458 Re-add lua53.dll since they seem to work without problems across the board. Remove duplicate Lua copy step. 2023-05-22 22:36:47 +01:00
Lwmte
4d63d92364
x64 version (#1113)
* Sort out compiler errors (excluding external libraries)

* Add TODO comment

* Use empty() method

* Fix wrong casts

* Fix new warnings

* Fix merge error

* Revert "Merge branch 'develop' into sezz_x64"

This reverts commit f695769189, reversing
changes made to 54c5e0c70d.

* Revert "Revert "Merge branch 'develop' into sezz_x64""

This reverts commit e1128c41f8.

* Update all libraries with x86 versions, organize lib directories, update x64 config

* Show app bitness in a log file

* Fix text rendering by uncommenting ToWString helper function

* Ship dlls and automatically replace them when switching between x86/x64

* Update TombEngine.vcxproj

* Adjust ammo struct; remove unneeded line

* Update broken x64 config for release mode

* Fix more project config inconsistencies

* Update TombEngine.vcxproj

* Remove unnecessary casts

* Tabs not spaces

* Update TombEngine.vcxproj.user

* Revert "Update TombEngine.vcxproj.user"

This reverts commit c168943ed0.

* Add x64 lua53.lib, remove DLLs.

---------

Co-authored-by: Sezz <sezzary@outlook.com>
Co-authored-by: Stranger1992 <84292688+Stranger1992@users.noreply.github.com>
Co-authored-by: hispidence <squidshirehimself@gmail.com>
2023-05-21 16:01:27 +01:00
Lwmte
d8557b0802 Delete vibration effect on control system deinit, update OIS includes 2022-07-04 20:19:00 +03:00
Lwmte
12663c7ce2 OIS input system (#556)
* Work

* Add ois.lib

* Add OIS headers/libs to project

* Fix small mistakes

* Update input.cpp

* Update input.cpp

* Update input.cpp

* Remove unnecessary event handlers as we are using direct polling

* Fix numpad controls not polling

* Enclose all input code under namespace, provide debug OIS lib variation

* Fix incorrect inventory call binding, add pause to control dialog

* Deselect by pushing inventory button as well, fix crossbow ammo string draw

* Demagic NUM_CONTROLS

* Verbose input init logging

* Calibrate and properly register movement analog axis input

* Fix crash when empty string is being displayed

* Initialize vibration interface, if it exists

* Register keyboard directional input as analog axis input as well

* Fix statistics exiting

* Fix weird UpdateInput call

* Copy current layout to configuration

* Fix issues with saving controls

* Register axis values for POVs too

* Register several POV directions at once

* Increase deadzone a bit

* Simplify enums

* Update input.cpp

* Move includes out of input.h

* Bump deadzone even further as it seems xbox controllers have massive axis errors

* Prevent event spamming in case OIS polling failed

* Destroy input system on exit, cosmetic changes

* Take deadzone into account when normalizing axis values

* Update TombEngine.vcxproj

* Resolve small precision loss in axis normalizing

* Clean up unused control constants and enums

* Update input.h

* Demagic InputActions enum

* Render pause menu header

* Introduce helper functions to modulate Lara turn rates and begin replacements

* Make turn directions explicit

* Conduct remaining replacements of turn rate modulations

* Update lara_helpers.cpp

* Add smoothstep function to math library

* Use scaled axis value for true analog input

* Update input.cpp

* Add Joey's camera rotation from old branch

* Fix camera not going back to previous position when stick is released

* Simplify ModulateLaraTurnRate()

* Widen look angle

* Avoid collisions with actions bound to non-directional axis

* Small tidying

* Remove unused header

* Remove copypasted code

* Mask flare animation

* Rename 5th and 6th axis to LT/RT

* Prototype force feedback support

* Add directional rumble support (probably XInput-only)

* Shake controller on startup if supports vibration

* Update OIS libs to support XInput FF

* Simplify ModulateLaraTurnRate()

* Update player modulation functions; simplify turning, leaning, and flexing in state functions; lara.h cleanup

* Update Win32ForceFeedback.h

* Fix crawl flex function

* Revert "Update Win32ForceFeedback.h"

This reverts commit aa7099ed5b.

* Update OIS libs

* Add options for thumbstick camera and vibration

* Make use of autotarget option

* Display NON-SCREAMING names in controls, add hack to cancel axis value on both right+left input events

* Remove useless control hacks for simultaneous directional input

* Delete ten_itemdata_generated.h

* Add scroll lock to bindable controls

* Update input.cpp

* Update input.cpp

* Make input device namings consistent

* Bring back IN_SELECT override

* Fix crashing on startup and some other bugs

* Add rumble to some in-game events

* Add some more vibration events, stop them when going to menus

* Some changes to rumble power

* Add rumble for rocket/grenade launchers and explosive damage

* Add rumble for screen shake effect

* Fix 2 mistakes in inventory strings

* Rumble for camera more precisely

* Fix debounce in binocular mode

* Update camera.cpp

* Add HK lasersight rumble

* Simplify ModulateLaraLean()

* Update input.cpp

* Fix crawl flex modulation(?)

* Add slight rumble to harpoon and crossbow fire

* Remove the confusing counteracting turn rate reset in favour of something simpler

* Simplify turn rate reset input checks; leanup

* Clamp turn rate axis coeff when airborne

* Remove empty line

* Simplify a function

* Cleanup

* Fix rumble being constant

* Use shorter rumble time for shooting guns

* Fix single arm shooting

* Fix leaning left with joystick; clamp crawl flex max; tweak walk lean max; cleanup

* Don't do too long splat and jump smash vibrations

* Cancel turn rate when exiting water, grabbing ledge, or doing a splat

* Rename function

* Move ModulateLaraTurnRateY() callsin crawl and crouch turn states

* Reset turn rate when performing crawl vault

* Convert all health decrease events to DoDamage calls

* Remove SpasmEffectCount and unify touching with DoDamage

* Give specific time delay before sprint jump is possible

* Don't rumble on zero damage

* Reorder input pipeline to prevent left+right collisions

* Rename shady global

* Rumble when breaking neck in swandive

* Update lara_jump.cpp

* Don't vibrate on soft splat

* Fix combine item text alignment

* Vibrate in settings only if setting was changed

* Pulse gamepad on critical health condition

* Don't get out of water into objects

* Add critical air constant

Co-authored-by: Sezz
2022-06-25 23:53:58 +10:00
MontyTRC89
f1e7c6fbfc All files under the same project; Renamed TR5Main to TombEngine; Cleaned repository; 2022-05-08 06:52:04 +02:00