Commit graph

2129 commits

Author SHA1 Message Date
sanderd17
59c9ae670f Stop VFS from causing a crash when the AI player isn't found. Patch by Itms. Fixes #2558
This was SVN commit r15254.
2014-05-31 14:55:09 +00:00
Ykkrosh
85a1f880ab Fix compatibility with LLVM libc++ (used on OS X).
libc++ vector asserts that allocator::value_type is correct, so we have
to pass in the correct types.

This was SVN commit r15231.
2014-05-26 16:48:28 +00:00
historic_bruno
d2ecbecf32 Fixes tex_codec typo that broke BMP writing and big screenshots, fixes #2515
This was SVN commit r15107.
2014-05-04 05:49:31 +00:00
Gallaecio
8fea36cdd0 Made tinygettext’s debug output optional
You can now enable tinygettext’s output from the user.cfg file
(tinygettext.debug).
This enhancement also solved a warning due to the previous workaround,
which was
to uncomment the output line to avoid the debug messages.

This issue was reported by Yves at Github:
https://github.com/leper/0ad/issues/10

This was SVN commit r15002.
2014-04-26 15:32:18 +00:00
Gallaecio
fc793609eb Added API documentation to ‘source/i18n/’
This was SVN commit r14996.
2014-04-26 12:10:15 +00:00
Gallaecio
1b3261b8f4 Added third-party libraries for internationalization and localization: ICU and tinygettext
This was SVN commit r14951.
2014-04-20 19:17:32 +00:00
Yves
e9e05f4efc Second (main) commit for the SpiderMonkey upgrade.
This commit contains all the required changes to our source files and
build scripts (hopefully).
A next commit will remove the old stuff of SpiderMonkey 1.8.5.

Spcial thanks to:
 - H4writer who helped a lot mainly with the performance issues we
had/have, but also with other problems or questions.
 - Leper for the review.
 - Historic_bruno for implementing the build scripts on Mac OS X and
testing on the Mac.
 - The people from the #jsapi channel and from
mozilla.dev.tech.js-engine who answered a lot of questions and helped
solving problems.
 - All the other people who helped

Refs #1886
Fixes #2442
Fixes #2416

This was SVN commit r14877.
2014-03-28 20:26:32 +00:00
wraitii
6ab578a6eb Fix out of date comments in Tex and ITexCodec, Fixes #2458.
This was SVN commit r14838.
2014-03-13 19:00:22 +00:00
JoshuaJB
ef888367aa Cleanup tex_codec, fixes #2456, patch by IronNerd.
This was SVN commit r14836.
2014-03-13 04:16:20 +00:00
JoshuaJB
a5639631ee Texture system refactoring and cleanup, fixes #2455, patch by IronNerd.
This was SVN commit r14835.
2014-03-13 02:37:05 +00:00
historic_bruno
035078c317 Disables checks in os_cpu_LargePageSize Windows implementation, since they failed on Vista SP2 with old Xeon CPU, fixes #2346
This was SVN commit r14731.
2014-02-04 22:30:29 +00:00
historic_bruno
0406c89908 Implements GetMonitorSize for OS X, patch by Echelon9, fixes #2390
This was SVN commit r14690.
2014-01-26 23:03:45 +00:00
leper
3746690f82 Define GLX_MESA_query_renderer functions unconditionally. Fixes #2325.
This was SVN commit r14432.
2013-12-29 17:13:55 +00:00
sanderd17
9dcc3ee89e fix always picking the same processor core on some systems. Based on code hits by Philip
This was SVN commit r14391.
2013-12-26 10:05:44 +00:00
leper
42bc5165ab Add compile time flag to disable use of miniupnpc.
This was SVN commit r14384.
2013-12-18 16:08:56 +00:00
historic_bruno
8db3ada87f Improves debugging output to help troubleshoot some WSDL bugs, refs #2146, #1733
This was SVN commit r14325.
2013-12-10 18:54:18 +00:00
historic_bruno
b1c081e36d Set svn:eol-style=native, fix some inconsistent line endings
This was SVN commit r14299.
2013-12-06 00:42:50 +00:00
Ykkrosh
8ecfbd0899 Remove unused includes of tr1/unordered_map etc.
They cause build errors with libc++, and we always use
boost::unordered_map instead.

This was SVN commit r14177.
2013-11-14 20:47:59 +00:00
historic_bruno
5771bee032 First pass at fixing GLES build - more to come
This was SVN commit r14149.
2013-11-12 01:17:16 +00:00
historic_bruno
45a7f577d3 A bunch of OS X SDK-related fixes.
Adds runtime support for 10.5 APIs: display modes, bundle paths, system
paths, pasteboards. Previously this was compile-time support only, which
prevented building on later SDKs while targeting earlier APIs.
Adds hardcoded version for pre-10.6 builds, to avoid messing with
deprecated Gestalt or having to add a 10.5 non-dispatch singleton (Grand
Central Dispatch didn't exist in 10.5)

This was SVN commit r14140.
2013-11-11 00:11:25 +00:00
historic_bruno
011cbb5725 Fixes OS X STL incompatibilities when building against later SDKs and targeting 10.5 (fixes stringstream build errors in these conditions)
This was SVN commit r14139.
2013-11-11 00:09:16 +00:00
Ykkrosh
a96ed190a5 Add GLX_MESA_query_renderer support to hwdetect
This was SVN commit r14130.
2013-11-10 16:24:03 +00:00
Ykkrosh
d178f32698 Fix Unicode in JS print() on Linux
This was SVN commit r14129.
2013-11-10 16:13:40 +00:00
Ykkrosh
35d48d2fe8 ...and increase HDATA_USER_SIZE so OglTex actually fits
This was SVN commit r14122.
2013-11-09 18:49:35 +00:00
Ykkrosh
1ad9d5424a Fix error at startup on 64-bit builds.
OglTex had a size_t added, which pushed it over HDATA_USER_SIZE.
Use u32 instead to minimise the difference between platforms.

This was SVN commit r14121.
2013-11-09 18:39:45 +00:00
historic_bruno
9cc172b164 Fixes --without-lobby for MSVC and clang, refs #2249.
Cleans up some whitespace.
Removes obsolete PCH files.

This was SVN commit r14117.
2013-11-09 02:57:10 +00:00
Ykkrosh
3c47b12cbe Display texture memory usage in profiler's renderer stats
This was SVN commit r14116.
2013-11-09 01:03:23 +00:00
leper
5dfc3746e3 Remove old and unused archive stats.
This was SVN commit r14114.
2013-11-08 17:27:21 +00:00
Yves
93cffe9deb Remove the old and no longer used archive builder that rebuilt the archive while the game is running.
This approach isn't used anymore. Now we start the archive building with
parameters to pyrogeneis.

Refs #2241 (the code used g_ScriptingHost which is going to be removed)

This was SVN commit r14102.
2013-11-07 21:06:18 +00:00
JoshuaJB
bffe917914 Multiplayer lobby based on the XmPP protocol. Special thanks to Philip, alpha123, scythetwirler, and anyone else who has helped build, debug or test the lobby.
This was SVN commit r14098.
2013-11-07 20:07:24 +00:00
JoshuaJB
b416de9b7c Remove the unused crypto++ library files.
This was SVN commit r14094.
2013-11-07 18:50:52 +00:00
Ykkrosh
29e4b1a17c Update Android support
This was SVN commit r14068.
2013-11-02 23:05:38 +00:00
Ykkrosh
2d1be3d47e Improve correctness of hotkeys at low framerates.
SDL queues up all the input events received in a frame. When the hotkey
system saw a key up/down event, it immediately updated its
HotkeyIsPressed state and then pushed a hotkey event onto the end of the
queue.

If the initial queue was e.g. [key-down shift, key-press Z, key-up
shift], the hotkey event triggered by Z would be processed after the
key-up shift had updated the HotkeyIsPressed state, so the handler of
the Z hotkey would not think the shift hotkey was pressed.

If the initial queue was e.g. [key-press Z, mouse-click], the hotkey
triggered by Z would be processed after the mouse-click event, so it
could apply to the wrong building selection.

Fix by pushing the hotkey events onto a special queue that gets
processed before any subsequent SDL input events.

Also update the HotkeyIsPressed status when the HOTKEYDOWN/HOTKEYUP
events are processed, not when they are generated, to guarantee they are
consistent with the DOWN/UP events.

Fixes #1869.

This was SVN commit r14057.
2013-10-30 01:38:32 +00:00
Ykkrosh
a4cd90ddfc Avoid non-ASCII characters in source code, since tools don't decode them consistently.
Fixes #2198.

This was SVN commit r14035.
2013-10-20 09:27:44 +00:00
Ykkrosh
5778484a77 Refactor text renderer
Replace unifont with CFont and CFontManager, since the h_mgr interface
was
needlessly inconvenient.

Load the font textures through CTextureManager, to support dynamic
reloading (e.g. when resetting GL state - see #741).

Add CFontMetrics as a convenient wrapper for code that just wants to
measure text.

Fixes #1117.

This was SVN commit r14016.
2013-10-18 15:53:07 +00:00
Ykkrosh
8799bd98b0 Support 8bpp textures
When textures.xml specifies format="alpha", the input is expected to be
an
8-bit greyscale PNG, and the output will be an 8-bit uncompressed
alpha-only DDS.

Add format override to CTextureProperties, to select between e.g.
GL_ALPHA
and GL_LUMINANCE for 8-bit textures.

This is needed so fonts can use the new texture system.

This was SVN commit r14015.
2013-10-18 15:36:31 +00:00
historic_bruno
e24ce51029 Adds DynamicArena allocator that grows by fixed chunk size, fixes #2142.
Changes fixed size arenas to new dynamic arenas with reasonable chunk
sizes (may require tuning), refs #1842

This was SVN commit r13916.
2013-09-30 01:22:44 +00:00
Ykkrosh
c2583e42da Reduce memory allocations in the renderer
Use an arena allocator in ShaderModelRenderer::Render, to reduce
the allocation cost in STL containers.

Avoid unnecessary copying of std::vectors.

This was SVN commit r13911.
2013-09-29 14:48:11 +00:00
historic_bruno
2a613f8236 Removes mostly useless video memory detection, fixes another crash with Nvidia Optimus on Windows, fixes #2145, #2138
This was SVN commit r13891.
2013-09-22 18:07:33 +00:00
RedFox
9694eec8b8 As per ticket #1707. Some minor improvements to spatial subdivision. Makes way for future changes in RangeManager.
Right now merely improves memory usage.

This was SVN commit r13854.
2013-09-15 14:03:53 +00:00
stwf
b1bd61938e add file notification to Mac ticket 514, also change name of class FileInfo to CFileInfo to ease Mac development
This was SVN commit r13821.
2013-09-10 14:17:04 +00:00
leper
04ed87bf28 Display error messages instead of breaking into the debugger when we don't have rights to save a map in Atlas. Fixes #1941.
This was SVN commit r13818.
2013-09-09 23:31:22 +00:00
janwas
c1dcbe4176 update TLB table
refs #2074

This was SVN commit r13741.
2013-08-23 06:42:48 +00:00
historic_bruno
0a0bd83cf0 Adds L4 cache detection for some new Haswell CPUs, fixes #2074
This was SVN commit r13736.
2013-08-21 23:18:35 +00:00
historic_bruno
f947fa6afe Fixes stack overflow in stack dump logic, by special-casing boost::unordered types, fixes #1813.
Adds INIT_HAVE_DISPLAY_ERROR init flag to correctly override
ah_display_error in Atlas (InitVfs was overriding it again), but don't
use it because it's ugly and broken, refs #1729

This was SVN commit r13724.
2013-08-20 21:07:42 +00:00
alpha123
93abbae435 Fix build issues on ARM. Patch by Josh. Fixes #2049.
This was SVN commit r13634.
2013-08-07 05:00:46 +00:00
leper
d1af7ea0ef Include mod path in the cache path.
This was SVN commit r13546.
2013-07-10 00:08:01 +00:00
historic_bruno
8aa016a884 Changes graphics card name detection on Windows to use OpenGL, as a workaround for certain WMI related crashes on Nvidia Optimus and netbook systems. Fixes #1952, #1575
This was SVN commit r13536.
2013-07-06 18:30:29 +00:00
historic_bruno
02b98f3acd Fixes build with x11 and SDL2
This was SVN commit r13485.
2013-06-17 01:43:57 +00:00
historic_bruno
e75877b52f Adds comment about xorg-x11's glXGetProcAddress not returning NULL for unsupported functions, closes #171
This was SVN commit r13480.
2013-06-14 23:49:20 +00:00
leper
2567fee329 Write mod data correctly. Fixes #1940.
This was SVN commit r13472.
2013-06-11 20:50:09 +00:00
leper
b3391ebe39 Fix build warnings. Patch by Markus. Refs #1851.
This was SVN commit r13469.
2013-06-11 00:05:57 +00:00
historic_bruno
d2b0d25457 Fixes macro redefinition of FACILITY_VISUALCPP in VC2012 (it's defined in winerror.h).
Removes obsolete hack for old Boost and VC2005 (broke VC2005 build with
modern Boost).

This was SVN commit r13433.
2013-05-28 01:14:41 +00:00
historic_bruno
a8a968d32c Catch exceptions by reference (by convention), based on patch from Markus, refs #1852
This was SVN commit r13421.
2013-05-22 22:27:53 +00:00
historic_bruno
284e9cd230 Improves frame rate counter to give smoother results, patch by sbte. Fixes #1016
This was SVN commit r13204.
2013-02-26 21:50:38 +00:00
leper
2f19cf86d3 Fix mod priority. Add user mod support. Fixes #1838.
This was SVN commit r13167.
2013-02-14 00:40:02 +00:00
leper
3e8bdebc6d Add Clang detection and add BSD to the collected stats.
This was SVN commit r13111.
2013-01-23 16:01:17 +00:00
Ykkrosh
c037e3f78e Add detection of Win8 in wversion, to help stats collection
This was SVN commit r13100.
2013-01-21 20:32:07 +00:00
historic_bruno
d65c7751a5 Updates bundled libpng to v1.5.13, built with VC2008 - requires update-workspaces. Refs #864
This was SVN commit r13035.
2013-01-03 17:22:14 +00:00
leper
276f0a41a0 New Year's clean-up.
Throw a warning if a invalid (not present) AI is specified in a map.
Replace the last occurences of jubot with qbot.
Exclude the common siege templates from the Units Demo map.
Fix an error with flying units.
Replace CFG_GET_SYS_VAL with CFG_GET_USER_VAL and rename it to
CFG_GET_VAL to reflect its behaviour better.
Fix linker error with clang 3.2. Refs 1588.
Remove some useless includes.

This was SVN commit r13031.
2013-01-01 18:33:53 +00:00
historic_bruno
e91a918164 Fixes race condition in EnsureMonotonic on 32-bit builds, which was causing unreliable timer behavior, fixes #1729
This was SVN commit r12927.
2012-12-03 13:24:12 +00:00
Yves
9d0da11eab Fixes compile error introduced in 3787f17e4d
This was SVN commit r12909.
2012-12-01 20:34:35 +00:00
janwas
308db6627a fix synchronization of TimerState (refs #1729)
This was SVN commit r12908.
2012-12-01 06:33:30 +00:00
janwas
3787f17e4d merge with local codebase: fix PopulationCount
This was SVN commit r12907.
2012-12-01 03:06:24 +00:00
janwas
9001cba02c fix: remove unnecessary failure check concerning window class atom. fixes #1729
This was SVN commit r12906.
2012-12-01 02:34:19 +00:00
myconid
1fb7889539 Postproc manager
This was SVN commit r12755.
2012-10-15 10:34:23 +00:00
historic_bruno
5cff74f4e7 Replaces FAM file monitoring with inotify on Linux, based on patch by noKid. Fixes #1316, refs #1687.
Removes FAM dependency.

This was SVN commit r12726.
2012-10-02 00:03:14 +00:00
Yves
fcf09598d9 Temporarily disabling FAM for Alpha 11 because it can cause problems on Ubuntu and hotloading doesn't seem to work anyway at the moment.
Known problems with FAM:
- System hangs at shutdown
- Assertion failure at startup in debug mode

This was SVN commit r12550.
2012-08-29 21:22:57 +00:00
historic_bruno
e485fb9e2c Implements copy/paste for OS X using NSPasteboard including pre-10.6 API support. Fixes #1326
This was SVN commit r12464.
2012-08-18 19:47:55 +00:00
historic_bruno
011ba8255e New sound system implementation by stwf, refs #1223, #961.
Enables audio on OS X, refs #685, #931.
Fixes music not playing after a game, refs #946.

This was SVN commit r12428.
2012-08-15 00:10:44 +00:00
Deiz
20d75a3880 Free cursors before shutting down SDL. Fixes #1355.
This was SVN commit r12271.
2012-08-03 16:48:02 +00:00
historic_bruno
2c8adb1aea Adds support for Boost.Filesystem v3, the only option in Boost 1.50. Fixes #1527. Refs #1360
This was SVN commit r12229.
2012-07-29 23:04:22 +00:00
historic_bruno
574f4db8ab Fixes font texture handling to use format auto-detection when possible, based on patch by Deiz/F00. Fixes #1508
This was SVN commit r12073.
2012-07-05 01:05:09 +00:00
leper
637c09b204 Add support for OpenBSD. Fixes #1463.
Backport os_getversion from premake4.4-beta4 and extend it to support
POSIX-compilant systems.
Add some missing newlines at the end of file as these cause warnings on
OpenBSD.
Update the config paths.

This was SVN commit r11970.
2012-06-13 20:43:56 +00:00
Ykkrosh
fbc3cbad7c Fix handling of non-ASCII paths on Unix
This was SVN commit r11839.
2012-05-11 14:30:15 +00:00
historic_bruno
37a5bedb81 Adds partial support for Debian GNU/kFreeBSD, based on patch by vincent. Refs #1322.
This was SVN commit r11781.
2012-05-07 01:53:35 +00:00
vts
490182ddd0 Wall placement. Closes #786.
This was SVN commit r11760.
2012-05-05 19:22:22 +00:00
historic_bruno
ffc89ee1af Adds some OS X availability macros to support 10.5 SDK. Not foolproof but good enough for now.
This was SVN commit r11757.
2012-05-05 03:18:22 +00:00
historic_bruno
b101f5ad01 Adds hardware cursors for Linux and OS X. Requires libxcursor on Linux. Fixes #748.
Adds explicit links to frameworks we need on OS X.

This was SVN commit r11596.
2012-04-21 07:53:53 +00:00
Ykkrosh
769350a3e7 Compute camera height and zoom limits based on smoothed terrain heightmap. Fixes #794, based on patch by Dietger.
This was SVN commit r11556.
2012-04-18 20:39:00 +00:00
Ykkrosh
ce215cace3 Add support for custom vertex attributes and array-of-matrix uniforms in GLSL.
This was SVN commit r11489.
2012-04-12 14:10:02 +00:00
historic_bruno
0fda0019d1 Updates data paths on OS X and Windows. On OS X only write to locations inside ~/Library. On Windows make the distinction between local and roaming appdata, and use folder inside My Documents for user-created data. Fixes #1145.
Adds proper OS X app bundle support.
Updates Windows installer script.

This was SVN commit r11389.
2012-03-22 00:23:31 +00:00
Ykkrosh
36107cb7e1 GLES compatibility for particles and shadows.
Fix invalid enum errors.
Fix shader texture binding.

This was SVN commit r11372.
2012-03-19 21:10:14 +00:00
Ykkrosh
8c6231f940 Fix black-square cursor on 16bpp Windows
This was SVN commit r11371.
2012-03-19 20:46:12 +00:00
Ykkrosh
6fc508f662 Fix non-PCH build.
Fix typo.

This was SVN commit r11327.
2012-03-13 21:39:01 +00:00
Ykkrosh
2afc4d9d8f Fix #1140 (signedness warning on some platforms).
This was SVN commit r11251.
2012-03-05 17:05:02 +00:00
historic_bruno
7fa6afac37 Corrects some Doxygen comments and adds a few others of interest.
This was SVN commit r11209.
2012-03-01 03:55:05 +00:00
Ykkrosh
5009636e39 Improve Android compatibility.
Basic touchscreen input for testing.
Better GLSL support for map rendering.

This was SVN commit r11155.
2012-02-25 17:29:27 +00:00
Ykkrosh
4c43d1f9c5 Fixing building with older versions of Boost
This was SVN commit r11083.
2012-02-16 18:01:10 +00:00
Ykkrosh
7656ffa265 Be more informative about errors in CreateDirectories
This was SVN commit r11082.
2012-02-16 13:50:31 +00:00
Ykkrosh
832a51da80 GLSL text support
This was SVN commit r11080.
2012-02-15 21:53:13 +00:00
Ykkrosh
20d23eb340 Sysdep code for Android/ARM
This was SVN commit r11075.
2012-02-15 15:40:31 +00:00
Ykkrosh
f4625e69af Partial Android compatibility.
Remove unnecessary VM allocation (which seemingly causes problems on
Android due to mmap during static initialization).
Allow building without NVTT.

This was SVN commit r11074.
2012-02-15 13:58:58 +00:00
Ykkrosh
9972eb8cae Enough GLES compatibility to reach the menu screen
This was SVN commit r11064.
2012-02-13 20:53:24 +00:00
Ykkrosh
677ccf53e6 Yet more GLES compatibility
This was SVN commit r11061.
2012-02-13 16:41:17 +00:00
Ykkrosh
a9eca31bad Even more GLES compatibility
This was SVN commit r11060.
2012-02-13 15:06:25 +00:00
Ykkrosh
4bf59b9a7d More GLES compatibility, mainly around terrain rendering.
This was SVN commit r11059.
2012-02-13 14:02:14 +00:00
Ykkrosh
baff889321 Fix invalid varargs
This was SVN commit r11054.
2012-02-12 21:05:13 +00:00
Ykkrosh
531b40578a More GLES compatibility.
Add config option to disable hardware cursors on Windows.

This was SVN commit r11053.
2012-02-12 20:45:31 +00:00
Ykkrosh
db85833655 More GLES compatibility.
Move more rendering code to shader API.

This was SVN commit r11050.
2012-02-12 13:20:49 +00:00