Commit graph

3899 commits

Author SHA1 Message Date
Ykkrosh
25cd781641 Support horizontal scroll wheels for camera rotation
This was SVN commit r8582.
2010-11-13 01:00:54 +00:00
janwas
6e74c53ee9 fix file/dir mode bits
fixes #648
also fix self-test on ICC 12

This was SVN commit r8558.
2010-11-08 15:02:05 +00:00
janwas
6935a03743 remove no-longer needed GLU dependency; avoids delay-load warning.
This was SVN commit r8555.
2010-11-08 10:42:34 +00:00
janwas
24f1a00190 avoid setting executable bit in files/dirs we create
thanks to fabio for reporting + a suggested fix.
fixes #648

This was SVN commit r8554.
2010-11-08 10:39:52 +00:00
janwas
6b4d5091b3 fixes from work: use ICC bswap intrinsics instead of fallbacks; update UNUSED2 to work with ICC; update mahaf for Win7
This was SVN commit r8553.
2010-11-08 10:01:12 +00:00
Ykkrosh
e43eb0c18b # Various hotkey fixes and cleanups.
Support ctrl for removing entities from selection.
Move big screenshot hotkey to shift+F2.
Increase mouse wheel rotation speed.
Fix HotkeyIsPressed when a more specific hotkey was matched instead.
Support multiple hotkeys with the same binding.
Use hotkeys instead of raw key events in GUI.
Delete some obsolete hotkey definitions.
Remove unused broken EntitySelection toggle method.

This was SVN commit r8546.
2010-11-07 20:42:52 +00:00
janwas
a13836bd68 safely handle zero-sized XMB files ensuing from a crash while loading
fixes #662

This was SVN commit r8545.
2010-11-07 16:14:13 +00:00
Ykkrosh
644b9aedea # Add double-click and triple-click selection modes, based on patch by Christoph and evans.
Fixes #515.

This was SVN commit r8544.
2010-11-07 00:12:55 +00:00
janwas
f45c74c368 thread-safety fixes to debug.cpp - most functions were already reentrant, just CAS-ified the assert suppression flags.
(NB: the debug_filter stuff remains non-reentrant because it's usually
only called from main() or at least the main thread)
closes #654

This was SVN commit r8543.
2010-11-06 19:14:16 +00:00
janwas
3407983e98 remove no-longer needed (and non-reentrant) MICROLOG as per today's meeting
This was SVN commit r8542.
2010-11-06 19:11:40 +00:00
Ykkrosh
818ea52c3b Delete obsolete non-working i18n code
This was SVN commit r8527.
2010-11-03 17:52:07 +00:00
Ykkrosh
81f5e0ac5f Allow continuing playing when a client leaves a multiplayer game (fixes #620).
Fix multiplayer autostart.
Make NETTURN_LOG syntax differently ugly.

This was SVN commit r8525.
2010-11-03 00:21:52 +00:00
janwas
383cf7b220 cleanup:
use intrinsics for cpu_AtomicAdd and cpu_CAS, get rid of the
corresponding assembly implementations. (wrapper functions are necessary
at work because mere declarations aren't enough to export the functions
from DLL)
also remove no longer needed fminf

This was SVN commit r8521.
2010-11-02 13:38:56 +00:00
Ykkrosh
540925aa32 Add a rubbish experimental FPS camera view
This was SVN commit r8520.
2010-11-01 21:40:29 +00:00
janwas
52851faeb6 cleanup - remove old cpu_memcpy and cpu_i64FromDouble that are no longer needed
This was SVN commit r8517.
2010-11-01 11:09:03 +00:00
janwas
b27d6d38e3 thread-safe timer monotonicity check. fixes #653
(agree that DBL_EPSILON is an unnecessary hack, since division by
(t+eps)-(t) will yield a number not much more useful than infinity)

This was SVN commit r8516.
2010-11-01 10:19:22 +00:00
janwas
657ec9aa45 WIP timer thread safety:
CAS functions now implemented directly in external asm files (avoids
wrapper functions)
reinstated cpu_CAS64 (checking ARCH_IA32 at every call site is onerous)
(temporarily disable timer monotonicity check)

This was SVN commit r8515.
2010-11-01 09:54:03 +00:00
janwas
2b9774aa05 fix: alt+enter -> resize window -> maximize window failed to generate a resize event
This was SVN commit r8514.
2010-11-01 09:04:55 +00:00
Ykkrosh
aefc87f226 Windows fixes
This was SVN commit r8513.
2010-10-31 22:26:41 +00:00
Ykkrosh
602b99c397 Fix water rendering in "reveal map" mode.
This was SVN commit r8512.
2010-10-31 22:07:57 +00:00
Ykkrosh
5d764f1435 Run network server in a separate thread, to minimise latency.
Make some parts of logger and console thread-safe.
Simplify console: remove special commands; remove prefix for script
commands.
Remove LOG_ONCE, to simplify logger.
Change some code to use the new logger interface.
Fix OOS when revealing map.
Clean up some formatting.

This was SVN commit r8511.
2010-10-31 22:00:28 +00:00
Ykkrosh
034504f536 Remove misleading wposix declaration of unimplemented gettimeofday.
This was SVN commit r8510.
2010-10-31 21:58:30 +00:00
Ykkrosh
8dc7eca77a Autobuilder fixes
This was SVN commit r8502.
2010-10-30 20:39:23 +00:00
Ykkrosh
1840bb3507 Stop units walking outside the edges of circular maps.
Switch the GUI between square/circular minimap automatically.

This was SVN commit r8500.
2010-10-30 18:25:34 +00:00
Ykkrosh
10c5dbcba4 Fix Atlas and autostart.
Fix non-POD in varargs.
Remove misleading max_players config variable (the engine doesn't care
about it, all the limits are hard-coded).
Remove civ-center-based player civ initialisation hack.
Add dummy player_defaults.json.
Clean up formatting a bit.

This was SVN commit r8498.
2010-10-30 13:27:23 +00:00
historic_bruno
9ee44bd9b8 Game setup changes, including showing name, civ, team, and some options loaded from the scenarios. Civ data added. Civ info window to preview civs. Icon tooltips. Support for random map implementation. Fixes #590.
This was SVN commit r8494.
2010-10-30 04:02:42 +00:00
Ykkrosh
97019c3a5a Fix launching Atlas from the main menu
This was SVN commit r8491.
2010-10-29 21:04:59 +00:00
Ykkrosh
dd5ff36363 Fix Linux build error (fixes #651).
This was SVN commit r8487.
2010-10-29 15:48:46 +00:00
janwas
0c3d69ae29 fixes from work: clarify that cpu_MemoryBarrier has no runtime cost by renaming to COMPILER_FENCE and moving to code_annotation.h; fix 32-bit Parallel Studio 2011 warning.
This was SVN commit r8486.
2010-10-29 12:54:51 +00:00
janwas
825bbf8f51 parallel studio 2011 warning fixes
This was SVN commit r8484.
2010-10-28 12:22:11 +00:00
Ykkrosh
02aa8499ed Partial experimental version of circular maps
This was SVN commit r8470.
2010-10-25 21:59:52 +00:00
Ykkrosh
bcc5c87045 Fix bandbox selection of out-of-world entities
This was SVN commit r8450.
2010-10-23 21:48:18 +00:00
Ykkrosh
e13196e7a2 Fix serialization of most components
This was SVN commit r8449.
2010-10-23 19:59:40 +00:00
Ykkrosh
73286885d9 Fix race condition when enabling S3TC in Atlas
This was SVN commit r8448.
2010-10-23 19:58:45 +00:00
Ykkrosh
9e499cdec5 # Fix hotkey bugs.
Simplify hotkey system to use strings consistently.
Restrict scope of GUI hotkey bindings to the associated page.
Avoid hard-coding list of hotkeys.
Clean up the code a little bit and fix some bugs.
Remove unused "!" prefix for key negation.
Fixes #567.

This was SVN commit r8444.
2010-10-23 02:37:00 +00:00
Ykkrosh
3eed24a338 Fix Mesa S3TC-enabling to work in Atlas
This was SVN commit r8433.
2010-10-21 23:44:54 +00:00
Ykkrosh
eb8ca841cd Add special "colour:r g b a" sprite syntax to GUI. Fixes #616, based on patch from historic_bruno.
This was SVN commit r8431.
2010-10-21 21:22:40 +00:00
Ykkrosh
e188683bab Preserve cursor-grabbing across alt-tabs on Windows (probably fixes #508).
This was SVN commit r8430.
2010-10-21 21:09:41 +00:00
Ykkrosh
a596323ea6 Avoid bogus GCC warnings about uninitialised values
This was SVN commit r8429.
2010-10-21 20:33:27 +00:00
Ykkrosh
c0a7a36f7a Use JSFastNative API in more places, for improved compatibility with future SpiderMonkey versions.
Remove some unnecessary script-exposed functions, and move some more
into the Engine namespace.

This was SVN commit r8428.
2010-10-21 19:54:59 +00:00
Ykkrosh
4b3f1e8aaa Allow camera closer to edge of map when zoomed in
This was SVN commit r8401.
2010-10-17 16:26:02 +00:00
Ykkrosh
6a15b78c98 Increase multiplayer turn length to mask the effects of latency.
This was SVN commit r8400.
2010-10-17 16:07:43 +00:00
janwas
d11bc41d9a move support for GL swap control into wsdl (based on patch from wacko)
fixes #523

This was SVN commit r8399.
2010-10-17 08:55:47 +00:00
Ykkrosh
0666dd6074 Uglily initialise player civ assignments to match their starting civ centre
This was SVN commit r8384.
2010-10-16 23:07:20 +00:00
Ykkrosh
fe5bd12301 Fix --without-pch build
This was SVN commit r8375.
2010-10-16 17:10:00 +00:00
Ykkrosh
ee55b92667 Avoid wasting address space on currently-broken cache (see #611).
This was SVN commit r8371.
2010-10-15 23:20:28 +00:00
Ykkrosh
094ccc6a98 Fix playing of sound files in archives (by disabling proper streaming).
This was SVN commit r8370.
2010-10-15 23:06:14 +00:00
Ykkrosh
835609df20 Change S3TC warning yet again, to point to a web page with more information. Also stop hard-coding the message.
This was SVN commit r8367.
2010-10-15 12:29:20 +00:00
Ykkrosh
a1a7264aec Set force_s3tc_enable automatically for greater chance of compressed texture support on Linux (see #575).
This was SVN commit r8356.
2010-10-15 00:06:48 +00:00
janwas
2270961d14 VC2010 fix
This was SVN commit r8353.
2010-10-14 09:39:41 +00:00
Ykkrosh
3d2b17f1bf Fix some warnings on Windows
This was SVN commit r8352.
2010-10-13 21:58:31 +00:00
Ykkrosh
7b59550cc3 Fix #612 (passing a program object to glDeleteShader via pglDeleteObjectARB)
This was SVN commit r8344.
2010-10-13 16:45:27 +00:00
janwas
6f62ef3f3c better ChooseCacheSize: always clamp to 500 MB, remove assertion (refs #611)
This was SVN commit r8329.
2010-10-11 07:03:53 +00:00
Ykkrosh
ab6702ffaa Fix typo in comment
This was SVN commit r8326.
2010-10-10 19:14:22 +00:00
janwas
fecac5a7be # add support for streaming sounds, not just loading them entirely into memory (avoids stalls when switching music tracks)
very belated revision/integration of Heron/Kyniker's patch (thanks!)

ogg fixes: ensure file remains open by holding a shared_ptr. avoid
returning 0 (success) when bytesRead==requestedSize.

closes #100

This was SVN commit r8322.
2010-10-10 12:08:51 +00:00
janwas
c9cc7d9784 skip populating directories when mounting and scanning archives => reduces startup time by about half a second when archives are present.
also disable archive stats (currently unused) and refactor directory
creation/association logic.

This was SVN commit r8321.
2010-10-10 10:22:11 +00:00
janwas
48360edf21 noticed during testing that the file cache is much smaller than our dataset; added logic to choose a decent size. rebuild-workspaces required.
wversion: move into separate component from wutil to allow inclusion
from GameSetup without pulling in windows.h (causes conflicts)

This was SVN commit r8319.
2010-10-09 21:14:08 +00:00
janwas
c9ebacaa36 fix assertion under heavy cache usage due to 32-bit overflow (c.f. http://www.wildfiregames.com/forum/index.php?showtopic=13622)
This was SVN commit r8317.
2010-10-09 18:12:11 +00:00
janwas
7f0b055907 warn when VFS directory creation fails due to an existing file of the same name (was seeing a crash due to a Zip file I had created in the cache directory)
This was SVN commit r8316.
2010-10-09 17:53:25 +00:00
Ykkrosh
a4e47abf34 Stop suggesting the now-unnecessary libtxc_dxtn when S3TC support is missing
This was SVN commit r8315.
2010-10-09 16:07:41 +00:00
Ykkrosh
5d1ad60d18 Fix aliasing error in NVTT (fixes #605).
Bump texture cache version number, to invalidate potentially-incorrect
cached textures.

This was SVN commit r8313.
2010-10-08 23:34:55 +00:00
Ykkrosh
46d5fff269 Use zipped data files and pre-converted textures in release distributions
This was SVN commit r8306.
2010-10-07 19:57:31 +00:00
Ykkrosh
8dda4db8d8 Remove obsolete pmdexp tool
This was SVN commit r8303.
2010-10-07 18:50:49 +00:00
Ykkrosh
0436dc4cb9 Fix memory leak
This was SVN commit r8302.
2010-10-07 18:42:35 +00:00
Ykkrosh
0c170e2e01 Add test for NVTT bug
This was SVN commit r8300.
2010-10-07 10:56:38 +00:00
Ykkrosh
7b82173bad Avoid potential integer overflow in pathfinder
This was SVN commit r8298.
2010-10-06 23:50:07 +00:00
Ykkrosh
de673be78a Fix likely cause of "unexpected PathResult" warnings
This was SVN commit r8297.
2010-10-06 22:17:34 +00:00
Ykkrosh
9dfa21b558 Fix off-by-one error (glDrawRangeElements expects the *inclusive* upper bound of indexes)
This was SVN commit r8288.
2010-10-05 15:54:04 +00:00
Ykkrosh
f2e96f3f3c Reduce brightness of fogged objects.
This was SVN commit r8273.
2010-10-04 17:35:13 +00:00
Ykkrosh
ab77ec40e4 Fix highlighting of obstructed building placement previews.
Prevent building in non-visible areas.
Fixes #594.

This was SVN commit r8272.
2010-10-04 17:34:33 +00:00
Ykkrosh
6b5b35c245 Remove BFD-based debugging code, to avoid the runtime dependency on binutils.
Fixes #581.

This was SVN commit r8271.
2010-10-04 17:21:55 +00:00
Ykkrosh
caba7cbe8f Fix #586 (setting sound.mastergain to 0), based on patch from historic_bruno
This was SVN commit r8270.
2010-10-04 12:07:17 +00:00
Ykkrosh
d77e70389b Fix #585 (Windows support for font builder), based on patch from historic_bruno
This was SVN commit r8269.
2010-10-04 12:00:22 +00:00
Ykkrosh
795be260be Improve docs
This was SVN commit r8268.
2010-10-04 11:38:43 +00:00
Ykkrosh
aa32677784 Restore highlighting of units on hover.
Optimise overlay code a bit.

This was SVN commit r8253.
2010-10-03 16:48:52 +00:00
Ykkrosh
9a0db9713e Add resource supply status bars.
Change bar size for buildings.
Only highlight one entity on mouse hover, and only if it's not a unit.
Display status bars on foundations.

This was SVN commit r8249.
2010-10-03 00:30:43 +00:00
Ykkrosh
7ea522a484 # Add on-screen health bars
This was SVN commit r8241.
2010-10-02 12:41:29 +00:00
Ykkrosh
fcedcae052 # Add victory/defeat conditions, based on patch from fcxSanya.
Fixes #565.

This was SVN commit r8234.
2010-10-01 20:51:21 +00:00
Ykkrosh
6bcf4f25c8 Fix CStr parsing to be independent of locale, so that it doesn't break when GTK+ changes the locale.
This was SVN commit r8218.
2010-09-30 23:17:41 +00:00
Ykkrosh
82691683cb Fix #56 (add unit-following camera mode (press 'F')), based on patch from markelov.
Remove obsolete IsNewSimulation function.

This was SVN commit r8190.
2010-09-26 23:05:25 +00:00
Ykkrosh
58026a3c6d Fix bug with failing to reset GL state when sometimes necessary
This was SVN commit r8172.
2010-09-24 21:42:41 +00:00
Ykkrosh
6d82bfaabf Disable some profiler calls that are frequent enough to significantly affect performance
This was SVN commit r8171.
2010-09-24 21:33:07 +00:00
Ykkrosh
ede71ea791 Inline common vector/matrix operations, for performance.
Remove some redundant vector methods.
Compute skinning for positions and normals simultaneously.
(These changes reduce skinning cost by >50%.)

This was SVN commit r8170.
2010-09-24 16:54:20 +00:00
Ykkrosh
46b79f8a6d Scale minimap LOS texture down, to reduce update/upload costs.
Reduce minimap LOS update frequency.

This was SVN commit r8169.
2010-09-24 16:52:29 +00:00
Ykkrosh
85deca90e4 Fix projectiles in FoW
This was SVN commit r8163.
2010-09-23 13:09:35 +00:00
Ykkrosh
e1082e5adb Fix warnings
This was SVN commit r8162.
2010-09-23 12:54:16 +00:00
Ykkrosh
924d1219a7 # Add fog-of-war.
Move Vision component to C++, for more efficient FoW processing.
Disable FoW on demo maps.

This was SVN commit r8160.
2010-09-23 12:13:13 +00:00
Ykkrosh
000b7250a2 Use slightly higher quality texture compression in archive-builder mode
This was SVN commit r8148.
2010-09-20 16:34:09 +00:00
Ykkrosh
3d8d354a18 # Optimise spatial queries.
This was SVN commit r8136.
2010-09-19 18:08:56 +00:00
Ykkrosh
84b04f37db Fix more warning.
This was SVN commit r8133.
2010-09-18 18:59:04 +00:00
Ykkrosh
b9eb283174 Fix warning.
Set thread name for texture converter.

This was SVN commit r8132.
2010-09-18 18:56:06 +00:00
Ykkrosh
0d172264f8 # Add -archivebuild mode to generate .zip files for releases, with automatic compression of textures.
Fix terrain manager to understand .cached.dds files.
Fix IArchiveWriter so you can pass it absolute paths of files to load,
and different relative paths for storing inside the archive.
Fix fs_util::ForEachFile when called on the VFS root.

This was SVN commit r8130.
2010-09-18 18:21:00 +00:00
Ykkrosh
4c92b7b596 Add primitive tool for generating profile graphs
This was SVN commit r8124.
2010-09-17 21:03:57 +00:00
Ykkrosh
2362d938cd Fix loading maps
This was SVN commit r8123.
2010-09-17 20:47:47 +00:00
Ykkrosh
8a98102195 Fix serialize/deserialize API asymmetry.
Add serialization support to more components.

This was SVN commit r8122.
2010-09-17 17:53:26 +00:00
Ykkrosh
a29bb003f2 Fix warning message in replays
This was SVN commit r8121.
2010-09-17 17:50:43 +00:00
Ykkrosh
db047e5bee Cache message JS conversions, to make broadcasts faster
This was SVN commit r8120.
2010-09-17 17:49:39 +00:00
Ykkrosh
bd38d9d34f Fix log replayer to load terrain properties.
Add profiler to replayer.
Add replay hash verification.

This was SVN commit r8119.
2010-09-17 17:45:50 +00:00
Ykkrosh
fd68a95bad Fix map reader to load all necessary simulation data even when graphics are disabled
This was SVN commit r8118.
2010-09-17 17:43:12 +00:00
Ykkrosh
624e8490a2 Increase script memory limit more
This was SVN commit r8117.
2010-09-17 17:40:44 +00:00