Christoph Oelckers
5cfac78116
- added write barriers to the menu code.
...
The GC was causing some crash issues with the items not having been subjected to a write barrier.
2017-02-05 01:52:09 +01:00
Magnus Norddahl
4172d70d95
Make Frozen Time rendering 4 times faster by grouping draw segments in batches of 100 (old algorithm processed 32000 draw segs per sprite!)
2017-02-05 00:42:42 +01:00
Christoph Oelckers
470dc138c6
- got rid of all DTA_Translation uses.
2017-02-05 00:17:29 +01:00
Christoph Oelckers
dadc8e2ec2
- removed all uses of DTA_Translation except for the single one that passes a custom built table.
...
This means that with the exception of 3 pointers the DrawTexture interface only accepts numeric values now.
Still need to get rid of the last 3 to have this ready for scripting.
2017-02-04 23:26:28 +01:00
Christoph Oelckers
d50e52ea59
- use DrawChar to draw font characters instead of calling DrawTexture directly.
...
Mostly done to remove uses of DTA_Translation.
2017-02-04 22:50:23 +01:00
Christoph Oelckers
6dea3eef8e
- exported DrawTexture to scripting.
...
This uses templates to avoid source duplication of ParseDrawTextureTags. Not tested yet.
2017-02-04 22:09:49 +01:00
Magnus Norddahl
bf6ab1efc8
Clip sprites by thread slice
2017-02-04 21:55:56 +01:00
Magnus Norddahl
d1cbb76b63
Only render player sprites on main thread
2017-02-04 21:00:05 +01:00
Magnus Norddahl
beae9a3dc7
Stop using validcount for sprites
2017-02-04 20:32:06 +01:00
Christoph Oelckers
a102807737
- atags for null pointers have no meaning so do not assert on them.
2017-02-04 19:37:19 +01:00
Magnus Norddahl
cfe4c55973
Remove software renderer internals from F3DFloor
2017-02-04 19:13:56 +01:00
alexey.lysiuk
e8c2444ddd
Fixed compilation with GCC/Clang
...
error: use of undeclared identifier 'op'
error: no matching function for call to 'ListEnd'
error: no matching function for call to 'ListGetInt'
error: no matching function for call to 'ListGetDouble'
...
2017-02-04 18:10:30 +02:00
Magnus Norddahl
8ad132b64f
Execute scene slices on worker threads
2017-02-04 16:45:36 +01:00
Christoph Oelckers
d662cece15
- fixed calculations in AdjusrPlayerAngle.
2017-02-04 16:44:43 +01:00
Christoph Oelckers
ec15c7f4c3
- removed the fatal errors for invalid actor->movedir.
...
These can be silently mapped to DI_NODIR to let the engine get the actor back on track.
2017-02-04 16:29:01 +01:00
Christoph Oelckers
43d759782d
- fixed: Stack based local VM object pointers should not be subjected to a read barrier.
...
This isn't done for register based variables so for consistency it should not be done for stack based variables, too.
This difference in handling made it impossible to check the target of a hitscan attack if it was destroyed by getting damaged.
2017-02-04 16:23:14 +01:00
Magnus Norddahl
d9e545a519
Hook up thread slices and eliminate some statics hiding in misc functions
2017-02-04 15:51:54 +01:00
Magnus Norddahl
f50532af8a
Reorder scene setup to do the stuff that can't be threaded first
2017-02-04 14:20:58 +01:00
Magnus Norddahl
5bae06a3c6
Make RenderScene the work dispatching class
2017-02-04 14:00:21 +01:00
Magnus Norddahl
5105a5d254
Fix msvc compile error
2017-02-04 13:43:39 +01:00
Christoph Oelckers
d3ed83942f
- did some preparations to ParseDrawTextureTags to allow using the same code for parsing tag lists generated by the VM.
...
- removed the fixed point alpha tag from DrawTexture and replaced all uses with the floating point version.
2017-02-04 13:11:12 +01:00
Magnus Norddahl
6f5e720576
Split drawer command queue from drawer threads
2017-02-04 12:38:05 +01:00
ZZYZX
b833f5a852
Merge remote-tracking branch 'gz/master' into thereisnospoon
2017-02-04 10:27:37 +02:00
Rachael Alexanderson
ebb8da563a
Merge https://github.com/coelckers/gzdoom
2017-02-04 02:56:18 -05:00
Magnus Norddahl
45f623faf4
Move frame memory allocator into RenderThread
2017-02-04 02:50:52 +01:00
Christoph Oelckers
abac756289
- exported some stuff for fonts and screen size that will be needed for the menus.
2017-02-04 00:46:22 +01:00
Magnus Norddahl
627a388d57
Move renderer singletons into a RenderThread class
2017-02-04 00:25:37 +01:00
Christoph Oelckers
d5b908186c
- some work on the base classes for menus. None of this is being used yet.
2017-02-04 00:19:25 +01:00
Christoph Oelckers
8578a5a12e
- added a 'new' intrinsic to create new objects from inside scripts.
...
This is not tested yet and likely to not working correctly yet. Will be fixed once I get far enough to use it later.
2017-02-03 22:56:03 +01:00
Christoph Oelckers
d5962b290c
- turned all menu items into actual objects.
...
This is needed for script export.
2017-02-03 21:35:42 +01:00
Magnus Norddahl
4fadc4e9a3
Fix typo
2017-02-03 21:25:51 +01:00
Magnus Norddahl
da346427d3
Change draw segment list to use TArray
2017-02-03 21:11:55 +01:00
alexey.lysiuk
c6e42d6fa0
Added handling of modifier keys for mouse events in Cocoa backend
2017-02-03 22:01:34 +02:00
alexey.lysiuk
f04b0d129d
Removed useless assignment in Cocoa backend
2017-02-03 21:56:14 +02:00
ZZYZX
eb7548d639
Printf doesn't work with FString on GCC
2017-02-03 20:54:42 +02:00
ZZYZX
b18b71c065
Mouse coordinates for UI mouse events are actually data1/data2, not x/y
2017-02-03 20:49:45 +02:00
ZZYZX
f816537992
Setting Order directly (while the event handler is registered) will result in all sorts of broken behavior. Made readonly.
2017-02-03 20:44:27 +02:00
ZZYZX
03f7c39ea7
Fixed mouse input in event handlers. Added RequireMouse field in event handler to signify that native mouse should be turned on for certain handlers.
2017-02-03 20:34:34 +02:00
ZZYZX
08f1731ded
Added keyboard modifiers for mouse events in SDL backend.
2017-02-03 17:39:26 +02:00
ZZYZX
b4565c3800
Exposed Shift/Ctrl/Alt to the scripts
2017-02-03 16:15:53 +02:00
Christoph Oelckers
82eae78f7e
- fixed a small memory leak in the texture manager.
2017-02-03 13:11:55 +01:00
ZZYZX
0d96517f5f
Implemented RenderOverlay hook that executes directly after level and statusbar
2017-02-03 13:29:34 +02:00
ZZYZX
6a0103a746
Merged p_setup conflict
2017-02-03 13:02:44 +02:00
ZZYZX
b45af599c5
Explicit handler deinitizliation in P_Shutdown and P_FreeLevelData
2017-02-03 13:01:15 +02:00
ZZYZX
9bb4cf1c03
User input events first take
2017-02-03 12:28:40 +02:00
Christoph Oelckers
075cce98c4
- fixed: PlayerPawn.GetEffectTicsForItem read the duration from the wrong actor.
2017-02-03 10:41:38 +01:00
Christoph Oelckers
a5f417b1e5
- removed all uses of BYTE as function return value or functio parameter from the dynamic light code.
...
These were truncating the actual light values.
2017-02-03 10:13:41 +01:00
Magnus Norddahl
812cc61b16
Fix some typos
2017-02-03 09:08:00 +01:00
Magnus Norddahl
892350ac2e
Add functions to CameraLight
2017-02-03 09:00:46 +01:00
Magnus Norddahl
a0a40281b3
Simplify skyplane light selection
2017-02-03 08:19:59 +01:00