1
0
mirror of https://github.com/rwengine/openrw.git synced 2024-11-22 18:32:44 +01:00
Commit Graph

173 Commits

Author SHA1 Message Date
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
Daniel Evans
87435a2576 Add map renderer and ingame radar display 2015-01-25 18:25:55 +00:00
Daniel Evans
1961661d14 Implement visible goals for locating characters 2015-01-23 17:18:16 +00:00
Daniel Evans
6890572542 Disable debug rendering of doors 2015-01-23 12:25:40 +00:00
Daniel Evans
4ea6e14299 Improve vehicle door dynamics
+ Vehicle doors should move in the right direction now
+ Fix debugging draw class for bullet
2015-01-22 20:16:28 +00:00
Daniel Evans
3f40ba0e18 Add AI Goal system, FollowLeader goal.
+ Add support for setting leader, e.g. Misty follows you during "Luigi's Girls".
2015-01-22 15:00:30 +00:00
Daniel Evans
0c84873be2 Add more opcodes, can now finish mission 1 2015-01-22 11:11:16 +00:00
Daniel Evans
185687b1b5 Add and improve functionality for first mission.
+ Improve GoTo activity behaviour, jumping to target.
+ Fixed crash on non-existing audio file
+ Added correct conditional flag to conditional opcodes
+ Fixed seat state on exit from non 0th seat
+ Implement many opcodes
2015-01-21 20:40:31 +00:00
Daniel Evans
ed62b758d2 Implement more opcodes
* Is Vehicle Flipped, Create character in vehicle, get time of day and many more
2014-12-17 22:53:25 +00:00
Daniel Evans
f3adc5ea5a Improve Help Box display 2014-12-17 14:38:27 +00:00
Daniel Evans
e3c78fd09c Add more opcodes 2014-12-17 00:39:52 +00:00
Daniel Evans
7963becbd1 Add more opcodes and vehicle handling 2014-12-16 19:17:22 +00:00
Daniel Evans
2709e7d252 Implement and declare more opcodes 2014-12-16 03:30:51 +00:00
Daniel Evans
7e4dea5139 More Script Engine improvements and fixes
* Implement and declare many more opcodes
* Fix incorrect behaviour of If / else jump constructs.
2014-12-16 03:03:15 +00:00
Daniel Evans
a55bcc557d Implement some AI and zone opcodes
* Add disabled flag to AI nodes

* Move ZoneData structure into own file

* Add Gang density to ZoneData.
2014-12-16 03:03:04 +00:00
Daniel Evans
d3a3436a09 Improve vehicle camera 2014-12-14 23:21:30 +00:00
Daniel Evans
27104f7b79 Add Jump activity to improve jump dynamics 2014-12-13 01:24:06 +00:00
Daniel Evans
b444e0da04 Add time control debug keys 2014-12-13 00:59:09 +00:00
Daniel Evans
17a649f045 Fix crash at exit due caused by rendering to closed window 2014-12-11 18:11:36 +00:00
Daniel Evans
cfca1cbdc8 Refactor Object data into heirarchy
+ All Object Data classes inheirt from ObjectInformation which stores
  the ID and class_type, which maps to the IDE name.
- Remove all object mappings except for objectTypes, which now stores
  all of them.
2014-09-17 03:13:02 +01:00
Daniel Evans
f47fad4bc2 Move game code into RWGame class and refactor 2014-09-16 19:22:43 +01:00
Daniel Evans
668848952b Initial rendering refactor 2014-08-22 14:29:46 +01:00
Daniel Evans
4d78cacd84 Improve CMake detection of platform libraries 2014-08-16 23:02:34 +01:00
Timmy Sjöstedt
460473f461 Link OpenGL with CMake find package. 2014-08-16 00:20:13 +02:00
Timmy Sjöstedt
a854a11dc3 Added linking to iconv
TODO make it cmake-y
2014-08-16 00:19:04 +02:00
Timmy Sjöstedt
dfafa9e218 Fixed Bullet include paths. 2014-08-15 23:49:58 +02:00
Daniel Evans
ba7eb63941 Refactor and cleanup camera control.
rwengine
+ Make renderWorld() take a ViewCamera parameter.
+ add rotation and getView to ViewCamera
+ correct directions for vehicle and character movement.

rwgame
+ Remove GenericState
+ Add State::getCamera() to control the ViewCamera used for rendering
+ Clean up state camera control
+ Remove now unused view parameters from main
2014-08-12 21:15:26 +01:00
Timmy Sjöstedt
e504118e5b Fixed mouse control being doubly inverted. 2014-08-11 22:16:44 +02:00
Daniel Evans
ed38fb48fc Remove unused option 2014-08-11 20:09:56 +01:00
Daniel Evans
b1c82e3582 Fix compilation under clang, fix majority of warnings 2014-08-11 17:58:43 +01:00
Daniel Evans
d270b75141 Improve rendering performance
+ Fix some bad values for glActiveTexture()
+ Move work processing queue into update() to avoid clogging the render
  thread
+ Add some extra values for frames and geometry drawn
2014-08-03 13:37:11 +01:00
Daniel Evans
6a1dacaa54 Implement object opacity and instance fade-out 2014-08-02 21:35:58 +01:00
Daniel Evans
8c224c0c85 Improve display of debug text 2014-08-01 22:22:49 +01:00
Daniel Evans
c7256e60fb Implement fade to splash screen 2014-08-01 22:03:00 +01:00
Daniel Evans
97ad0414f7 Add Cutscene Audio, via libmad
+ MADStream probably needs a good look over, for saftey's sake
2014-08-01 21:04:58 +01:00
Daniel Evans
a3764efdfd Normalize FOV with aspect ratio 2014-08-01 15:48:05 +01:00
Daniel Evans
4214162ed0 Implement some text related opcodes 2014-07-30 15:48:51 +01:00
Daniel Evans
aa841c0ed3 Merge branch 'script-tool'
Conflicts:
	rwengine/include/engine/GameObject.hpp
	rwengine/include/engine/GameWorld.hpp
	rwengine/include/render/GameRenderer.hpp
	rwengine/src/render/GameRenderer.cpp
2014-07-30 13:55:39 +01:00
Daniel Evans
688ee493b4 Add GXT loading support and i18n of prints. 2014-07-28 06:20:39 +01:00
Daniel Evans
5b9c95d346 Add Initial Cutscene playback implementation
+ Add CutsceneData structures to store the data required.
+ Implement screen fading in and out (todo: splash screen fading)
+ Add GameData::openFile2() returns a handle to open file memory + size
+ Fix fog implementation
+ Add screenspace rect to GameRenderer for fades and cinematics
2014-07-28 02:27:55 +01:00
Daniel Evans
3c665e7d2b Add many opcodes, implement some of them.
+ Fix thread-relative jumps
+ GameObject::setHeading(degrees) sets object rotation from a heading.
+ Add More GameState from opcodes.
+ Decouple game hours from the engine clock
+ Add VehicleObject::setRotation()
+ Add GameWorld::getGroundAtPosition(pos) for OpCodes
+ Fix Handling of fixed-point SCM parameters
+ Update IngameState to use GameState::player if it exists
+ Add skip-time button to skip opening cutscene (F12)
2014-07-27 00:44:21 +01:00
Daniel Evans
c3e2172f3b Initial Script Machine implementation + some ops 2014-07-23 23:57:21 +01:00
Daniel Evans
c35c2c636a Add thrown projectiles, support for queued deletion 2014-07-20 21:21:51 +01:00
Daniel Evans
f8f17db68f add ProjectileObject with support for grenades 2014-07-14 01:29:05 +01:00
Daniel Evans
a8c2312b87 Add corona to pickups 2014-07-09 22:28:25 +01:00
Daniel Evans
4c9e2cb24b Remove and re-home debug functionality
Remove the unused command list from rwgame
2014-07-09 20:47:20 +01:00
Daniel Evans
b8860722fd Further implement weapons and pickups
Inventory can now by cycled
Weapon Pickups are created infront of the spawn
2014-07-04 21:06:56 +01:00
Daniel Evans
aa7f77009c Refactor objects into a single set to DRY 2014-07-01 23:04:23 +01:00
Daniel Evans
0214a29ca3 Implement character inventory items, with weapon 2014-06-29 22:14:46 +01:00
Daniel Evans
3ccf5ebaa2 Door and bonnet dynamics 2014-06-20 00:47:45 +01:00
Daniel Evans
27cc58e510 Add camera raycast to prevent camera clipping through world 2014-06-19 17:58:45 +01:00
Daniel Evans
74d6bed7f3 Improve vehicle dynamics
Decrease margin on vehicles and world to mitigate poping
Improve frame damage response
2014-06-18 23:05:59 +01:00
Daniel Evans
4d228e40c7 Improve CMake scripts
Look for bullet using the FindBullet package
2014-06-18 17:07:51 +01:00
Daniel Evans
3a156063d8 Improve renderer and LOD handling 2014-06-17 21:46:54 +01:00
Daniel Evans
9bd39fa89d Improve vehicle behaviour and water interaction 2014-06-17 00:48:19 +01:00
Daniel Evans
7063952d56 Redo uprooting dynamics 2014-06-16 01:29:36 +01:00
Daniel Evans
0a3167d1e9 Refactor shader init and source 2014-06-15 02:12:45 +01:00
Daniel Evans
014bff2a4e Add water dynamics to dynamic instances 2014-06-15 01:34:13 +01:00
Daniel Evans
bec157c598 boat driving force 2014-06-14 20:11:53 +01:00
Daniel Evans
2c16134abd Initial, unstable, water dynamics 2014-06-13 21:54:17 +01:00
Daniel Evans
65b5c84b92 Initial dynamic object implementation 2014-06-11 21:00:53 +01:00
Daniel Evans
04de3c1a8f Fix compiler warnings 2014-06-10 17:51:55 +01:00
Daniel Evans
34478b6651 Fix GLM syntax issue 2014-06-10 17:08:46 +01:00
Daniel Evans
55742a4e11 Debug mode freelook 2014-06-08 22:18:03 +01:00
Daniel Evans
b2e1c0fad2 Improve vehicle dynamics 2014-06-07 04:11:20 +01:00
Daniel Evans
891b12272c Rename more classes to better names 2014-06-06 17:17:39 +01:00