Commit Graph

5381 Commits

Author SHA1 Message Date
8226d75715 Make PickEntitiesAtPoint faster yielding 1-3% overall performance improvement. Fixes #2358. Also removes some trailing whitespace.
This was SVN commit r14532.
2014-01-07 04:05:10 +00:00
729a795a44 of course, 7a3b1fe47e can be simplified
This was SVN commit r14531.
2014-01-06 23:23:18 +00:00
7a3b1fe47e Improve speed of territory computation, fixes #2360
This was SVN commit r14530.
2014-01-06 22:49:57 +00:00
d0e57cb0ff Change a few things to avoid warnings with gcc. Should fix #2359
This was SVN commit r14529.
2014-01-06 22:14:27 +00:00
9ccaa42a54 Fixes MSVC warning C4706: assignment within conditional expression
This was SVN commit r14519.
2014-01-06 02:16:09 +00:00
aa0d485d72 Fix improper disabling of waves.
This was SVN commit r14515.
2014-01-05 16:41:50 +00:00
15ec863aec Substantial speed-up of the foam generation code.
Remove waves for now as they were unsatisfactory.
Removes "shininess" as a water parameter as it was basically useless.
Add a button in Atlas to recompute water parameters so you can now see
fog in Atlas.

Fixes #1743, #1803 (invalid)
Refs #1875, #2114, #48.

This was SVN commit r14514.
2014-01-05 16:15:20 +00:00
7193e29961 Adds precompiled.h include because Visual Studio checks for that even though the file only contains comments.
Thanks to boeseRaupe for reporting.

Refs #2348

This was SVN commit r14512.
2014-01-05 13:58:38 +00:00
b20955436b I completely missed the header files when disabling the JS debugger.
Refs #2348

This was SVN commit r14511.
2014-01-05 10:26:27 +00:00
6ca6a5f779 The patch in 4b65f77438 seems to have fixed the crash, but the initData value doesn't match the JSContext's compartment, so it's theoretically wrong.
This should fix it correctly.

#Refs 2241

This was SVN commit r14508.
2014-01-04 21:49:36 +00:00
4b65f77438 Fixes an occasional crash introduced in #2241 (hopefully).
Refs #2241

This was SVN commit r14507.
2014-01-04 21:36:12 +00:00
7d516e7e7a Disables the JS debugger.
It's completely broken since 4b1297b328 and will have to be updated for
the new SpiderMonkey API.
I only uncomment it at the moment because I plan to fix/reimplement it
soon after the upgrade.

Closes #2348
Refs #2241
Refs #1886

This was SVN commit r14506.
2014-01-04 20:47:56 +00:00
d4b2c1285c add the ability to exclude props from the selection size + add aura visualisation rings again
This was SVN commit r14497.
2014-01-04 10:41:32 +00:00
4b1297b328 Removes g_ScriptingHost and implements global to compartment 1 to 1 relation.
Each GUI Page gets its own compartment and all ScriptInterfaces in the
same thread should now use the same JS Runtime.
This is required for the SpiderMonkey upgrade.
Check the ticket for details.

Closes #2241
Refs #1886
Refs #1966

This was SVN commit r14496.
2014-01-04 10:14:53 +00:00
fb8032043b Use pointers instead of copying sprites in the GUI. Fixes #1984. Patch by jP_wanN.
This was SVN commit r14493.
2014-01-03 20:19:43 +00:00
b1422137e5 Cleanup GUI Checkbox C++ code by removing broken, non-obvious internal text rendering.
This was SVN commit r14476.
2014-01-02 03:28:15 +00:00
67570be8fa Make GUI button-based objects to behave more expectedly when doubleclicked, also some style tweaks.
This was SVN commit r14468.
2014-01-01 06:05:41 +00:00
1e522f9b2c Fix bug with rating in lobby bot, remove superfluous GUI typedef, and change the lobby chat autocompletion to use tab.
This was SVN commit r14467.
2014-01-01 00:23:18 +00:00
9d9361ae44 Why you should test your code before committing, exhibit A.
This was SVN commit r14466.
2013-12-31 21:45:11 +00:00
a7cafe75aa "Reveal all player" id back to -1, add some "ensure" to catch invalid player ids and be safer.
This was SVN commit r14465.
2013-12-31 21:30:48 +00:00
fe2a97b0c9 Change some useless std::map into std::vector for LOS. Player "0" now reveals the LOS for all.
This was SVN commit r14463.
2013-12-31 16:38:11 +00:00
c0472f0de5 Fix trivial comment typo caught by wraitii.
This was SVN commit r14460.
2013-12-31 11:06:00 +00:00
c7ff0bb486 Tweak some lobby login UI bits, rework scrollbar mousewheel handling, add ability to scroll through closed dropdowns with scrollwheel, general C++ GUI cleanup, and fix broken random map script 'Unknown Nomad'.
This was SVN commit r14458.
2013-12-31 04:54:16 +00:00
2008ebc9d6 Use ACLs in the ipstamp module to support multiple lobby bots.
This was SVN commit r14456.
2013-12-31 00:25:33 +00:00
e21464d960 Try to fix some errors in the bot by checking a player id's validity before using it as an index.
This was SVN commit r14454.
2013-12-30 20:48:15 +00:00
dddc9bab7f Fix tests.
This was SVN commit r14452.
2013-12-30 18:55:37 +00:00
298115f4c5 Fix units chasing each other. Fixes #1537
This was SVN commit r14449.
2013-12-30 16:07:19 +00:00
08b44fe647 Fix water rendering (transparent objects now appear correctly when underwater/in reflections)
Add a new config option (renderactors) that, if set to false, will
prevent actors from rendering in-game (grass…)

This was SVN commit r14447.
2013-12-30 15:52:42 +00:00
3362c591f5 Moves AI players to one global using the module pattern.
This avoids wrapping overhead that would otherwise be required because
multiple globals per compartment aren't supported anymore in newer
versions of SpiderMonkey.

Check the ticket for a detailed explanation.

Closes #2322
Refs #2241
Refs #1886

This was SVN commit r14441.
2013-12-30 10:04:59 +00:00
5e23445339 Make ConfigDB properly thread-safe.
Replace CreateValue with SetValueString so we don't pass pointers to
internal
 ConfigDB structures around. Refs #1810.
Remove some splash screen related functions since we can achieve the
same
 with the ConfigDB functions exposed to scripts.

This was SVN commit r14437.
2013-12-29 23:56:18 +00:00
92fba32c5e Some more C++ GUI cleanup.
This was SVN commit r14436.
2013-12-29 20:46:02 +00:00
e729f46789 Make button-type GUI elements more responsive and cleanup in IGUIButtonBehavior.cpp
This was SVN commit r14435.
2013-12-29 19:31:48 +00:00
d756e8d70e Add proper licences to lobby bot files. Also remove extranious config file.
This was SVN commit r14434.
2013-12-29 18:46:00 +00:00
3746690f82 Define GLX_MESA_query_renderer functions unconditionally. Fixes #2325.
This was SVN commit r14432.
2013-12-29 17:13:55 +00:00
bf58f04511 add wonder victory condition. Refs #1649
This was SVN commit r14418.
2013-12-28 13:40:39 +00:00
f254478d1b Revert accidentily committed changes.
This was SVN commit r14415.
2013-12-28 03:34:40 +00:00
177a7cd99d Make uninitilized players not show in the lobby leaderboard.
This was SVN commit r14414.
2013-12-28 03:32:31 +00:00
7688e9c93e Properly round rating calculation in the lobby bot to an integer.
This was SVN commit r14398.
2013-12-26 20:16:43 +00:00
4ac5aacc87 Strip some trailing spaces in the lobby bot.
This was SVN commit r14397.
2013-12-26 19:52:07 +00:00
ad0d81cb8a Various lobby changes and some optimizations in the lobby bot by scythetwirler.
This was SVN commit r14396.
2013-12-26 19:45:20 +00:00
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
f7e68a4d4c Bot optimizations by scythetwirler.
This was SVN commit r14387.
2013-12-25 15:13:58 +00:00
42bc5165ab Add compile time flag to disable use of miniupnpc.
This was SVN commit r14384.
2013-12-18 16:08:56 +00:00
c6d454ff2d Make ConfigDB threadsafe.
This was SVN commit r14373.
2013-12-17 19:58:39 +00:00
e83f24e3a6 Move UPnP port forwarding to a thread.
Fix some typos.
Do not return the result, as we would need to allocate it, but we never
use it.

This was SVN commit r14372.
2013-12-17 17:03:49 +00:00
4df4c0dec0 Try to actually do the threading my previous commit said it did.
This was SVN commit r14371.
2013-12-17 14:57:26 +00:00
0ba25e9968 Cache UPnP root URL to try to avoid searching each time. Also make searching asyncronous with the GUI to avoid hanging.
This was SVN commit r14370.
2013-12-17 14:21:49 +00:00
d2e671392b Fix bug in ipstamp module.
Sync with server. Refs #2307.

This was SVN commit r14363.
2013-12-15 18:33:01 +00:00
62a10ab938 Fixes Windows build.
Fixes UPnP error handling to be more correct and conventional, refs
#2305

This was SVN commit r14352.
2013-12-15 01:02:26 +00:00
f890856c6d Seperate differently licenced portions of sha.cpp/h into pkcs5_pdkdf2.cpp/h and remove some extra std includes in sha.cpp. Refs #2308
This was SVN commit r14350.
2013-12-14 16:58:21 +00:00
bf97148ddc Add proper licence header and remove tyedefs in sha.cpp/h. Refs #2308
This was SVN commit r14349.
2013-12-14 16:22:48 +00:00
5876ec38d1 Make sure we properly free some UPnP-related variables.
This was SVN commit r14348.
2013-12-14 03:21:21 +00:00
551eb3919d Change UPnP lease duration to 0 (permanent) and update comments.
This was SVN commit r14347.
2013-12-14 03:03:22 +00:00
667537ee49 UPnP-based automatic port-forwarding using miniupnpc. Breaks windows build at the moment. Refs #2305
This was SVN commit r14332.
2013-12-13 02:23:02 +00:00
1efd47c1ad Fix errors when loading a saved game with Aegis by making sure the AI re-inits properly. Still no real saved game support.
This was SVN commit r14329.
2013-12-11 17:10:14 +00:00
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
f9bee5d3ec Slight de-obfuscation of the AI code.
This was SVN commit r14317.
2013-12-09 14:20:11 +00:00
966f7c7145 Removes some duplicated code.
This was SVN commit r14311.
2013-12-08 19:23:09 +00:00
b1c081e36d Set svn:eol-style=native, fix some inconsistent line endings
This was SVN commit r14299.
2013-12-06 00:42:50 +00:00
4062e2011f fix tests
This was SVN commit r14288.
2013-12-05 08:53:40 +00:00
0ef6397545 Optimize the "Move()" function by removing unnecessary message broadcast. Fixes #2094
This was SVN commit r14287.
2013-12-04 17:38:46 +00:00
5f8b6be833 Some additions to the particle system:
This was SVN commit r14286.
2013-12-04 17:21:59 +00:00
189ef85538 Fix AI errors on skirmish maps.
This was SVN commit r14285.
2013-12-04 16:52:44 +00:00
60c986c135 * Add method to rangemanager to query around a position instead of an entity
* Use that method in the splash damage calculation
Fixes #2285

This was SVN commit r14283.
2013-12-04 15:30:01 +00:00
68880ca5d5 Make atlas player assignment apply to all of the currently selected units
This was SVN commit r14273.
2013-12-02 22:46:33 +00:00
351468dbe5 fix initialisation of developper overlay for saved games
This was SVN commit r14240.
2013-11-28 18:08:41 +00:00
acf1c420c1 Moves management of GL viewports to CRenderer, letting it store the current viewport; calling code can retrieve and restore it later (instead of using deprecated glPush/PopAttrib, previously removed for GLES compatibility by 7dec618898)
This was SVN commit r14235.
2013-11-28 00:57:39 +00:00
7345d27c84 Summon planes back from the emptyness
This was SVN commit r14230.
2013-11-26 15:12:16 +00:00
433b32bdcd Various XpartaMuPP cleanup.
This was SVN commit r14229.
2013-11-25 04:05:41 +00:00
c3ebb50711 Fix ratings and print rating changes in the lobby.
Fix game listings.
Fix non-hosts unregistering games.
Patch by scythetwirler.

This was SVN commit r14228.
2013-11-25 02:55:47 +00:00
5da63764e0 Fix compilation with wxWidgets 3.0.
This was SVN commit r14215.
2013-11-20 19:29:10 +00:00
5ce8de1f0a Removes unused var from JS debugger, from patch by Markus. Fixes #1852
This was SVN commit r14211.
2013-11-17 23:41:19 +00:00
6fba293088 In #2241 I'm going to change the GUI to have one ScriptInterface for each GUI page because that will be required for the Spidermonkey upgrade (#1886).
The Multiplayer lobby needs some changes to avoid compartment
mismatches. Instead of initializing it with a ScriptInterface and
storing script values at different locations, it takes a ScriptInterface
argument in the functions that really need to read or write some script
values and avoids storing values as script values with an associated
compartment where possible.
The scripting interface of the lobby is also adjusted to use
JSInterface_Lobby.h/cpp files as other components instead of adding all
functions to ScriptFunctions.cpp. This makes it a bit more clearly
arranged IMO.

Fixes #2267
Refs #2241
Refs #1886

This was SVN commit r14199.
2013-11-16 18:38:40 +00:00
47b26e56d3 Remove unused VideoRecorder from Atlas.
This was SVN commit r14181.
2013-11-14 23:05:07 +00:00
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
0170db4a53 Adding advanced graphical features into random maps. Fixes #2262.
This was SVN commit r14170.
2013-11-14 14:33:55 +00:00
321e61617b Improve MoveToTarget when the target is moving, fixes #2253
This was SVN commit r14168.
2013-11-14 07:25:56 +00:00
4915116ccc Fix glooxwrapper build on gcc 4.2 and warning on clang.
This was SVN commit r14167.
2013-11-14 00:32:28 +00:00
4c395f4bf2 Remove Trigger and Cinematic sections from Atlas.
This was SVN commit r14166.
2013-11-14 00:10:04 +00:00
e58fa107cc Fix skeleton caching.
This was SVN commit r14163.
2013-11-13 20:05:57 +00:00
7cb4c0dcfc Partial fix of minimap rendering for GLES.
Replaces glBegin/End with glDrawArrays, GL_QUADS with GL_TRIANGLES, and
modifies shaders as needed.

This was SVN commit r14153.
2013-11-12 01:31:52 +00:00
7dec618898 Some attempts to fix GLES build in smooth LOS and post proc manager.
Replaces glBegin/End with glDrawArrays, GL_QUADS with GL_TRIANGLES, and
replaces glPush/PopAttrib by resetting the viewport manually.
Adjusts GLSL shaders for these changes.

This was SVN commit r14152.
2013-11-12 01:30:17 +00:00
f1613a3c90 Fixes fancy waves build on GLES (replaces GL_QUADS with GL_TRIANGLES)
This was SVN commit r14151.
2013-11-12 01:25:32 +00:00
81eabfc934 Fixes basic water rendering on GLES (replaces GL_QUADS with GL_TRIANGLES).
Sets SDL2 to use correct profile for GLES.
Cleans up some old SDL 1.3 version checks.

This was SVN commit r14150.
2013-11-12 01:24:04 +00:00
5771bee032 First pass at fixing GLES build - more to come
This was SVN commit r14149.
2013-11-12 01:17:16 +00:00
0682c23fe3 Replaces BGRA textures with RGBA textures supported by GLES
This was SVN commit r14148.
2013-11-12 01:11:08 +00:00
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
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
a96ed190a5 Add GLX_MESA_query_renderer support to hwdetect
This was SVN commit r14130.
2013-11-10 16:24:03 +00:00
d178f32698 Fix Unicode in JS print() on Linux
This was SVN commit r14129.
2013-11-10 16:13:40 +00:00
c27c663697 Print a traceback after an exception in the bot.
This was SVN commit r14128.
2013-11-10 04:28:18 +00:00
d7ec8c47a6 Fix Unicode support in lobby.
Fix EncryptPassword being called with the wrong argument order, and
encrypting username instead of password. (This will break all existing
lobby accounts.)

Fix EncryptPassword not using all of salt_base.

This was SVN commit r14123.
2013-11-09 23:26:17 +00:00
35d48d2fe8 ...and increase HDATA_USER_SIZE so OglTex actually fits
This was SVN commit r14122.
2013-11-09 18:49:35 +00:00
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
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
3c47b12cbe Display texture memory usage in profiler's renderer stats
This was SVN commit r14116.
2013-11-09 01:03:23 +00:00
5dfc3746e3 Remove old and unused archive stats.
This was SVN commit r14114.
2013-11-08 17:27:21 +00:00
81cf02cc13 Fix building with --without-lobby. Fixes #2249.
This was SVN commit r14113.
2013-11-08 15:28:44 +00:00
f53bd8974c Add autobuilder support for glooxwrapper
This was SVN commit r14103.
2013-11-07 21:45:59 +00:00
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
87e9c5694e Change the LOGWARNING when a config setting doesn't exist to a LOGMESSAGE.
This was SVN commit r14101.
2013-11-07 21:02:22 +00:00
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
d7121f4f55 glooxwrapper by Philip to support building gloox on Windows.
This was SVN commit r14097.
2013-11-07 19:38:09 +00:00
b416de9b7c Remove the unused crypto++ library files.
This was SVN commit r14094.
2013-11-07 18:50:52 +00:00
72e11a2dea Fix VS2013 build errors, warnings
This was SVN commit r14073.
2013-11-03 12:46:07 +00:00
29e4b1a17c Update Android support
This was SVN commit r14068.
2013-11-02 23:05:38 +00:00
1fa2fc9739 CClientArea parsing test
This was SVN commit r14064.
2013-11-02 14:39:08 +00:00
60fb5ed1c3 - Fix garisson and formation aura types
- Implement tech mods for UnitMotion speeds, Fixes #1958, based on patch
by wraitii
- Implement athen_hero_themistocles ship speed aura as a test

This was SVN commit r14058.
2013-10-30 16:12:53 +00:00
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
4e86b00a05 Remove inconsistencies in the manual. Refs #2185.
Fix player name.
Make log messages when saving games use quotes around paths.

This was SVN commit r14037.
2013-10-23 22:18:40 +00:00
20ed5b118c Unify script conversions and remove JSInterface_Vector3D.
Because it was historically grown, we have some duplicated code for
converting script types to native types.
This patch removes the file JSConversions.cpp and moves some code to
ScriptConversions.cpp.
The places using JSConversions.cpp are changed to use the
ScriptInterface's conversion functions in ScriptConversions.cpp.
I also removed JSInterface_Vector3D because it had additional
requirements to the conversion code that no other code has and because
it's currently not used. I think it doesn't make sense to maintain code
just because it could possibly be used again later.

Closes #2213
Refs #1886

This was SVN commit r14036.
2013-10-20 17:13:53 +00:00
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
d6f6d2b145 Remove useless error messages.
This was SVN commit r14034.
2013-10-20 01:47:16 +00:00
b9892bc73a Remove ScriptableObject/CJSObject
Since all remaining uses of ScriptableObject/CJSObject have been
removed, the related files can now also be removed.
Closes #2212
Refs #2126
Refs #2137
Refs #1886

This was SVN commit r14026.
2013-10-19 10:14:08 +00:00
024dd82209 Fix non-PCH build
This was SVN commit r14024.
2013-10-19 01:11:20 +00:00
ac335f37c8 Fix some Clang warnings about unused private members
This was SVN commit r14023.
2013-10-19 00:53:58 +00:00
701508922f Use CStrIntern for font names to reduce lookup cost
This was SVN commit r14020.
2013-10-18 16:15:42 +00:00
91169c82c7 Optimise rendering of scrollable text boxes by clipping
Add optional clipping rectangle to CTextRenderer. Strings that are
printed
outside the vertical extent of the clipping rectangle will be
immediately
skipped. This greatly reduces the cost of large scrollable text boxes.

This was SVN commit r14019.
2013-10-18 16:05:02 +00:00
751558d894 Optimise text rendering by batching
When CTextRenderer is given multiple strings with no differences other
than position, render them in a single glDrawElements call to reduce
driver overhead.

Also avoid some unnecessary copies of std::wstrings.

This helps performance a bit with large GUI text boxes.

This was SVN commit r14018.
2013-10-18 16:02:48 +00:00
b6c7c0d799 Optimise glyph lookup in text renderer
std::map lookup was a major cost when rendering large amounts of text.
Replace it with a more efficient 2-level array.

This was SVN commit r14017.
2013-10-18 15:56:12 +00:00
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
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
6a2fac7a58 Add hotkeys for JSDebugger commands. Patch by sathyam. Fixes #2208.
This was SVN commit r14014.
2013-10-18 14:41:08 +00:00
e6d9094c98 Remove InitSavedGame, but keep the rallypoint problem it solved. Fixes #1762, Patch by mimo.
This was SVN commit r14010.
2013-10-16 17:58:12 +00:00
a2f836c393 Prevent bogus -Wmaybe-uninitialized warnings in GCC
This was SVN commit r14008.
2013-10-16 12:22:50 +00:00
5f5eedc513 Rename technology related files, methods and messages so their names represent the shared data flow between technologies and auras (and maybe future components). Implement the C++ part of auras through these generalised files. Fixes #2154
This was SVN commit r14001.
2013-10-15 10:05:08 +00:00
379a7b208f Implement the js side of auras. Refs #2048. Patch with the help of Alpha123. Only the temple aura is added as example, all other aura components are removed from the templates to be created from scratch again.
This was SVN commit r13998.
2013-10-14 15:51:21 +00:00
ce5c43fe03 Fix typo
This was SVN commit r13995.
2013-10-13 11:41:30 +00:00
a00e57df72 Fixes hypothetical mem leak in network code (and an error in Cppcheck), patch by Riemer, fixes #2122
This was SVN commit r13980.
2013-10-10 23:46:42 +00:00
f3d088dd5c Fixes JS debugger, fixes VS 2013 build error, re-fixes #2127, #2175
This was SVN commit r13973.
2013-10-07 22:55:30 +00:00
b9268fbdcd Fixes error logging in the JS debugger, based on patch by RefinedCode. Fixes #2175
This was SVN commit r13967.
2013-10-07 02:10:41 +00:00
50782c1c1c Fixes non-PCH build
This was SVN commit r13953.
2013-10-06 05:15:54 +00:00
754e794f9b Implements attack notifications based on patch by madmax and zoot, fixes #1719
This was SVN commit r13951.
2013-10-06 04:49:38 +00:00
3624c591bd Fix compilation failure without PCH.
This was SVN commit r13946.
2013-10-05 16:22:51 +00:00
85253ca3c8 Let corpses cast shadows again. Refs #1771.
This was SVN commit r13945.
2013-10-05 16:22:46 +00:00
7901ed51d4 Implements skirmish maps, based on patch by sanderd17, fixes #1198. Skirmish maps are like scenarios, except the player can choose their civ during match setup. To create a skirmish map: place some skirmish entities for each player in Atlas (see templates/skirmish/* for examples), uncheck the player's civ in Atlas' player panel if desired, and save in the maps/skirmishes directory. The map will appear in match setup under the "Skirmish" match type.
Implements custom, VFS-based map load/save dialogs for Atlas (replaces
broken native file dialogs), fixes #631, #889.
Fixes map loading/saving to handle arbitrary subdirectories for better
organization.
Adds default settings to Atlas player panel, fixes #1872. Each setting
now has a checkbox to choose whether it should be saved with the map
(avoids writing lots of useless default data for each map).
Adds map preview setting to Atlas, refs #1745.
Cleans up and simplifies some duplicate code.
Fixes optional serialization performance test.

This was SVN commit r13938.
2013-10-04 02:29:16 +00:00
6a97bbd4c3 Fixes dropdowns opening with empty list, caused assertion failure about vector subscript range in MSVC debug build
This was SVN commit r13936.
2013-10-04 00:31:36 +00:00
e700937fd3 Fix non-SSE x86 builds
This was SVN commit r13934.
2013-10-03 18:22:10 +00:00
9f5635085e Fix #1833: animals spin around needlessly while roaming.
Patch from mimo.

This was SVN commit r13924.
2013-09-30 23:52:22 +00:00
e449364408 Recompute system shader defines immediately when the relevant inputs change, instead of delaying until ReloadShaders.
This fixes an error with autostart and smoothlos=true, where the system
defines were being accessed before the first rendered frame.

This was SVN commit r13923.
2013-09-30 22:39:06 +00:00
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
fbee618ac8 Fixes memory leak in sound manager
This was SVN commit r13915.
2013-09-30 01:09:16 +00:00
238b7f84d8 Changes the ConfigDB to expose global functions to scripts instead of properties and custom objects.
Fixes #2172
Refs #1886

This was SVN commit r13914.
2013-09-29 18:56:50 +00:00
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
6b0a0e83eb Fix profiler malloc count in debug mode on Windows
wdbg_heap_NumberOfAllocations doesn't work without the wdbg_heap
leak detector, which is disabled since it's slow and broken.
Use a simple hook via _CrtSetAllocHook instead to count allocations.

This was SVN commit r13910.
2013-09-29 14:43:14 +00:00
eceae8be5c Fix crash when setting rally point
This was SVN commit r13908.
2013-09-29 14:02:47 +00:00
994ebd9836 Add a list of statically-constructed CStrIntern strings
Switch all the constant strings in graphics code to use the new
variables.
This avoids the cost of instantiating CStrInterns at runtime every
frame.

This was SVN commit r13906.
2013-09-29 13:19:52 +00:00
4e9570cd0f Fix unnecessary CShaderConditionalDefines copy, and inline some functions
This was SVN commit r13904.
2013-09-29 02:05:02 +00:00
f075571502 Fix slightly expensive GetSystemShaderDefines()
Only recompute when any relevant parameters have changed, then return
the cached value.

This was SVN commit r13903.
2013-09-29 01:00:11 +00:00
555deea136 Fix conditional defines to not construct new CShaderDefines frequently
CShaderDefines is designed to be efficient to copy and compare, but not
to construct. Conditional defines were constructing new CShaderDefines
for many models every frame.

Precompute all the possible conditional combinations of CShaderDefines
when a material is first loaded, so they can be looked up at no cost
when rendering.

This was SVN commit r13902.
2013-09-29 00:30:58 +00:00
28ce5f3458 It might be better to issue a LOGWARNING when Spatial queries are too large. Opening the crash window seems a bit too much for something that can be recovered from.
This was SVN commit r13898.
2013-09-24 21:50:46 +00:00
e370af8d4e Fix rally point rendering on saved games. Fixes #1762. Patch by mimo
This was SVN commit r13897.
2013-09-24 20:27:18 +00:00
cd51540725 This was SVN commit r13892. 2013-09-22 18:13:19 +00:00
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
5287af8967 Increased SpatialQueryArray max results from 1024 to 2048. This is a temporary fix until the Search and Prune solution is implemented.
This was SVN commit r13888.
2013-09-22 04:37:46 +00:00
9781b67cf4 Changes the Console to expose global functions to scripts instead of properties.
Fixes #2140
Refs #1886

This was SVN commit r13884.
2013-09-21 14:48:19 +00:00
12e2428495 Changes the Renderer to expose global functions to scripts instead of using CJSObject.
Fixes #2137
Refs #1886

This was SVN commit r13877.
2013-09-21 08:24:45 +00:00
d252e245ef Optimise fixed multiplies on MSVC x86
On MSVC, casting i32 to i64 then multiplying gets compiled into a call
to __allmul, which is slow. Use the __emul intrinsic instead.

GCC 4.6+ appears optimise this case automatically and doesn't need any
special handling.

This reduces the cost of ComputeShortPath by about 50% (testing AI vs AI
on Oasis 01).

This was SVN commit r13873.
2013-09-20 20:17:54 +00:00
bfe0b79b91 Better fix of Grid memory leak, refs #1842
This was SVN commit r13869.
2013-09-18 01:21:36 +00:00
9f2a850a95 Fixes buggy operators and memory leak in Grid class, refs #1842
This was SVN commit r13866.
2013-09-17 00:28:22 +00:00
5d9b2b95b0 Ticket #2127 - Performance and style improvements in scriptinterface.
No real behavior changes, only code maintenance.

Fixed signed/unsigned mismatch in EntityMap.h

This was SVN commit r13865.
2013-09-16 19:10:06 +00:00
1b6a5fa802 This was SVN commit r13861. 2013-09-15 21:37:05 +00:00
2a5ec404d1 Further reverted RangeManager sorting to stable_sort, since possibly with different STL implementations, the order of entities might change and cause OOS.
Overflowing elements in SpatialQueryArray are now reported with
debug_warn, but can be ignored and the program will continue working,
but further entities will be truncated.

This was SVN commit r13860.
2013-09-15 21:11:20 +00:00
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
126e550d68 Delete bogus file
This was SVN commit r13841.
2013-09-14 12:19:22 +00:00
c28151c1c1 Put tooltips on a diet.
This was SVN commit r13835.
2013-09-13 23:49:46 +00:00
5304bc9d6a Changes GameView to expose global functions to scripts instead of using CJSObject.
Fixes #2126
Refs #1886

This was SVN commit r13826.
2013-09-12 12:40:05 +00:00
05422ad545 Avoid slightly-expensive QueryInterface() calls
Add CEntityHandle which wraps an entity_id_t and also has a pointer to a
per-entity array of IComponents. QueryInterface/CmpPtr on a handle just
involve a couple of pointer dereferences instead of a map lookup.

This requires sizeof(void*) per registered interface type per entity,
which is currently ~0.5KB per entity, which shouldn't be a problem.

This was SVN commit r13825.
2013-09-11 20:41:53 +00:00
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
d037d97d55 disable querying of local entities with a component. Avoids OOS problems. Patch thanks to historicbruno. Fixes #2119
This was SVN commit r13820.
2013-09-10 12:27:59 +00:00
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
b2862f14da Avoid continual libxml2 memory leak in simulation-test mode
This was SVN commit r13817.
2013-09-09 20:22:42 +00:00
7a0e91ab23 Fixes undefined behavior in Atlas error display, fixes #2115
This was SVN commit r13808.
2013-09-08 03:35:05 +00:00
16c9724c24 Fix release build scripts
Exclude dev.cfg from the Windows installer.
Use the correct filename for the Windows installer.
Update some paths to match the new EC2 build process.

This was SVN commit r13802.
2013-09-06 19:43:45 +00:00
e19b470a42 fix music glitchyness when game loses focus trac #2090
This was SVN commit r13799.
2013-09-06 02:46:13 +00:00
53a5781c66 Increase simulation script runtime size again. Refs #1436, #1966 and #2035.
This was SVN commit r13794.
2013-09-01 23:29:21 +00:00
df190cbbd1 fix issues with menu mode and playlist, harden code and clear out ambient noises at game end, fixes #2066
This was SVN commit r13784.
2013-08-29 13:20:55 +00:00
89430de468 Okay, do what f5ab6255d0 was supposed to do.
This was SVN commit r13773.
2013-08-26 04:17:26 +00:00
b10a01645f Revert f5ab6255d0. I accidentally somehow committed my whole working tree on this computer....
This was SVN commit r13772.
2013-08-26 04:15:36 +00:00
f5ab6255d0 General scrollbar improvements. Patch by Josh. Fixes #2080.
- Don't show the scrollbar when the contents aren't overflowing the
visible area.
- Fix bugs in minimum bar sizing.
- Add capability to set a maximum bar size.
- Correct outdated/incorrect comments.

This was SVN commit r13771.
2013-08-26 03:06:08 +00:00
f106d7714a Fix a swap between reflections and refractions in config.cfg . Disabling "Render Reflections" now reverts to the skybox for better results.
Allows to oversaturate in Atlas' HDR settings.

This was SVN commit r13752.
2013-08-24 14:44:38 +00:00
957c51727b Improve on-water shadows. Fix an issue with foam looking static. Add anisotropic filtering (x4) to the water normal texture for testing.
This was SVN commit r13750.
2013-08-24 14:12:39 +00:00
630301918c Fix the command line -autostart-aidiff to default to 2 (new medium)
This was SVN commit r13746.
2013-08-24 09:55:06 +00:00
c1dcbe4176 update TLB table
refs #2074

This was SVN commit r13741.
2013-08-23 06:42:48 +00:00
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
deb64d36fc Fix rendering artifacts with novbo=true gentangents=true
glDrawRangeElements needs to know the range of vertexs that are used
by the index array. With VBOs it doesn't really matter if the range
is wrong (all the vertexes are in GPU memory anyway), but with CPU
vertex arrays the driver has to memcpy the given range of data, so
incorrect bounds will result in garbage data being rendered.

With gentangents, the rendered mesh can have more vertexes than the
original CModelDef, but was rendered with the CModelDef's vertex count.

Use the correct vertex count instead.

Refs #2050.

This was SVN commit r13734.
2013-08-21 21:01:32 +00:00
52d6a8036d This was SVN commit r13725. 2013-08-21 05:37:28 +00:00
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
ee877a46c7 Switch X and Z loops in the foam generation, possible speed improvement.
This was SVN commit r13720.
2013-08-20 08:55:33 +00:00
54bbbb9797 Boost 1.54 deprecates Boost.Signal. Use Boost.Signal2 for >= 1.54.
This was SVN commit r13716.
2013-08-19 22:11:54 +00:00
1739a381c1 Fix crash when editing terrain near map edges.
The values in CMessageTerrainChanged can be overestimates that exceed
the normal map boundaries, and should be clamped before looping over
them.

This was SVN commit r13714.
2013-08-19 19:19:34 +00:00
0ca841b92b Suppress unused local typedef warnings when including SpiderMonkey headers.
This was SVN commit r13713.
2013-08-19 18:26:44 +00:00
0c16980408 Fix tests.
This was SVN commit r13709.
2013-08-19 10:55:35 +00:00
b770c41f0b Removes shadow casting and receiving on preview entities, patch started by ericb, fixes #1771
This was SVN commit r13706.
2013-08-18 22:17:57 +00:00
0888cf6c23 Fix Linux build
This was SVN commit r13701.
2013-08-18 11:28:52 +00:00
29b5021f97 Fix my previous commit because obviously I had forgotten something.
This was SVN commit r13699.
2013-08-18 09:42:02 +00:00
a4707bcc16 Change the water manager so incremental updates to the water information is possible. Streamline a few things (and removes a not-really-used calculation to speed things up further). Fixes #2063 , refs #1743.
This was SVN commit r13698.
2013-08-18 09:27:11 +00:00
92f4391f51 Adds tech template support to checkrefs.pl
This was SVN commit r13696.
2013-08-18 02:52:05 +00:00
791d392797 Fixes and improves terrain scanning of checkrefs.pl.
Removes some useless old actors.

This was SVN commit r13695.
2013-08-18 01:57:37 +00:00
a9c71e39a4 make new elevation tool more drastic + add RMB action
This was SVN commit r13684.
2013-08-17 14:02:18 +00:00