Daniel Evans
e04f9a8d40
Move GameData from GameWorld
2015-04-18 01:11:17 +01:00
Daniel Evans
8ff137017c
Simplify Character Movement
2015-04-14 23:03:34 +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
1827b9cca3
Restore rwviewer to functional state
2015-04-13 01:48:29 +01:00
Daniel Evans
97afc19cfb
Add Improved Profiling statistics
2015-04-12 19:47:47 +01:00
Daniel Evans
4cf36b8fd6
Add more rendering metrics for GL performance
2015-04-09 23:54:56 +01:00
Daniel Evans
a0446c0ead
Fix pedestrians spawning on vehicle nodes
2015-04-06 18:59:37 +01:00
Daniel Evans
dd7e487a55
Improve DrawParameters to support multiple textures
2015-04-06 14:36:23 +01:00
Daniel Evans
3afc5e38fe
Add grouping of gl calls with KHR_debug
2015-04-06 13:43:53 +01:00
Daniel Evans
c6664a5a2d
Improve static InstanceObject rendering performance
...
* Cull against a grid instead of free objects
* Async model loading is disabled as model bounds are required
2015-04-06 04:06:35 +01:00
Daniel Evans
4573b88a5a
Improve AIGraph performance with a grid-based index
2015-04-05 21:35:45 +01:00
Daniel Evans
861f36bdde
Improve TrafficDirector performance with character list
2015-04-05 18:45:03 +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
c7376273b4
Change handling again
2015-04-05 01:34:11 +01:00
Daniel Evans
bfd85878fd
Fix dynamic parts when warping vehicles
2015-04-04 21:59:03 +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
2f2551bc47
Improve vehicle handling
2015-04-04 20:32:43 +01:00
Daniel Evans
6b38a3e267
Move CollisionInstance into dynamics
2015-04-04 20:11:48 +01:00
Daniel Evans
2f2e099ca6
Merge ClosestNotMeRaycastCallback into header
2015-04-04 20:00:59 +01:00
Daniel Evans
1d3bcfe42b
Optimise AI graph construction and traffic spawning
2015-04-04 17:03:06 +01:00
Daniel Evans
7a62c25fbc
Add pedestrian population limit to TrafficDirector
2015-04-04 15:05:16 +01:00
Daniel Evans
853623e7f2
Regenerate Character skeleton on Model change
2015-04-04 14:13:04 +01:00
Daniel Evans
e5e4345170
Document ScriptMachine debugging methods
2015-04-04 13:53:11 +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
a20d170d16
Optimize AIGraph Slightly
2015-04-03 16:15:58 +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
Daniel Evans
8b1f539b12
Add LoaderDFF normal calculation for models without
2015-04-03 03:07:08 +01:00
Timmy Sjöstedt
33e9920b48
Initialized physRaycater to null, as to not delete an uninitialized pointer later.
2015-04-03 03:07:08 +01:00
Daniel Evans
e50f2226a9
Implement opcode
2015-04-03 03:07:08 +01:00
Daniel Evans
b672e41acf
Remove Logger ownership from GameWorld
2015-04-03 03:07:08 +01:00
Daniel Evans
b280aac859
Remove unused struct from GameWorld
2015-04-03 03:07:08 +01:00
Daniel Evans
97807f24b7
Add method to retrieve current draw settings from Renderer
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
c264e78696
Replace most cout/cerr prints with logging output
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
abf43f07c8
New File handling implementation
...
- move FileHandle into a separate header
- Implement FileIndex, a system to normalize filenames and sources
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
a773262328
Fix crash in SoundManager when pausing
2015-04-03 01:26:55 +01:00
Daniel Evans
4faf07cba3
Fix character inWater behaviour
2015-04-01 04:36:52 +01:00
Daniel Evans
15e2082ebc
Add LoaderDFF normal calculation for models without
2015-03-30 22:16:43 +01:00
Timmy Sjöstedt
b55cda56b1
Initialized physRaycater to null, as to not delete an uninitialized pointer later.
2015-03-30 18:25:58 +02:00
Daniel Evans
b9462e077d
Implement opcode
2015-03-30 03:34:03 +01:00
Daniel Evans
3975816164
Remove Logger ownership from GameWorld
2015-03-30 02:45:58 +01:00
Daniel Evans
798b24ae83
Remove unused struct from GameWorld
2015-03-30 02:03:38 +01:00
Daniel Evans
78253c59ce
Add method to retrieve current draw settings from Renderer
2015-03-29 23:18:27 +01: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
7e83b815c4
Replace most cout/cerr prints with logging output
2015-03-05 17:29:33 +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
25f28dbb42
New File handling implementation
...
- move FileHandle into a separate header
- Implement FileIndex, a system to normalize filenames and sources
2015-02-26 03:57:28 +00:00
Daniel Evans
7f2c5a4645
Initial Traffic wandering algorithm (pedestrians only)
2015-02-26 01:15:17 +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
2ccc1fc33c
Add initial TrafficDirector open spawn point methods
2015-02-17 01:31:20 +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
6cd36bda43
Add arrow above blip target objects / coordinates
2015-01-29 22:39:26 +00:00
Daniel Evans
eed2377e50
Improve vehicle dynamics
...
- Fix bouyancy not working at all
- Make it difficult to flip a vehicle going around corners
2015-01-28 01:55:35 +00:00
Daniel Evans
dda2d5a245
Make disable input opcode take effect
2015-01-27 15:25:45 +00:00
Daniel Evans
7568eb8d7f
Declare opcodes needed to start Luigi mission 2
2015-01-27 15:21:36 +00:00
Daniel Evans
6a4afea4e6
Make it possible to start the 2nd Luigi mission
2015-01-27 15:02:10 +00:00
Daniel Evans
6e1739138d
Add big print with number
2015-01-27 13:59:02 +00:00
Daniel Evans
c87a4a7cb1
Re-allocate audio clips when a new clip is loaded
2015-01-27 13:09:16 +00:00
Daniel Evans
abb6576785
Add implementation for more generic pickups
2015-01-27 02:38:08 +00:00
Daniel Evans
206c61e326
Merge branch 'master' of bitbucket.org:danharibo/openrw
2015-01-27 00:50:55 +00:00
Daniel Evans
cafb002d3b
Add more blip opcodes, with sprites
2015-01-27 00:48:09 +00:00
Daniel Evans
5271b6e78b
Merge branch 'master' of bitbucket.org:danharibo/openrw
2015-01-26 14:40:17 +00:00
Daniel Evans
d7d52dc892
Improve cutscenes to load wav audio too
2015-01-26 14:40:09 +00:00
Daniel Evans
0d730547fa
Fix issues with HUD and widescreen mode
2015-01-26 01:32:21 +00:00
Daniel Evans
91cd7c7edd
Add blips and some opcodes
2015-01-26 01:16:25 +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
9f1162a945
Add entering to any passenger seat
2015-01-23 17:54:17 +00:00
Daniel Evans
a0eef23da8
Re-add cutscene widescreen; eject occupants properly
2015-01-23 17:44:28 +00:00
Daniel Evans
1961661d14
Implement visible goals for locating characters
2015-01-23 17:18:16 +00:00
Daniel Evans
da2ae998f9
Implement object visibility control
2015-01-23 12:25:15 +00:00
Daniel Evans
5d41002b36
Further improve vehicle door dynamics
...
+ Rename some part target angle names
+ Improve behaviour of opening and closing doors
+ Use different animations for right hand side of vehicle
2015-01-23 02:03:21 +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
eef4a2d87e
Move object script functions to seperate module
...
Not all script functions involving objects have been moved, some
further movement is expected.
2015-01-19 12:20:35 +00:00
Daniel Evans
39ff9df337
Refactor script system to bind named functions.
...
Replace ugly macros with named functions and binding to script modules
2015-01-16 02:32:31 +00:00
Daniel Evans
698f5a9d91
Fix some Vehicle behaviour
...
* Remove characters from vehicle occupants on destruction
* Fix Player being warped back to vehicle on critical reset
2014-12-18 03:31:09 +00:00
Daniel Evans
857951d7df
Destroy Vehicle Parts that are still active
2014-12-18 02:38:36 +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
ff04daf633
Fix Vehicle Collision objects not being destroyed
2014-12-17 19:31:01 +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
0ddc8458d1
Add vehicle generator data and opcodes.
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
646d0c67fc
Improve Script debugging output messages
2014-12-15 20:44:36 +00:00
Daniel Evans
77f2277a68
Improved vehicle door dynamics with opening doors
2014-12-14 20:45:58 +00:00
Daniel Evans
25a3a0183b
Overhaul vehicle part system with VehicleObject::Part
2014-12-14 01:32:00 +00:00
Daniel Evans
27104f7b79
Add Jump activity to improve jump dynamics
2014-12-13 01:24:06 +00:00
Daniel Evans
13192c8524
Improve animation interpolation
2014-12-13 00:59:23 +00:00
Daniel Evans
e0b0c4f168
Improve animation interpolation
2014-12-12 12:30:23 +00:00
Daniel Evans
330fa56b77
Fix animation test case
2014-12-12 00:36:45 +00:00
Daniel Evans
1fb8162a7c
Fix broken object data test cases
2014-12-11 18:34:39 +00:00
Daniel Evans
584618e991
Overhaul animation support with Skeleton class.
...
Move frame transform data into Skeleton instead of Animator.
Animator now responsible for mutating Skeleton state.
Skeleton is more flexible for things like vehicle skeletons.
2014-12-11 17:48:47 +00:00
Daniel Evans
7d92fbb9f2
Huge rwviewer changes for new objects.
...
+ Change to Object Viewer to list all object types
2014-09-19 00:10:05 +01: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
c3956ac888
Refactor some text data loading to seperate class
2014-09-13 03:29:32 +01:00
Daniel Evans
f7398f17f8
Refactor character movement.
2014-08-26 22:54:26 +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
7dde2af9f3
Added <string> to ScriptTypes.
2014-08-16 00:21:12 +02:00
Timmy Sjöstedt
dd9863bda3
Add numeric header for DFF loader.
2014-08-15 23:58:03 +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
Daniel Evans
2f6417e3d0
Fix crash in InstanceObject::changeModel
2014-08-11 20:12:20 +01:00
Daniel Evans
5aaead1974
Fix potential non-return in LoaderIMG
2014-08-11 18:16:18 +01:00
Daniel Evans
b1c82e3582
Fix compilation under clang, fix majority of warnings
2014-08-11 17:58:43 +01:00
Daniel Evans
97fee9b4a8
Fix many memory leaks code duplication
...
+ Move collision data construction into CollisionInstance
+ CollisionInstance also handles related cleanup
+ Fix leaks from AINodes
2014-08-10 23:31:59 +01:00
Daniel Evans
d2e19fbdb3
Refactor SubGeometry to use a vector for storage
...
+ Use memcpy to populate subgeometry data
2014-08-10 20:09:54 +01:00
Daniel Evans
d0188880d3
Fix various warnings
2014-08-06 00:23:50 +01:00
Daniel Evans
6353822f48
Fix character animation
2014-08-05 15:09:42 +01:00
Daniel Evans
eea4118eed
Change threading in naieve attempt at fixing crash
2014-08-05 13:41:44 +01:00
Daniel Evans
6c78b0c3c5
Refactor DFF Loader, underlying stream handling
...
+ Fix some model related memory leaks
2014-08-04 22:24:37 +01:00
Daniel Evans
be347e88dc
Remove accidentally commited files
2014-08-03 17:51:43 +01:00
Daniel Evans
88008a448b
Improve MADStream code, delay audio start.
2014-08-03 17:50:40 +01:00
Daniel Evans
8d839a9e10
Fix missing variable in ObjectData block
2014-08-03 17:42:31 +01:00
Daniel Evans
5a472941f1
Add more info output on shader compilation, fix shaders
2014-08-03 17:29:53 +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
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
51fa23a04c
Implement more correct behaviour for "switch model" opcode
2014-08-01 15:48:11 +01:00
Daniel Evans
a3764efdfd
Normalize FOV with aspect ratio
2014-08-01 15:48:05 +01:00
Daniel Evans
8ae618913d
Implement more opcodes, fix behaviour in others
...
+ Fix Model reference offsets (indicated by negative values)
+ Fix Create Instance to use SCM models
+ Add Change instance model opcode
2014-08-01 15:00:36 +01:00
Daniel Evans
c0dc78eb2c
Refactor opcodes
2014-08-01 00:33:38 +01:00
Daniel Evans
4214162ed0
Implement some text related opcodes
2014-07-30 15:48:51 +01:00
Daniel Evans
81712a12b1
Use destroyQueued instead of iteration for cutscene cleanup
2014-07-30 13:57:41 +01:00