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
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
02838ce3b4
Implement cutscene objects and animations (sans skinning)
...
+ Add CutsceneObject for non-interactive animating objects
+ Implement HIER section to load cutscene object data
2014-07-30 13:46:14 +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
fa3f2cc3ea
Add more opcodes, implement some
2014-07-25 03:38:47 +01:00
Daniel Evans
c3e2172f3b
Initial Script Machine implementation + some ops
2014-07-23 23:57:21 +01:00
Daniel Evans
e0a0c4882f
Refactor Script loading into engine
2014-07-21 00:34:28 +01:00
Daniel Evans
c35c2c636a
Add thrown projectiles, support for queued deletion
2014-07-20 21:21:51 +01:00
Daniel Evans
770a87dd2b
Add correct collision response for molotov + rpg
2014-07-17 01:46:24 +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
e5cc47132f
Initial documentation pass
...
Add a nice doxygen file.
2014-07-09 05:04:48 +01:00
Daniel Evans
67fbc5afa3
Improve weapon and animation dynamics
...
Fix issue with 0-rotation animation frames
Improve weapon shot origin alignment (still bad)
2014-07-09 02:06:59 +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
ddf4bd3585
Fix weird nvidia shader compiler error
2014-07-02 13:26:37 +01:00
Daniel Evans
aa7f77009c
Refactor objects into a single set to DRY
2014-07-01 23:04:23 +01:00
Daniel Evans
3c57d9278c
Refactor object rendering into seperate functions
2014-07-01 22:00:45 +01:00
Daniel Evans
0e48687c27
InventoryItem virtual dtor
2014-06-30 02:19:40 +01:00
Daniel Evans
39cf86f056
Improve vehicle and item interaction
2014-06-30 02:18:02 +01:00
Daniel Evans
799127f8f8
Implement weapon firing, debug tracers
2014-06-30 01:56:45 +01:00
Daniel Evans
0214a29ca3
Implement character inventory items, with weapon
2014-06-29 22:14:46 +01:00
Daniel Evans
87a04d9119
Added weapon scan for HITSCAN
...
WeaponScans contain data required to affect objects in the world with
weapon damage
2014-06-28 03:22:53 +01:00
Daniel Evans
1244a87665
Add weapon data loading
2014-06-26 17:55:17 +01:00
Daniel Evans
a4591695e9
Flatten low quality water
2014-06-25 01:12:32 +01:00
Daniel Evans
3ccf5ebaa2
Door and bonnet dynamics
2014-06-20 00:47:45 +01:00
Daniel Evans
8cbf1eaefe
Animator procedural frame orientation
2014-06-19 19:18:34 +01:00
Daniel Evans
15c41d137d
Improve material rendering, fix texture loading
2014-06-19 16:31:01 +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
abf91c9a3c
Fix world <=> Vehicle <=> vehicle collision
2014-06-18 07:32:08 +01:00
Daniel Evans
692cfaa335
Fix texture lookup index
...
Alpha texture name is actually important.
2014-06-18 06:59:24 +01:00
Daniel Evans
9f257ea4c4
Animator update and vehicle frame damage
...
Refactor Animator to handle frame visibility, removing isFrameVisible()
Make frames be removed if they are damaged due to physics.
2014-06-18 05:08:15 +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
4ce4465cc7
Fix vehicle collision triangles
2014-06-16 01:39:44 +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
d437e9697e
Improve water dynamics and rendering
2014-06-14 18:48:14 +01:00
Daniel Evans
2c16134abd
Initial, unstable, water dynamics
2014-06-13 21:54:17 +01:00
Daniel Evans
77aa71df7e
Improve water rendering
2014-06-12 00:15:05 +01:00
Daniel Evans
65b5c84b92
Initial dynamic object implementation
2014-06-11 21:00:53 +01:00
Daniel Evans
0cdbb0c09c
Fix multi-clump LOD instances
2014-06-10 20:53:50 +01:00
Daniel Evans
04de3c1a8f
Fix compiler warnings
2014-06-10 17:51:55 +01:00
Daniel Evans
e060b6d0b1
Fix root frame index bug
2014-06-08 22:40:46 +01:00
Daniel Evans
208a2a9897
Primitive water rendering
2014-06-08 19:04:47 +01:00
Daniel Evans
62d2658c2d
Limit vehicle top speeds
2014-06-07 16:38:33 +01:00