RoosterDragon
c2b7d9ca5b
Release sheet buffers in SequenceProvider and MapCache.
...
The buffers in SequenceProvider can be freed if Preload is called, since we know everything is loaded. A SequenceProvider is created for each TileSet is use so this saves memory for however many tilesets had been used in the game. This will be at least one for the shellmap, and often more.
The MapCache loading thread is kept alive for 5 seconds after it last generated a map (in anticipation of more requests). Once this time expires the thread is allowed to die, as it is unlikely there will be more requests in the short term. At this time it is ideal to force the changes to be committed to the texture so we can release the buffer. As well as marking the buffer for release, we must access the texture to force the changes stored in the buffer to be written to the texture, after which the buffer can be reclaimed.
Additionally, when starting the MapCache loading thread we must ensure the buffer is created from the main thread since it may query the texture object which has thread affinity. After that the buffer may be modified freely on the loading thread until released.
2014-11-29 12:04:51 +00:00
RoosterDragon
a6f5a21ed4
Made Sheet.Texture into Sheet.GetTexture() since we will want to call it for side-effects.
...
Do the same for Sheet.Data since it has the side effect of generating a buffer.
2014-11-29 12:04:50 +00:00
RoosterDragon
ff16690b86
Lazily generate buffer in Sheet.
...
The managed byte buffer is created on demand, meaning a newly allocated sheet will not waste memory holding onto the buffer until some changes are actually required to be written. This avoids a newly allocated sheet wasting memory on buffers that do not differ from their backing texture.
2014-11-29 12:04:00 +00:00
Matthijs Benschop
2d380c64bd
Implementation of the automated D2k Carryall
...
Closes #2246
2014-11-29 12:17:11 +01:00
Paul Chote
da4599f621
Merge pull request #6638 from DeadlySurprise/tsVqa
...
Tiberian Sun .vqa support
2014-11-29 22:01:28 +13:00
atlimit8
bbd54cb32f
Added IDisabledTrait & rewrote upgrade code using a level-based approach.
...
Upgradeable traits are notified whenever an upgrade of their declared types are granted or revoked. The traits maintain their own internal level counter, which is then used to enable or disable the trait functionality. A trait can register for multiple upgrade types which then all affect the internal level counter.
IDisabledTrait for identifying (and filtering) disabled traits
UpgradableTrait provides an abstract base for traits to support upgrade levels
Added IDisabledTrait support to GlobalButtonOrderGenerator
Includes rework by pchote with alterations.
2014-11-26 05:45:26 -06:00
Matthias Mailänder
f263579158
Merge pull request #6934 from abcdefg30/survival01
...
Ported Survival01 to Lua
2014-11-23 15:17:42 +01:00
Matthias Mailänder
7ad2a57517
Merge pull request #6927 from huwpascoe/actor-fixup
...
Actor properties consistency improved
2014-11-23 14:53:33 +01:00
Matthias Mailänder
b52dbe6c07
Merge pull request #6988 from RoosterDragon/enum-memory
...
Reduce enum memory
2014-11-23 14:48:20 +01:00
abcdefg30
e29adf5f4f
Added proximity triggers
2014-11-23 13:31:39 +01:00
huwpascoe
d313317cf5
Cleaned up the server browser
2014-11-22 21:55:55 +00:00
RoosterDragon
35da7d8a6e
Make the underlying types of TextureChannel and BlendMode enums a byte to save memory.
2014-11-22 18:12:46 +00:00
huwpascoe
a660bb95b5
Actor properties consistency improved
2014-11-21 02:44:05 +00:00
DeadlySurprise
c504383d92
Changed aspect ratio implementation
2014-11-18 22:35:34 +01:00
DeadlySurprise
cdb05537f3
Added tiberian sun vqa file support
2014-11-18 22:35:33 +01:00
DeadlySurprise
b7e3dfc665
Fixed vqa crashes
2014-11-18 18:42:38 +01:00
Oliver Brakmann
4e3f565354
Fix broken orders when actors are selected.
...
Fixes an oversight in #6949 .
2014-11-15 21:00:52 +01:00
obrakmann
2c3b812b26
Merge pull request #6949 from pchote/retire-classic-mouse
...
Retire classic mouse orders
2014-11-15 19:38:32 +01:00
Paul Chote
f5c09121ad
Remove buggy classic mouse orders. Closes #3153 .
2014-11-15 09:40:25 +13:00
Paul Chote
563efd678a
Revert "DevEnableTech now displays from all factions"
...
This reverts commit 5d5f302d07 .
2014-11-15 09:20:04 +13:00
obrakmann
22c2dc56fe
Merge pull request #6931 from Happy0/mono310_workaround
...
Workarounds for a bug in certain versions of Mono (3.10 and certain versions of 3.8) which stops OpenRA building
2014-11-12 20:45:20 +01:00
Gordon Martin
04cbea3792
Desugaring a couple of ternary expressions which prevented OpenRA building on Mono 3.10 and certain versions of the 3.8 series due to a bug in Mono: https://bugzilla.xamarin.com/show_bug.cgi?id=23319
2014-11-11 21:43:33 +00:00
Chris Forbes
551000104d
Merge pull request #6905 from LipkeGu/Dont_query_traits_on_dead_units
...
AnyUnitsAt: Ignore Units which are Destroyed
2014-11-12 08:06:58 +13:00
Guido L.
ae4ee0926a
AnyUnitsAt: Ignore destroyed Units
2014-11-09 03:15:33 +01:00
obrakmann
93bde9f511
Merge pull request #6900 from pchote/fix-gameplay-skipping
...
Force at least one render per tick during regular gameplay.
2014-11-08 22:43:36 +01:00
Paul Chote
118275b376
Add terrain geometry visualisation.
2014-11-07 19:18:34 +13:00
Paul Chote
18f65552a1
Account for terrain height in Viewport.
2014-11-07 19:14:02 +13:00
Paul Chote
55d9e71ff3
Force at least one render per tick during regular gameplay.
...
Partially reverts #5850 , as this feature is a serious usability regression when controlling units. Fixes #6867 .
2014-11-07 18:58:56 +13:00
Paul Chote
60420340fb
Add height map support.
2014-11-07 18:18:41 +13:00
obrakmann
603d700382
Merge pull request #6876 from Mailaender/render-perflog
...
Measure long TickRender in perf.log
2014-11-06 22:05:49 +01:00
Paul Chote
c66c72dc71
Merge pull request #6888 from obrakmann/fix6887_crash_dialog_on_restart
...
Prevent crash dialog from popping up when the game restarts
2014-11-07 08:15:45 +13:00
Matthias Mailänder
ac82e3079a
Merge pull request #6710 from huwpascoe/depends
...
Fixes #3160
Fixes #3568
Fixes #4894
Closes #6701
2014-11-06 10:48:17 +01:00
Paul Chote
f0eee47e68
Introduce TerrainTemplatePreviewWidget.
2014-11-05 09:39:55 +13:00
Paul Chote
63f5fc8613
Work around the undesired R8 terrain sprite offsets.
2014-11-05 09:39:55 +13:00
Paul Chote
aab9ad5ac0
Load tmp(ts) ExtraData for cliffs etc.
2014-11-05 09:39:55 +13:00
Paul Chote
c3b6f9bef6
Rename TileTemplate -> TerrainTemplateInfo.
2014-11-05 09:39:55 +13:00
Paul Chote
ab2bc789ce
TileSet cleanups.
2014-11-05 09:39:54 +13:00
Paul Chote
7d11649fab
Add support for per-tile minimap color and height/ramp type.
2014-11-05 09:39:54 +13:00
Oliver Brakmann
64506b856a
Prevent crash dialog from popping up when the game restarts
...
Fixes #6887
2014-11-04 21:35:56 +01:00
huwpascoe
dfc6ebd3ba
Introduced NUnit and some tests.
2014-11-02 20:18:04 +00:00
obrakmann
19c1f4ca99
Merge pull request #6877 from Mailaender/spritefont-perf
...
Measure SpriteFont in perf.log
2014-11-02 18:18:53 +01:00
Matthias Mailänder
fb0d5036da
beautify comment
2014-11-01 22:16:03 +01:00
Matthias Mailänder
b28615c2f6
StyleCop clean Order
2014-11-01 21:50:53 +01:00
Matthias Mailänder
a26a9cc3a2
StyleCop clean GenericSelectTarget
2014-11-01 21:48:09 +01:00
Matthias Mailänder
0a06ae1d76
avoid unneccessary spaces
2014-11-01 21:48:09 +01:00
Matthias Mailänder
3f75ff0e00
StyleCop clean Unitorders
2014-11-01 21:48:09 +01:00
Matthias Mailänder
8e667304aa
StyleCop clean SyncReport
2014-11-01 21:48:09 +01:00
Matthias Mailänder
7decbdeae0
StyleCop clean Session
2014-11-01 21:48:09 +01:00
Matthias Mailänder
a4b6ddc836
StyleCop clean ReplayRecorderConnection
2014-11-01 21:48:09 +01:00
Matthias Mailänder
6a5d304f07
StyleCop clean FrameData
2014-11-01 21:46:19 +01:00