Daniel Evans
684e32f4a9
Simplify Script system by removing SCMOpcodes
...
This was just a useless container for a set of modules. We only have
one module now so don't bother with it. This means we can remove some
more raw new & deletes from RWGame too.
2016-10-24 21:29:41 +01:00
Daniel Evans
fb4d9ea8c3
Use unique_ptr for GameWorld instance
2016-10-24 21:29:41 +01:00
Daniel Evans
81c27da97b
Make GameState instance a direct member of RWGame
2016-10-24 21:29:41 +01:00
Daniel Evans
32352baedd
Remove very dead debug code
2016-10-24 21:29:41 +01:00
Daniel Evans
d62e8a6cd2
Make MenuEntry height a property of the Menu
2016-10-24 21:29:41 +01:00
Daniel Evans
613d386488
Improve Menu system implementation
2016-10-24 21:29:41 +01:00
Daniel Evans
6a7802de87
Overhaul State and StateManager to remove pointers
...
Removed raw State pointers in favour of unique_ptrs
Avoid allowing control flow to re-enter States that have exited
Defer releasing states until the end of the frame
2016-10-24 21:29:40 +01:00
Daniel Evans
c54273bb63
Correct RWGame.hpp header guard
2016-10-19 22:34:51 +01:00
Daniel Evans
ad998e8a80
Avoid allocating RWGame members where possible
...
These objects don't need to be dynamically allocated, they can
take on the same lifetime as RWGame itself.
2016-10-19 22:34:51 +01:00
Daniel Evans
2f118631dc
Move some non-game code into GameBase class
...
This moves window setup and configuration loading into a base
class so that RWGame can focus on game related matters
2016-10-19 22:34:51 +01:00
Daniel Evans
657a726a9b
Initialise logging outside of RWGame
2016-10-19 22:34:51 +01:00
Daniel Evans
5c78930c1b
Remove InventoryItem and WeaponItem
...
They served no purpose other than to awkwardly implement weapon firing
This is now handled in the Weapon::fire* functions, and everything else
has been changed to reference weapon data or inventory indices directly
2016-10-19 22:14:52 +01:00
Daniel Evans
13f504d699
Draw nearby object state in object debug view
2016-10-13 22:31:26 +01:00
Daniel Evans
fe0d2f92b0
Initial objects debug view
2016-10-13 22:31:26 +01:00
Daniel Evans
c4a34da36a
Simplify debug stats text
2016-10-13 22:31:26 +01:00
Daniel Evans
baca296436
Remove useless information from debug stats
2016-10-13 22:31:26 +01:00
Daniel Evans
40d27b4a07
Clean up debug view selection code
2016-10-13 22:31:26 +01:00
Daniel Evans
02efff6f8f
Merge pull request #241 from danhedron/new-object-data
...
Correct object data storage
2016-10-10 20:51:25 +01:00
Daniel Evans
e31c30efe9
Improve loading of hard-coded models
2016-10-10 20:49:44 +01:00
Daniel Evans
17315c7974
Make the test vehicle list explicit
...
The object order is no longer sorted, so we have to specify exactly
which vehicles to spawn in the test mode
2016-10-05 22:38:35 +01:00
Daniel Evans
6951434be8
Load objects directly
2016-09-27 22:49:08 +01:00
Daniel Evans
996a82c4bf
Overhaul Model data handling to improve accuracy
2016-09-27 22:48:45 +01:00
Daniel Evans
fe77995e1f
Fix uninitialised moneyTimer variable
2016-09-12 00:35:09 +01:00
Daniel Evans
a403cc87b7
clang-format files in rwgame/states
2016-09-09 21:13:20 +01:00
Daniel Evans
e39ee21ca8
clang-format files in rwgame
2016-09-09 21:13:20 +01:00
Daniel Evans
53e996aac7
Merge pull request #234 from danhedron/improved-file-handling
...
Improved file handling for un-archived files
2016-09-07 22:39:35 +01:00
dan
810c6658d0
use openFilePath to open data files
2016-09-07 22:06:38 +01:00
Daniel Evans
03309d76d9
Don't defer loading IDE files
2016-09-07 01:34:42 +01:00
dan
306f6fa9d7
Use findFilePath when loading data files
...
This should make file loading more reliable for case sensitive
operating systems.
2016-09-07 00:42:27 +01:00
Sven Stucki
f5d76fbbcd
Catch all command line parsing errors, properly exit on --help
2016-09-06 20:11:54 +02:00
Sven Stucki
0847c85abd
Make --test work without --newgame, update help text
2016-09-06 20:11:53 +02:00
Sven Stucki
431e218a64
Use Boost to parse command line arguments ( #177 )
...
There are still some rough edges, first version to send in for
discussion.
2016-09-06 20:11:41 +02:00
Jannik Vogel
70f777c685
Zero-Pad displayed money value and slowly update it
2016-09-02 15:35:34 +02:00
Jannik Vogel
5f86003758
Add cheat handler
2016-09-02 15:33:45 +02:00
Daniel Evans
92b7f922b4
Merge pull request #230 from svenstucki/quit
...
Make sure SDL_Quit() is called on exit
2016-09-01 22:59:33 +01:00
Sven Stucki
449289c06a
Make sure SDL_Quit() is called on exit
2016-09-01 22:58:06 +02:00
Jannik Vogel
c3c1c8781e
Adjust debug-camera speed
2016-09-01 02:56:47 +02:00
Jannik Vogel
4ac3bc185f
Fix debug-camera speed-modifier
2016-09-01 02:56:29 +02:00
Jannik Vogel
72a03fcdd6
Fix debug-camera undefined behaviour
2016-09-01 02:53:28 +02:00
Daniel Evans
3dca19f971
Merge pull request #216 from danhedron/handle-init-failure-1
...
Improve SDL & GL initialisation failure handling
2016-08-31 23:14:21 +01:00
Daniel Evans
609790674a
Use new GTA3Module
2016-08-30 19:57:47 +01:00
Daniel Evans
47d654854e
Remove SetWindowGrab to allow dismissing the error dialog
...
If an error occurs while the game is running, the window grabbing input
focus would prevent the mouse from being able to click on "OK".
Since SetRelativeMouseMode already warps the cursor for us we don't
need to grab the input.
2016-08-27 00:40:10 +01:00
Daniel Evans
95481c6d2e
Catch fatal exceptions and show an error dialog
...
We also print to stderr, but sometimes stderr is unavailable so we should
show a dialog.
2016-08-25 23:32:30 +01:00
Daniel Evans
0a0d2a188f
Hide window until we are done creating a context
2016-08-25 20:40:25 +01:00
Daniel Evans
880328877e
Handle SDL initialisation failure by throwing errors
2016-08-24 21:33:31 +01:00
Jannik Vogel
bdfa30729f
Replace uses of cmath constants by glm
2016-08-23 23:05:22 +02:00
Daniel Evans
3a53089d68
Merge pull request #190 from tsjost/fix/timecheat
...
Add method to modify game time properly
2016-08-23 00:28:54 +01:00
Daniel Evans
f82d48d52a
Add constants for non alphanumeric symbols
2016-08-23 00:05:25 +01:00
Daniel Evans
398e184cd6
Use GameString in RWGame, using localised strings.
...
This adds:
- Localised GameStrings in the menus, replacing hard-coded strings
- Changes the default menu font to match the game
2016-08-23 00:05:25 +01:00
Daniel Evans
cdebd16532
Remove iconv from CMake configuration
2016-08-23 00:05:25 +01:00
Daniel Evans
3123571894
Convert save games to use GameStringChar
2016-08-23 00:05:18 +01:00
Daniel Evans
67aa5150ca
Replace mb strings with 16-bit char strings
...
The game indexes into the font map directly, it doesn't use any font
encoding scheme like UTF-16. This corrects the behaviour and removes
dependancy on iconv.
2016-08-21 17:40:35 +01:00
Timmy Sjöstedt
d823a97308
Make debug keys use gameOffsetTime method
2016-08-17 01:03:31 +02:00
Daniel Evans
e449a25071
Replace hack with correct font-map lookup function
2016-08-16 21:46:53 +01:00
Kamil Rytarowski
0ef224df90
Add preliminary NetBSD support
...
The iconv(3) function on NetBSD has a custom prototype due to old mistake in
the POSIX specification. The issue has been resolved but we keep using original
form with a constified parameter.
2016-08-13 21:33:04 +02:00
Daniel Evans
2f0b24c6ea
Merge pull request #188 from danhedron/feature/cleanup-script
...
Script cleanup and remove old tool
2016-08-12 23:36:26 +01:00
Jannik Vogel
cda72bb87f
Don't grab mouse cursor before going ingame
2016-08-12 02:14:15 +02:00
Jannik Vogel
f7fca167dc
Allow language selection in config
2016-08-12 02:14:15 +02:00
Jannik Vogel
e7c772967f
Switch default english.gxt to american.gxt
2016-08-12 02:14:15 +02:00
Jannik Vogel
571fd08631
Replace strcasecmp with boost::iequals
2016-08-12 02:14:15 +02:00
Jannik Vogel
cb347143f8
Cleanup: Replace non-std C++ code
2016-08-12 02:14:15 +02:00
Jannik Vogel
bda0107bb1
Cleanup: include-what-you-use
2016-08-12 02:14:15 +02:00
Jannik Vogel
d2d8a97a09
Fix SDL2 #include paths
2016-08-12 02:13:22 +02:00
Daniel Evans
8a985309f9
Remove breakpoint system from ScriptMachine
2016-08-12 01:02:24 +01:00
Aaron Bieber
e8b28c7168
add support for OpenBSD
2016-08-11 17:51:27 -06:00
Daniel Evans
d8841c7561
Remove include directory from rwengine for consistency
2016-08-07 14:41:45 +01:00
Daniel Evans
a0b995c97e
Move game state classes into states folder
2016-08-07 14:32:22 +01:00
darkf
e58be26be8
Fix the construction of WorkContext
...
Previously the worker thread was constructed before the queue was, leading to
unfortunate race conditions. This fixes that, along with unrelated minor cleanup.
2016-08-05 09:42:03 -07:00
darkf
836e51aff7
Torch the HTTP script debugger
2016-08-03 13:30:40 -07:00
darkf
03f050fc04
Use C++11 member initializers in RWGame
2016-08-02 04:45:14 -07:00
darkf
6d6d772653
Open binary files in binary mode
2016-08-02 04:38:35 -07:00
darkf
a574649dce
Silence a lot of warnings
2016-08-02 04:31:12 -07:00
Daniel Evans
f3151fe0b7
Merge pull request #166 from danhedron/feature/input-improvements
...
Seperate Input state from binding
2016-08-01 20:06:37 +01:00
Daniel Evans
07945e767e
Merge pull request #168 from danhedron/feature/build-hash
...
Add Git SHA1 hash to RWGame for versioning
2016-08-01 19:42:14 +01:00
Daniel Evans
ded631dad6
Add Git SHA1 hash to RWGame for versioning
2016-08-01 19:34:53 +01:00
Daniel Evans
c48bc26c1e
Merge pull request #158 from danhedron/feature/physics-overhaul-1
...
MotionStates & physics cleanup
2016-08-01 19:32:30 +01:00
darkf
d3084ad721
Rework how exiting and cleanup is handled.
...
This involves a few changes. The first changes involve
allocating GameWindow and WorkContext on the heap, so that
RWGame still owns them but chooses when they're freed.
The work queue is given a method to stop the worker thread
without destroying the work context, so that subsystems
relying on the work context may still function to shut down.
Then RWGame is rearranged to cleanup separate subsystems
in an order that does not conflict (i.e., stop the work queue,
shut down other subsystems, then the renderer, *then* the window.)
The window needs to be cleaned up *after* the renderer because it
owns the OpenGL context.
2016-07-31 07:04:52 -07:00
haphzd
347c30d429
WinSock2 (just to build, probably doesn't work)
2016-07-28 14:46:56 +03:00
haphzd
114abe2286
Windows/MinGW-W64 compatibility
2016-07-28 14:46:48 +03:00
Daniel Evans
78cdedcb3b
Add Look left & right in vehicles
2016-07-02 21:20:45 +01:00
Daniel Evans
c2fc2359e3
Add primitive sprint behaviour
2016-07-02 20:51:30 +01:00
Daniel Evans
91428fbff1
Use input state for player movement
2016-07-02 20:51:30 +01:00
Daniel Evans
ae55b888e0
Update game state from SDL events
2016-07-02 20:51:30 +01:00
Daniel Evans
827653a12b
Add Default control mapping for ingamestate
2016-07-02 20:50:49 +01:00
Daniel Evans
b3fe87c2ea
Clean up CollisionInstance and some of VehicleObject
2016-07-02 20:37:04 +01:00
Daniel Evans
600333e20b
Merge pull request #159 from danhedron/feature/traffic-vehicles
...
Parked traffic and out-of-view spawning
2016-06-29 23:04:00 +01:00
Daniel Evans
30e4a7faf1
Merge pull request #137 from haphzd/patch-1
...
File loading improvements
2016-06-29 22:26:58 +01:00
orbea
27c6334cb1
CMake: Add BIN_DIR and DOC_DIR ( #165 )
...
* CMake: Add BIN_DIR and DOC_DIR
* CMake: Fix typo
2016-06-29 22:19:03 +01:00
Daniel Evans
45103c3440
Add vehicle generators to AI debug view
2016-06-27 22:33:22 +01:00
Daniel Evans
69e7d32f3a
Use view frustum for traffic spawning and cleanup
2016-06-27 22:33:22 +01:00
haphzd
593aa73bda
Use existing file loading method for SCM
2016-06-26 13:25:26 +03:00
haphzd
c19df1d936
Don't load hud.txd twice
2016-06-26 13:25:25 +03:00
Daniel Evans
a58486fc4f
Merge pull request #147 from danhedron/fix/script-opcode-1
...
Fix opcodes 0x0213 & 0x032B
2016-06-25 22:34:43 +01:00
Daniel Evans
64c3277736
Use createPickup in test mode
2016-06-25 21:35:34 +01:00
Daniel Evans
9aaeb2ceda
Remove screenshot functionality, as it's broken.
2016-06-23 22:43:00 +01:00
Jannik Vogel
9bfb9f8002
CMake: Use FindSDL2.cmake
2016-06-22 23:58:27 +02:00
Christoph Heiss
649f7b144d
Replace SFML with SDL2
...
This entirely replaces all remaining SFML pieces with SDL2 and
brings OpenRW up to OpenGL 3.3
2016-06-22 12:29:39 +02:00
Christoph Heiss
9835b0fc61
Replace sf::TcpListener/sf::TcpSocket with a drop-in implementation
2016-06-22 11:13:41 +02:00
Christoph Heiss
572f61e076
Replace sf::Clock with std::chrono::steady_clock
2016-06-22 10:43:47 +02:00
Daniel Evans
8798b99394
Add wrap-around key movement to menu system
2016-06-21 19:40:00 +01:00
Daniel Evans
cb49e59c86
Fix some unused variable compiler warnings in rwgame
2016-06-21 19:32:43 +01:00
Daniel Evans
a08f20dd5b
Add Weapon debug menu
2016-06-21 19:26:44 +01:00
Daniel Evans
e83201b45b
Improve camera for taller vehicles
2016-06-20 20:26:01 +01:00
Jannik Vogel
49c05bced9
Add vehicle mission spawner to debug menu
2016-06-20 20:26:01 +01:00
Daniel Evans
d1cbdaff94
Add Kill All Peds debug command
2016-06-20 20:26:01 +01:00
Daniel Evans
877d5db2d1
Improve spawning of Vehicles and Follows in debug menu
2016-06-20 20:26:01 +01:00
Daniel Evans
e9127fac6a
Overhaul debug menu organisation
2016-06-16 23:42:50 +01:00
Daniel Evans
1157d1dd7c
Remove broken save related menu entries
2016-06-16 22:51:49 +01:00
Jannik Vogel
ab6d3e5b3a
Add 'Jump to Docks' to debug menu
2016-06-04 18:50:50 +02:00
Daniel Evans
1f5fcb16ca
Merge pull request #121 from JayFoxRox/improve-text
...
Improve text styles
2016-06-04 17:41:32 +01:00
Jannik Vogel
6bb43324a2
Support negative shadow offsets for texts and force shadow colour
2016-06-02 18:57:54 +02:00
Jannik Vogel
873e2d4040
Add option to disable collision for garage doors in debug menu
2016-06-02 17:50:52 +02:00
Jannik Vogel
846771aa82
Add option to flip vehicle in debug menu
2016-05-29 14:59:47 +02:00
Jannik Vogel
79b7ec2b17
Add option to jump to camera position in debug menu
2016-05-29 14:59:47 +02:00
Jannik Vogel
2e002013bd
Add car spawner to debug menu
2016-05-26 22:17:11 +02:00
Daniel Evans
eef34c972a
Script pickups: implement weapon pickups, improve pickup code
2016-05-25 23:00:52 +01:00
Dmitry Marakasov
c302f10b19
Add FreeBSD support
...
For now, there's only single OS-dependent bit of code, it it should be
handled on FreeBSD just like on Linux. While here, change macro testing
from #if XXX to #if defined(XXX), this is clener and not prone to
"undefined macro" errors
2016-05-25 18:32:17 +03:00
Daniel Evans
b7ac33caec
Improve activities: canSkip(), let player cancel vehicle enter.
...
Closes #32
2016-05-24 23:49:01 +01:00
Daniel Evans
478cbf6187
Make forward direction part of character state to simplify
...
This allows activities to make the final call about what direction a
character should be facing based on the direction they want to be
looking.
2016-05-23 21:40:55 +01:00
Timmy Sjöstedt
9e2db1bd11
Enable mouse cursor in menus, fixes #46
2016-05-23 18:44:38 +02:00
Daniel Evans
6178cd03e3
Remove const from return value
2016-05-22 20:03:14 +01:00
Daniel Evans
46961f8c33
Request a non zero number of stencil bits.
2016-05-22 16:07:33 +01:00
Daniel Evans
45abee6093
Improve ingame camera with invert y option in configuration.
2016-05-22 15:58:36 +01:00
Daniel Evans
39c639fc60
Overhaul ingame camera implementation, much better now.
2016-05-21 19:13:27 +01:00
Christoph Heiss
3c4ce72488
Fix GameConfig::getDefaultConfigPath for OS X.
...
Under OS X, configuration files are usually stored in $HOME/Library/Preferences/<appname>.
2016-05-21 19:04:29 +02:00
Daniel Evans
2ee4a6e533
Add configuration file to replace OPENRW_GAME_PATH env var
...
This will permit the storage of other user settings like language and
video settings.
2016-05-20 02:10:11 +01:00
Daniel Evans
9f85f283cb
CMake: FindSFML+FindMAD, set library paths as SYSTEM, remove dead stuff.
2016-05-19 22:30:06 +01:00
Rob Crittenden
a1072de670
Don't hardcode screenshot directory (still hardcodes filename)
...
Signed-off-by: Rob Crittenden <rcrit@greyoak.com>
2016-05-19 11:17:23 -04:00
Daniel Evans
11365a3c73
Remove old text rendering logic code.
2016-05-07 18:35:09 +01:00
Daniel Evans
5721333fb0
Overhaul script text display with new text logic system.
...
Logic for displaying text now belongs in ScreenText, which will
handle type specific text display.
2016-05-07 18:29:08 +01:00
Daniel Evans
185ba23f05
Fix all compiler warnings in rwengine.
2016-04-28 00:54:42 +01:00
Daniel Evans
b0a2ae4da5
Implement a trivial profiler for perf. overview
2016-04-26 23:35:04 +01:00
Daniel Evans
4fc177d98a
Improve benchmark output
2016-04-20 21:25:48 +01:00
Daniel Evans
3e9b0c64e4
Re-implement object rendering using a depth-sorted approach.
...
This moves the object rendering logic into ObjectRenderer. This makes
GameRenderer a bit smaller.
There are some rendering logic decisions that haven't been brought
back yet since they may be better placed elsewhere.
2016-04-19 01:20:54 +01:00
Daniel Evans
74f0e7f67c
Added Benchmark mode (--benchmark file)
2016-04-18 02:31:52 +01:00
Daniel Evans
aecc43c75b
Fix nans occuring when there was no movement
2016-04-18 00:10:44 +01:00
Daniel Evans
8a5be54b91
Overhaul animation system and character activities
...
Replaces animator with a simpler system that can overlay multiple
animations
Character animation split into two layers, motion and action.
Walking, running and jumping animations are played on the first
layer, actions such as firing can be overlayed on the second.
More work is needed to limit overlap to only the weapons that make
sense.
2016-04-17 04:54:19 +01:00
Daniel Evans
8575408ca2
Fix crash if there is no player object
2016-04-16 14:06:54 +01:00
Daniel Evans
e5dc1105b4
Improve HUD with rounding and CRUISE CONTROL FOR COOL.
2016-04-14 01:21:25 +01:00
Daniel Evans
07f7b19ca2
Make it possible to fire weapons again
2016-04-13 21:16:27 +01:00
Daniel Evans
46621093f9
Initial chase scene implementation, opening cutscene chase works
2016-04-13 01:47:19 +01:00
Daniel Evans
14c33024b7
Add missing break that was preventing sprinting
2016-04-12 01:02:33 +01:00
Daniel Evans
7888f05ca4
Re-implement map rendering with nice circular minimap
2016-04-12 01:02:09 +01:00
Daniel Evans
0548206893
Hide armour and add wanted background to HUD
2016-04-10 19:21:58 +01:00
Daniel Evans
f3dba16f06
Add more elements to the UI: Weapon icon & health
2016-04-10 18:58:34 +01:00
Daniel Evans
42c8e46a34
Fix error in game menu preventing testing from working
2016-04-10 18:58:18 +01:00
Daniel Evans
691bba5dca
New inventory implementation and split char state
2016-04-10 18:57:40 +01:00
Daniel Evans
38c5184639
Implement initial player info UI
2016-04-10 05:53:49 +01:00
Daniel Evans
909f00b079
Clean up game state structure to better match save format
2016-04-09 22:29:32 +01:00
Daniel Evans
d7604531eb
Migrate first save state struct and update loading
2016-04-09 02:21:22 +01:00
Daniel Evans
1df6b5c38f
Add RW_DEBUG and RW_UNIMPLEMETED() macros
2016-04-09 01:28:33 +01:00
Daniel Evans
14269d8ae5
Move first of lower level code into rwlib; tear out GLEW.
2016-04-07 01:13:46 +01:00
Daniel Evans
e2bd2b704e
Fix crash caused by thread clobbering
2015-07-09 18:29:38 +01:00
Daniel Evans
243bfb18a8
Overhaul breakpoint handling
2015-07-09 13:58:14 +01:00
Daniel Evans
5461f1a5bb
Improve debugger functionality and display
...
* Display Breakpoint information
* Current instruction is hilighted
2015-07-07 03:48:32 +01:00
Daniel Evans
4ce275c381
Improve debug server functionality and appearence
2015-07-06 00:54:13 +01:00
Daniel Evans
868883fd36
Add Debugger functionality
...
* Include Angluar JS for UI
* Improve styling slightly
* Add Interrupt/Continue buttons and api URLs
* List of threads when game is paused
2015-07-03 02:52:43 +01:00
Daniel Evans
5344b8bfa1
Merge remote-tracking branch 'origin/rwng-debugger' into rwng-saves
2015-07-02 00:13:32 +01:00
Daniel Evans
49695a2dc6
Further game save loading
...
* Give object types individual id namespaces.
2015-06-24 01:48:26 +01:00
Daniel Evans
7ceaac370c
Load Weapon inventory data from save files
2015-06-14 21:52:47 +01:00
Daniel Evans
77ca5d96ea
Expand Save Game loading to garage data
2015-06-14 18:08:55 +01:00
Daniel Evans
cd7bb3af15
Proof of concept loading save data from save files
2015-06-14 02:44:51 +01:00
Daniel Evans
5399948e05
Merge branch 'rwng' of github.com:danharibo/openrw into rwng
2015-05-18 02:44:56 +01:00
Daniel Evans
69f9e8fea9
Refactor player input from other input
2015-05-18 00:33:06 +01:00
Daniel Evans
228db73c7f
Update readme informations
2015-05-10 23:57:13 +01:00
Daniel Evans
98ce9d90e1
Implement some text based markup
2015-05-09 04:02:15 +01:00
Daniel Evans
fc7642a4d7
Prevent mouse issues when focus is lost
2015-05-09 02:27:07 +01:00
Daniel Evans
8e82604fc3
Fix area indicator rendering.
...
* Increase alpha value from 1/255.
* Don't clear tick data unless the game is updating.
2015-05-09 00:49:28 +01:00
Daniel Evans
ab00f33504
Add multiple camera angles
2015-05-08 23:53:56 +01:00
Daniel Evans
013940c38a
Remove focus check from RWGame tick
2015-05-08 17:54:11 +01:00
Daniel Evans
f9ce9a2057
Overhaul camera behaviour
2015-05-04 04:35:22 +01:00
Daniel Evans
8b18712d1f
Merge branch 'rwng-disassembly' into rwng
...
Conflicts:
rwgame/RWGame.hpp
rwgame/ingamestate.cpp
2015-05-03 23:31:45 +01:00
Daniel Evans
91065b6af4
Initial Save + Load implementation
...
* Fix VM Global Addressing
* Modify VM structures to simplify storage
* Add explicit GameWorld::createPlayer() method
* Move gameTime to GameState for storage
* Add SaveGame class for reading + writing
* New Dependancy: cereal
2015-05-03 05:23:44 +01:00
Daniel Evans
a7da8ea424
Remove raw GameObject pointer usage in GameState
2015-05-01 03:53:42 +01:00
Daniel Evans
8d1c7e802d
Add RWGame::hasFocus(), fix mouse warping
2015-05-01 00:46:20 +01:00
Daniel Evans
5d3ac6218e
Implement Game Object ID allocation
2015-04-29 21:03:53 +01:00
Daniel Evans
25f62a0a47
Refactor GameWorld into GameState
...
+ GameState now contains a GameWorld point to store the runtime world
data
2015-04-27 15:31:39 +01:00
Daniel Evans
0507bfdae6
Fix Dynamic objects not visually moving
2015-04-27 04:12:58 +01:00
Daniel Evans
85b1ab120f
Move GameState out of GameWorld ownership
2015-04-27 03:55:18 +01:00
Daniel Evans
1daa5a6fb2
Move GameObject to objects directory
2015-04-27 02:09:56 +01:00
Timmy Sjöstedt
db8e4ea1aa
Pass HTTP method & path to dispatch()
2015-04-25 01:10:01 +02:00
Timmy Sjöstedt
a697ec382e
Parse the first line in the HTTP request
2015-04-25 01:09:40 +02:00
Timmy Sjöstedt
dc9c4c3b72
Accept incoming connections in a loop
2015-04-25 01:08:19 +02:00
Timmy Sjöstedt
fc0777717e
Refactored handling request to separate method
2015-04-24 22:59:10 +02:00
Daniel Evans
5db4c28f04
Refactor Object Definition information to GameData
2015-04-24 18:10:42 +01:00
Daniel Evans
4b2fbbd3d8
Fix AI Graph discombobulation and debug rendering
2015-04-20 02:19:30 +01:00
Timmy Sjöstedt
efadffb03b
Spool up a HttpServer thread on script start
2015-04-19 22:38:01 +02:00
Timmy Sjöstedt
31b625d391
Started implementing HttpServer
2015-04-19 22:37:13 +02:00
Daniel Evans
e04f9a8d40
Move GameData from GameWorld
2015-04-18 01:11:17 +01:00
Daniel Evans
367b40d868
Merge branch 'rwng' of bitbucket.org:danharibo/openrw into rwng
2015-04-14 10:33:16 +01:00
Daniel Evans
97afc19cfb
Add Improved Profiling statistics
2015-04-12 19:47:47 +01:00
Daniel Evans
9eb1a415c5
Convert debug times to milliseconds
2015-04-11 02:21:15 +01:00
Daniel Evans
4cf36b8fd6
Add more rendering metrics for GL performance
2015-04-09 23:54:56 +01:00
Timmy Sjöstedt
2db7c7e01f
Fixed Average FPS counter not resetting variable.
2015-04-06 21:02:12 +02:00
Timmy Sjöstedt
230b6d9a85
Added jumps to Garage & Airport
2015-04-05 20:07:17 +02:00
Timmy Sjöstedt
7838f75947
Display average frametime & FPS over n frames
2015-04-05 20:06:15 +02:00
Daniel Evans
5b065615f3
Improve Loading screen
2015-04-05 02:12:54 +01:00
Daniel Evans
66b7c878c1
Improve game text behaviour
...
* Fix messages not being cleared
* Implemented clearing help messages
2015-04-05 02:08:51 +01:00
Daniel Evans
2e9962ef26
Re-implement functional character jumping
2015-04-04 21:50:08 +01:00
Daniel Evans
27c6afba31
Improve character dynamics, step behaviour
2015-04-04 21:23:53 +01:00
Daniel Evans
2f2e099ca6
Merge ClosestNotMeRaycastCallback into header
2015-04-04 20:00:59 +01:00
Daniel Evans
12f717c67e
Implement raycast camera - world collisions
2015-04-04 18:34:35 +01:00
Daniel Evans
a54e4a384e
Improve test state
...
* Move test spawn to the parking garage
* Add --test option to start a new testing session
* Add information about camera position to DebugState
2015-04-04 17:48:36 +01:00
Daniel Evans
159510cace
Add breakpoints to ScriptMachine, remove from GameWorld.
...
+ Adds breakpoints on program counter values to the ScriptMachine.
+ Adds breakpoint handler for acting on breakpoints
+ Remove GameWorld::script and make RWGame responsible for script
2015-04-04 03:12:28 +01:00
Daniel Evans
95b6e6a676
Improve pausing behaviour with State::shouldWorldUpdate()
2015-04-03 15:38:24 +01:00
Daniel Evans
bc54fac53a
Merge branch 'rwng' of bitbucket.org:danharibo/openrw into rwng
...
Conflicts:
rwgame/RWGame.cpp
2015-04-03 03:17:14 +01:00
Timmy Sjöstedt
1010861d0d
Removed weird angle calculation that broke the camera in vehicles.
2015-04-03 03:07:08 +01:00
Daniel Evans
b672e41acf
Remove Logger ownership from GameWorld
2015-04-03 03:07:08 +01:00
Timmy Sjöstedt
3b73621aab
Fixed passing int instead of float to glm::radians
2015-04-03 03:07:08 +01:00
Timmy Sjöstedt
59f7ca8b35
Fixed camera to take Y mouse movement into account.
...
TODO: Make camera not intersect world geometry and other objects.
2015-04-03 03:07:08 +01:00
Timmy Sjöstedt
4af866c92e
Added default 90° FOV.
2015-04-03 03:07:08 +01:00
Daniel Evans
49a8b9b2f4
Change how draw calls are counted
2015-04-03 03:07:08 +01:00
Daniel Evans
6851c5e011
Improve graphics performance
...
+ Add Framebuffer rendering to store data
+ Re-implement water using projected grid aproach
2015-04-03 03:07:07 +01:00
Daniel Evans
f655e454d6
Implement new VisualFX system for particles etc.
...
- VisualFX stores data about effects like particles and lighting
- Only particles initial implementation
- World stores active VisualFX
2015-04-03 03:04:50 +01:00
Daniel Evans
d1e7dcdcd1
Overhaul Loader framework for Models
...
- Replace background model loader with generic background loader
- Replace ModelHandle object with generic resource handle
2015-04-03 03:04:50 +01:00
Daniel Evans
ce4b8fc83a
Remove old file indexing system and IO handling
...
- Use FileIndex inside GameData to handle normalisation
- Remove old raw pointer API for loading data
2015-04-03 03:04:50 +01:00
Daniel Evans
a967e190de
Remove GameRenderer from GameWorld
...
- Particle rendering is broken, since objects can't access renderer
2015-04-03 03:04:50 +01:00
Daniel Evans
dfd68abd8e
Add new Logger system.
...
- Supports multiple log recievers.
- Onscreen log needs to be re-written.
- Replaces GameWorld::logX().
2015-04-03 03:04:50 +01:00
Daniel Evans
3801e69e81
Improve TextRenderer kerning and performance
2015-04-03 02:56:37 +01:00
Daniel Evans
c3debe530f
Add --newgame switch to RWGame
...
+ Starts the game script execution without showing the menu
2015-04-03 01:26:20 +01:00
Daniel Evans
90eb909273
Minor vehicle camera improvements
2015-04-01 05:05:21 +01:00
Timmy Sjöstedt
290933d197
Removed weird angle calculation that broke the camera in vehicles.
2015-03-30 14:31:00 +02:00
Daniel Evans
3975816164
Remove Logger ownership from GameWorld
2015-03-30 02:45:58 +01:00
Timmy Sjöstedt
bc325b8857
Fixed passing int instead of float to glm::radians
2015-03-30 02:03:44 +02:00
Timmy Sjöstedt
7729ae171d
Fixed camera to take Y mouse movement into account.
...
TODO: Make camera not intersect world geometry and other objects.
2015-03-30 01:47:10 +02:00
Timmy Sjöstedt
4b915d5271
Added default 90° FOV.
2015-03-30 01:46:41 +02:00
Daniel Evans
980ef71e96
Change how draw calls are counted
2015-03-28 13:54:28 +00:00
Daniel Evans
30e059a0b6
Improve graphics performance
...
+ Add Framebuffer rendering to store data
+ Re-implement water using projected grid aproach
2015-03-28 13:42:29 +00:00
Daniel Evans
2985a70354
Implement new VisualFX system for particles etc.
...
- VisualFX stores data about effects like particles and lighting
- Only particles initial implementation
- World stores active VisualFX
2015-03-06 16:55:46 +00:00
Daniel Evans
46cd7b8f51
Overhaul Loader framework for Models
...
- Replace background model loader with generic background loader
- Replace ModelHandle object with generic resource handle
2015-03-06 04:38:22 +00:00
Daniel Evans
dfe6ec3eaa
Remove old file indexing system and IO handling
...
- Use FileIndex inside GameData to handle normalisation
- Remove old raw pointer API for loading data
2015-03-06 01:40:29 +00:00
Daniel Evans
cf0c37dcc2
Remove GameRenderer from GameWorld
...
- Particle rendering is broken, since objects can't access renderer
2015-03-05 16:36:14 +00:00
Daniel Evans
536b3f9f0c
Add new Logger system.
...
- Supports multiple log recievers.
- Onscreen log needs to be re-written.
- Replaces GameWorld::logX().
2015-03-05 03:37:13 +00:00
Daniel Evans
cdff0aa275
Handle window close event
2015-02-26 02:06:43 +00:00
Daniel Evans
fe4926e5d6
Add object lifetime values, clean up spawned traffic
2015-02-18 16:00:55 +00:00
Daniel Evans
9407ee3135
Add test implementation of pedestrian spawning
2015-02-18 15:29:39 +00:00
Daniel Evans
f9382af485
Add frametime and FPS to debug stats
2015-02-16 00:44:30 +00:00
Daniel Evans
b59c689a5e
Improve timestep and clock handling
2015-02-16 00:39:19 +00:00
Daniel Evans
be023b5093
Overhaul texture handling, add TextureData handles.
...
+ Use shared ptrs to track loaded texture handles
+ Cache textures on models to avoid lookups
2015-02-16 00:36:11 +00:00
Daniel Evans
9eb4c62a04
Improve HUD and UI rendering
...
+ Add names for some styles to reduce confusion
+ Move some HUD drawing into a seperate file
2015-02-15 12:41:51 +00:00
Daniel Evans
9855bf2967
Improve map rendering, UI viewport
...
+ UI Viewport is now window sized
+ Map renderer now supports rotating
2015-02-15 01:41:24 +00:00
Daniel Evans
2344024f08
Text rendering
2015-02-07 22:55:06 +00:00
Daniel Evans
538d0c02f9
Add city.wav
2015-02-04 17:16:46 +00:00
Daniel Evans
441109bc99
Add fullscreen option
2015-01-30 10:07:53 +00:00
Daniel Evans
854228e91b
Re-implement -w and -h window size arguments
2015-01-30 10:04:25 +00:00
Daniel Evans
dda2d5a245
Make disable input opcode take effect
2015-01-27 15:25:45 +00:00
Daniel Evans
d5a906eb3f
Increase FOV while cinematic mode is set
2015-01-27 13:59:09 +00:00
Daniel Evans
0d730547fa
Fix issues with HUD and widescreen mode
2015-01-26 01:32:21 +00:00
Daniel Evans
87ca358717
Adjust game map a little more
2015-01-25 18:42:29 +00:00
Daniel Evans
cbebbbed87
Minor adjustments to the map
2015-01-25 18:31:22 +00:00