1
0
forked from 0ad/0ad
Commit Graph

413 Commits

Author SHA1 Message Date
f45c44ca09 Rotated various things (terrain texture UVs, default light and camera angles) by 45 degrees.
Map XML: Store camera position. Stopped using DTDs (because they make it
too hard to change the XML structure without breaking all the old XML
files).
Game.h: Include fewer files, to make compilation sometimes faster.
World: Changed some things to not be singletons, since they were
(ab)used as CWorld members.

This was SVN commit r3670.
2006-03-21 20:55:45 +00:00
e0280949fd file_cache: fix: add buf/size combo to exact_buf_oracle if file_io rounded size up.
trace: split code out of vfs_optimizer (was getting too large)
vfs_mount: expose API to unmount all (needed to be able to delete
archives after building)
vfs_optimizer: safely handle empty connection/node lists;
refactored+documented
vfs_tree: eliminate 'file in root dir' warning (can happen easily
enough)

rest: fixes/minor tweaks

This was SVN commit r3610.
2006-03-07 05:44:34 +00:00
0fd85b76db automatic archive builder now functional and enabled.
- allocators.cpp: fix: make sure all pool fields are reset in
pool_free_all; correct matrix self-test
- lib: fix self-test
- lib_error: give "informational" return codes values > 100 (allows
multiplexing with percent indicator)
- archive: add clarification to afile_enum; use vfs_load when building
archive (fixes caching problem); add support for progressive archive
creation
- file: allow pp_set_dir's path to end in slash (simplifies other code);
add file_exists
- file_cache: add stats+sanity checks to allocator; improve ExtantBufMgr
find(); add ExactBufOracle to translate padded address returned by Cache
to what was actually allocated; relax infinite-loop check; fix
file_cache_reset
- file_io: refactor callback logic so it can be used by vfs (needed for
vfs_load)
- vfs: vfs_load now supports calling back (required for archive builder)
- vfs_mount: optimize path caching in afile_cb: due to atom_fn system,
string compare can be done via pointer compare
- vfs_optimizer: support auto-build of archive (progressive); improve
should-build-archive check (WIP)
- vfs_path: add util functions (also used in screenshot code)
- vfs_tree: simplify pathname storage
- wposix: mmap bugfix
- main: call progressive archive builder; skip reload when doing so
(documented)
- JSInterface_VFS+scriptglue: add archiveBuilderCancel
- ps/Util: use new vfs_path helper function for cleverer screenshot
naming (correctly handles some being deleted)

This was SVN commit r3578.
2006-03-01 22:31:11 +00:00
c4e3037e60 adts: add LL_OPT_* defines that enable optimizations (some only make sense if there are tons of files, and need to be able to disable them for thesis). realized this would be perfect application of policy template classes, which will replace this.
fix crashdumps: was failing to write out to file (underlying cause:
current directory no longer being set)
app_hooks: add get_log_dir; used by debug and wdbg_sym

minor improvements/documentation in archive+compression+file_cache+zip

main: remove dead ScEd code

This was SVN commit r3498.
2006-02-11 22:49:09 +00:00
7838627cd2 - vfs_load now returns error code and takes FileIOBuf; that must be freed via file_buf_free. if Handle is needed, use mem_wrap.
- remove ScEd hacks and CFont et al macro rename
- fix accursed bug in VFS buffer management that was causing ReadFile to
fail without error (not allocating enough padding)
- vfs_tree: bugfix in tree_lookup
- waio: temporarily disable sector size determination (pending better
approach - need to determine if using DVD drive)

This was SVN commit r3421.
2006-01-24 08:16:29 +00:00
0a3e9ec537 - Added pause game functionality.
- Removed CDamageType from the engine - damage is now handled only
within the entity script (easier to mod/modify).

This was SVN commit r3325.
2006-01-02 03:07:29 +00:00
6e82e33ccf - display_msg and display_error -> debug prefix since in debug header
- debug_warn_err now takes LibError
- lib_error.cpp: revise error code -> string (only support liberror
now); add function to set errno from LibError
- unifont, CFont: parameter made a simple wchar_t from const wchar_t&
- mmap now sets errno
- Loader and VfsUtil function now return LibError as well
- Profile.cpp, ProfileViewer.cpp: fix int/uint/size_t warnings
- Renderer.cpp: fix cannot-generate-assignment-operator warning

This was SVN commit r3235.
2005-12-12 19:19:30 +00:00
6af5888866 replace g_active with more clear g_app_has_focus and g_app_minimized
reinstate g_keys - realized that atlas mode cannot call SDL_GetKeyState
main: use g_app_minimized etc. to use up less CPU time when app isn't
active (makes debugging more bearable)

This was SVN commit r3070.
2005-10-31 18:36:36 +00:00
2452e29f0d remove key- and mouse-state-clear code (previously called after alt+tab out). wsdl now takes care of this: by maintaining its own key array+sending up events for all currently down keys; and by capturing the mouse on each click.
-- this fixes "cursor keys require ctrl" bug reported by jason
wdbg_sym: fix warning
wsdl: as above and also better SDL_ACTIVEEVENT handling
mmgr: 500µs -> 500s -> 500us :)

This was SVN commit r3065.
2005-10-31 01:15:49 +00:00
52a8793450 Atlas: Bits of tool-related code.
Game: Large screenshots (with ctrl+alt+F2).

This was SVN commit r2994.
2005-10-24 01:53:03 +00:00
26d2fc71ad loaders: increase timeout interval (less time wasted in main loop during loading)
vfs: move public functions into vfs.cpp to avoid confusion (except
vfs_mount in vfs_mount.cpp, but that's obvious)
h_mgr: fix bug in filename display causing dir names to be truncated
main/gamesetup: replace 2 bools with flags; remove Atlas trampoline
functions (clutters up main.cpp)
atlas: use GameSetup.h instead of extern ..

This was SVN commit r2983.
2005-10-21 18:01:21 +00:00
32cfc6d807 minimap: now use GUI event system instead of polling. fixes broken click feature.
textureentry: add performance note
list, text: fix mousewheel direction
input: was going to add a deque to allow registering handlers in back
and front. obviated by minimap fix, though. cleaned up a bit and renamed
stuff (again, sigh).
loaderthunks: fixed weird alignment/padding warning

This was SVN commit r2979.
2005-10-20 15:27:39 +00:00
bed9363bfe lib/input.h was old+bad code. fixed in_add_handler return type to enum; renamed EV_PASS to IN_PASS; no longer include sdl.h from other code (instead rely on input.h)
This was SVN commit r2975.
2005-10-20 17:44:56 +00:00
02341916dc Minimap: refactor if() spanning 200 lines into if(!) return
cause of minimap click no longer working has been found:
GlobalInputHandler isn't getting called due to incorrect order of
registration. fix is pending.

game: add code from ScEd that fixes lack of player color (by setting up
local players)
thanks to Simon for finding the cause (I want that crystal ball :D)

This was SVN commit r2967.
2005-10-19 06:11:21 +00:00
2ef8a7b630 Sped up minimap rendering by having a separate LOS texture and recomputing only that per frame. To force a recompute of the terrain texture, set g_TerrainModified to true sometime before the render step of each frame (it is set back to false at the end of the frame).
This was SVN commit r2963.
2005-10-19 03:02:51 +00:00
b350f54162 ogl_tex: centralize OpenGL caps detection; allow user override for broken card/driver combos
- enable floating point exceptions (helps catch bugs)
file.cpp: improved error checking in dir_open/dir_next_ent code
vfs.h: expand docs; add note on patching + SCM
main: use spf (1/fps) to derive TimeSinceLastFrame (makes for smoother
updates)
timer: rename SUM_TIMER to TIMER_ACCRUE. interface change allows
unlimited number of timers (instead of static limit as before).
documented everything

This was SVN commit r2958.
2005-10-17 23:35:16 +00:00
953d2621dd timer: improved timer_add_client - no longer has fixed-size storage. btw, name will change here - not happy with SUM_TIMER.
GUI/input code: moved g_active, g_keys etc. into ps/Globals; it has its
own input handler as well

all users of fopen(): add file_make_full_native_path to get correct path
even though current dir = system/

This was SVN commit r2954.
2005-10-16 23:16:08 +00:00
af70f0136b GameView: made file-scope data static (prevents accidental/evil use from other files and name collisions)
TextureEntry: add SUM_TIMER around base color calculation
Zip: add SUM_TIMER around inflate/memcpy

main: re-removed g_MaxZoomHeight - this doesn't belong in the message
loop. it resides in GameView.cpp

This was SVN commit r2945.
2005-10-15 21:15:33 +00:00
pyrolink
bf99370232 Lowered g_YMinOffset
This was SVN commit r2944.
2005-10-15 19:38:04 +00:00
7b31f0372b GameView: move camera lock params here
wsdl: add proper event queuing mechanism (no longer requires hacky
polling for changes and avoids WM_USER)
rename keys[] and mouse_buttons to g_keys and g_mouse_buttons
fix flipped mouse wheel direction; wsdl now sends up AND down event
(removed 'reset' hack in main.cpp)
main: clean up event handler and kill_mainloop

This was SVN commit r2934.
2005-10-13 18:05:55 +00:00
c498468fd0 wsdl(+main): add support for cleanly shutting down game if X clicked or Alt+F4 pressed. also cleanup; correctly declare SDL_Event
dyn_array: add pool allocator - see comments.
file(+gamesetup): add suballocator for aiocb (requires shutdown); revise
validator; rename file_*_io to file_io_*

This was SVN commit r2906.
2005-10-12 04:27:55 +00:00
c92c9376b9 Fix out-of-range write to the keys[] array, caused by fake SDL_KEY* events.
Pressing the Windows key no longer crashes the Linux build.

This was SVN commit r2814.
2005-09-29 22:22:43 +00:00
b67b023513 Add more verbosity to the shutdown sequence.
Shutdown doesn't look clean on Linux, and this might help highlight
current and future problems. Besides, we don't want shutdown to take
ages, do we? ;)

This was SVN commit r2801.
2005-09-29 02:30:30 +00:00
a769783d5d Fix scroll wheel zooming on Linux.
Refactored HandleEvent into CGameView.

This was SVN commit r2800.
2005-09-28 23:57:55 +00:00
pyrolink
ed0dbb6d89 Added variables used by the MiniMap.cpp and GameView.cpp, and are for the CameraLock() function.
This was SVN commit r2788.
2005-09-28 03:44:21 +00:00
aa118403bb Terrain: CalcFromPosition, to convert world-space to tile-space.
ScEd: Compilation fixes.
Atlas: Screen-space to world-space conversion when editing terrain.
Wireframe option. Minor wxWidgets 2.6.1 fixes. AoE3Ed.

This was SVN commit r2698.
2005-09-12 20:04:26 +00:00
1af9aa074e Added initial version of building placement cursor, which can be shown with the startPlacing(templateName) JS function.
Also activated depth test for selection outlines so they don't overlap
units.

This was SVN commit r2667.
2005-09-05 19:48:28 +00:00
5d62c3f3f7 Atlas: Simple undo system
This was SVN commit r2627.
2005-08-20 15:44:50 +00:00
b4ad393ee4 moved ps/X* to ps/XML/
premake: reflect 2 added and 1 removed source dir
add ps/Util - some helpful functions that were previously in main.cpp

This was SVN commit r2624.
2005-08-14 23:50:37 +00:00
dc027002c0 host of changes to accommodate Atlas:
- input.cpp allows feeding in events from the outside (will be used by
main.cpp and Atlas msg loop)
- most of main.cpp split into ps/GameSetup.*
- main.cpp is now a "controller" that drives the game via SDL events
(Atlas is another such controller that can override main.cpp). it calls
GameSetup functions to set up and processes messages.
- add functions to import AtlasUI.dll automatically

also, the usual refactoring ;)

This was SVN commit r2622.
2005-08-14 23:34:37 +00:00
b5575256e9 wposix: add warning for RTLD_GLOBAL, which isn't supported.
main: add logic for run-time load of Atlas (ATLAS_* section). also moved
GUI code into a GUI_* section, removed console "Testing function
registration", moved input init into a separate function and cleaned up
a bit

This was SVN commit r2619.
2005-08-14 15:23:59 +00:00
0e20c08969 waio: fix spurious WARN_ERR
vfs: integrate hotload code
fixed a few warnings as well.

This was SVN commit r2609.
2005-08-13 17:09:57 +00:00
4aa740bff5 - split up lib/res into file, graphics and sound.
- wposix.cpp: initial support for MEM_RESERVE and MEM_COMMIT semantics
in mmap
- cstr: removed no longer necessary serialization header
- xmlutils: wrap new() calls in nommgr/mmgr; allows tracking other
allocs in this file.
- add u64_from_u32
- various minor comments/improvements.

This was SVN commit r2604.
2005-08-12 17:06:53 +00:00
622ceeda94 - color -> colour
- add note on performance in TextureManager.cpp

debug_stl: more fine-grained #if STL_DINKUMWARE (gets this closer to
working on other STL implementations)
vfs.h: improved dox and moved vfs_path public functions here.
cursor: pass g_mouse_x as a parameter (SwEng)

This was SVN commit r2595.
2005-08-10 01:12:03 +00:00
620c65722f group all config-related code into CFG_ functions. also as in prev. 2 revisions
This was SVN commit r2587.
2005-08-09 16:03:36 +00:00
630b375f4d ScEd updated for new terrain stuff, window styles for pyrogenesis in windowed mode changed to give a bordered movable window.
This was SVN commit r2583.
2005-08-08 03:59:50 +00:00
0b193342e7 fix init order bug that was rendering CLogger inoperable
This was SVN commit r2496.
2005-07-20 04:52:05 +00:00
67777bd159 cursor: remove old Win32 implementation
main: add new variable for clarity

scriptglue: massive refactor. added docs, rearranged into groups,
eliminate forward decls, consistent param checking, some progress on
consistent naming and formatting.

This was SVN commit r2492.
2005-07-20 00:57:17 +00:00
7a889deca3 cursor: tried all sorts of implementations to fix bug#66, but after 2 days of debugging, the problem was found to be elsewhere (issue with delay-loading). fixed by keeping a reference to user32 at startup.
main: replace old memory_debug_turbo_extreme_plus with debug_heap_enable

This was SVN commit r2488.
2005-07-16 17:52:05 +00:00
c0b4abafb6 main: slight bugfix: typo -> compiler optimizations were left disabled instead of only temporarily.
JSI_Sound: add special case to prevent exceptions from being thrown when
sound is disabled via quickstart

This was SVN commit r2486.
2005-07-15 17:58:27 +00:00
2546abbaf1 bugfixes: floats, STL containers; add self-test (exposed many many problems) and more comments
main: removed obvious MICROLOG

This was SVN commit r2462.
2005-07-03 20:48:47 +00:00
549150fe38 Atlas: simple camera control and terrain editing.
Terrain: added terrain-editing code to CTerrain, for better
encapsulation or something.
Console: simplified screen resizing.
Game/etc: removed some unnecessary header file inclusions.

This was SVN commit r2459.
2005-07-03 16:25:48 +00:00
ec6b78b252 rename assert2 debug_assert; use instead of all plain assert(), since there are no longer any issues (e.g. can't use while handling an exception)
This was SVN commit r2447.
2005-06-28 04:06:25 +00:00
cf37e9cbe6 Atlas: Added a button. Reorganised game<->UI communication system.
main.cpp: Allowed correct operation when not calling Init/Shutdown.
Game.cpp: Stopped complaint when starting game with no GUI.

This was SVN commit r2446.
2005-06-27 23:04:34 +00:00
5c4d41fd0f Initial parts of Atlas integration
This was SVN commit r2435.
2005-06-25 02:21:26 +00:00
9c4148aa0c replace display_msg with full-blown error dialog
(makes possible philip's suggestion of continuing even if exts are
missing)

printf: add extern "C"

This was SVN commit r2417.
2005-06-21 16:27:26 +00:00
32772dbf71 So, ScEd updated to comply with terrain XML's (and it seems to work fine too!)
This was SVN commit r2414.
2005-06-20 17:34:17 +00:00
7577d224a6 Terrain XML loading, plus mouse/JS portability and some misc stuff to mix it up
This was SVN commit r2412.
2005-06-20 15:14:36 +00:00
ae0f4fa731 timer.h: require trailing ; after TIMER
wtime.cpp: fix comment
main: reorder includes, remove deadwood, rename a few functions for
consistency, moved config code together into one section, slight change
to system info text file (for new ogl driver detect code), remove
_control87 (see comment)

This was SVN commit r2392.
2005-06-16 21:50:20 +00:00
d24fd1b0c9 Use gl*ARB wherever possible. They are mapped onto the core gl* function if the driver's version is high enough, else onto the extension's gl*ARB function.
(Just for fun, compressed texture uploads are mapped onto a
decompression function if the user's system doesn't understand S3TC
textures.)
Corrected (unless I'm wrong) GL version identification logic.

This was SVN commit r2384.
2005-06-14 03:33:16 +00:00
dd3c8f6fb5 Use the standard Singleton for CLogger, to fix problems with unordered shutdown
This was SVN commit r2383.
2005-06-13 19:31:48 +00:00
33a2f16ec3 remove sundry debug remnants
This was SVN commit r2375.
2005-06-05 05:07:22 +00:00
21149d9fd0 Renamed translate() to I18n::translate(), to minimise conflicts
This was SVN commit r2334.
2005-05-22 22:58:27 +00:00
d0f7cb015c - Linux/GCC (as usual :P)
- Ported lockless code to gcc inline assembly
- A few new net messages (gather, attack, add waypoint)
- Support for new messages in network->entity order converter
- Implemented rudimentary JS interface for Interaction
- issueCommand JS API, connected to the network
- Removed Interaction stuff now replaced by JS
- And something in there should probably break VS builds :P

This was SVN commit r2316.
2005-05-18 05:32:09 +00:00
fd4eb91e93 debug_out -> debug_printf; MICROLOG moved to ps/Pyrogenesis.h
This was SVN commit r2285.
2005-05-11 18:56:30 +00:00
1ff0d112d2 revise loader return values - nicer interface now.
This was SVN commit r2281.
2005-05-11 04:39:21 +00:00
MarkT
86dc351205 Projectile code and updates to some actors that can use it (celt_ijv and hele_iar)
This was SVN commit r2266.
2005-05-10 07:13:25 +00:00
cab424ce81 Creating playlist sub-window to soon try out file access functions. (Committing in-development stuff to get an auto-build incorporating change to GUI .xml names.)
This was SVN commit r2214.
2005-05-02 22:04:29 +00:00
MarkT
bcabe3aa53 Script integration work - valueOf() is no longer required most of the time; also property-change watches and enumeration over entities (but not yet other native objects), rudimentary beginnings of a global events system, and adjusted the status orb to update only on changes.
This was SVN commit r2157.
2005-04-22 07:12:55 +00:00
771a9ba0dd label each system_info field (because even I was getting confused :P). nicer network host/IP detect code
This was SVN commit r2150.
2005-04-19 17:04:12 +00:00
MarkT
2120576bc7 Gathering and unit training (engine-side); also other minor improvements
This was SVN commit r2132.
2005-04-15 04:23:33 +00:00
6a0b5fa0ab ScEd: Added unit deletion. Made zoom less frustrating. Let >2 players work.
Fixed random actor props.

This was SVN commit r2109.
2005-04-03 05:02:00 +00:00
9d139926c9 file: provide FILE_TEXT flag that enables newline translation - useful when outputting XML files, so notepad doesn't see "\n" (which it can't handle)
vfs: no longer watch dirs when mounting - need to pass flag. allows
turning this off for screenshots dir (where hotloading doesn't make
sense)

vfs_tree: expand hash table when 3/4 full; 1/2 was quite wasteful.

main: do CPU init early, so timing during init can use TSCmain: do CPU
init early, so timing during init can use TSC

This was SVN commit r2098.
2005-04-29 13:17:17 +00:00
0eb78450c0 Maybe fixed GUI event-handler function things. Other minor changes and fixes.
This was SVN commit r2096.
2005-03-30 22:33:10 +00:00
MarkT
bb7a22f32a First draft of a GPG3-style profiler (including tracing into scripts, after a fashion)
This was SVN commit r2090.
2005-03-30 16:14:19 +00:00
22dd4dd67b Entities: Removed Tag attribute; it is taken from the filename instead. Made entity XML files be loaded on demand. Probably stopped crash when maps contain non-existent entities. Fixed a few bugs in entity definitions.
Maps: Stored non-entity objects in XML instead of PMP, for easier manual
editing. Updated existing maps to newest format, so that they can still
work. Added undocumented _rewriteMaps() JS function. Also renamed _mem
to vmem, and reclassified its undocumentedness as unintentional, since
it's reasonably useful.
Loader: added NonprogressiveLoad function, for ScEd/_rewriteMaps/etc
which don't care about progressiveness.
main.cpp: re-enabled vfs_display, since it doesn't crash now
Vector3D: stopped warning

This was SVN commit r2078.
2005-03-29 20:50:04 +00:00
MarkT
3c99f0f2eb Minor JavaScript updates
This was SVN commit r2073.
2005-03-28 22:13:47 +00:00
204960c8ee add vfs_init, shorten load timeslice
This was SVN commit r2059.
2005-03-27 01:47:36 +00:00
c11465cfbf Updated actor references to use filenames instead of names, to allow more efficient loading. Added backward-compatible file support to the Actor Editor.
This was SVN commit r2049.
2005-03-25 23:04:36 +00:00
020645d583 Hacked up ScEd a bit, to disable its actor editor and to let users place entities (rather than actors) on the map.
This was SVN commit r2039.
2005-03-22 23:31:30 +00:00
f19d8dafee improved update frequency and accuracy of progress bar (by splitting up more init functions).
also add thunk mechanism to ease binding to member functions;
finally, added instrumentation to measure how long functions really take

This was SVN commit r2038.
2005-03-22 21:00:56 +00:00
6d792365aa rough but functional loading progress bar support.
numerous TODOs remaining - initial update instead of only after
completing first job; fix GUI overdraw issue; decrease granularity
(currently only 3 updates)

This was SVN commit r2033.
2005-03-22 02:17:55 +00:00
219509f00f Fixed another missing posix.h. Documented a little bit of main.cpp.
This was SVN commit r2016.
2005-03-18 23:04:29 +00:00
eab88e4354 param to InitVfs made const (BTW, why check argc?); remove lib_init
This was SVN commit r2012.
2005-03-18 22:19:38 +00:00
19b3d2d388 rename oglExtAvail to oglHaveExtension
main.cpp: also provide for different screenshot file formats by passing
in extension
ogl.cpp: also add oglHaveVersion

This was SVN commit r1984.
2005-03-10 16:57:42 +00:00
56af3ca47d Made lodbias and vsync config options work. Removed CHEEZY_NOMIPMAP (which forced mipmaps to be enabled), since it's evil.
This was SVN commit r1971.
2005-03-09 00:55:22 +00:00
f70703bc78 set sound master gain from config file (sound.mastergain)
This was SVN commit r1942.
2005-02-26 21:44:21 +00:00
Gee
5c8ed144ed handlers section slightly updated.
This was SVN commit r1905.
2005-02-05 07:25:41 +00:00
880634b598 Small changes to ScEd, to remove some hacky bits and to make it not crash with player-colours
This was SVN commit r1899.
2005-02-04 23:16:42 +00:00
4ed4a7e16d Fix for the crash when a client connects, as well as some minor additions to client/server code
This was SVN commit r1861.
2005-01-29 16:51:13 +00:00
e372bd3f5a Fixed probable mistyping. Removed apparently-unnecessary ScEd code.
This was SVN commit r1855.
2005-01-28 22:19:09 +00:00
f55107c114 sysdep: inline vsprintf2 definition (no need for printf.h)
win.cpp: remove hWnd (not needed for clipboard code) and TSC reference
(a temporary hack)

This was SVN commit r1840.
2005-01-27 15:50:11 +00:00
c12c6a0e4d main: remove __try (non-portable). wdbg exception handler will cover it. if that needs to be debugged, add __try in win.cpp around call to main()
This was SVN commit r1817.
2005-01-25 18:56:43 +00:00
d29833e4ed mouse_x/y => g_mouse_x/y
This was SVN commit r1767.
2005-01-23 17:35:36 +00:00
bcf89936c1 Fixed a few memory leaks as well as the CPlayer/SColour crash-on-exit bug
This was SVN commit r1756.
2005-01-23 01:36:47 +00:00
ae38aee3d2 Revamped CNetClient/CNetServer JS Interface and new CGameAttributes
implementation (moving towards a merger of CGameAttribs into CGame).

This was SVN commit r1746.
2005-01-19 22:32:25 +00:00
MarkT
25fdbfd931 Fixes for two pathfinding bugs (neither of which were actually pathfinding bugs), added player objects (details in TM)
This was SVN commit r1733.
2005-01-18 00:46:18 +00:00
2077698156 New JavaScript interface for the network client, plus some linux/gcc/misc fixes
This was SVN commit r1730.
2005-01-17 04:52:02 +00:00
4720a00f98 Made ScEd output entities into an XML file.
Added CStrW::utf8() (used by XMLWriter).

This was SVN commit r1716.
2005-01-12 14:31:47 +00:00
15fcf8f054 Neatened some debug messages. Changed main.cpp so ScEd can use it. Fixed minor inconsistencies and warnings.
This was SVN commit r1708.
2005-01-11 16:58:16 +00:00
fba99c3414 vfs: fix mounting archive contents - now relative to mount point as it should.
added flags to vfs_mount that enable looking for archives and mounting
subdirectories (previously always done, but slow)
main: uses above flags when mounting

This was SVN commit r1695.
2005-01-10 18:44:41 +00:00
56949e6fc4 lib: add big endian readers; add VC intrinsic bswap routines
tex: improve flip / bgr convert (now generalized "transforms"); add
support for transforming image before encoding

wsdl: add SDL_ShowCursor, minimize when tasking out

main: WriteScreenshot improved, fixes flipped screenshots

This was SVN commit r1689.
2005-01-09 14:23:59 +00:00
2077d4fd1d timer.cpp: start FPS value = 60 => faster convergence
timer.h: TIMER uses debug_out

main/input: moved game_ticks to input.cpp (only used if input.cpp is
included)

This was SVN commit r1653.
2005-01-07 00:52:05 +00:00
0de796c5ea Send Load event to GUI objects after (instead of while) loading the rest of the engine
This was SVN commit r1635.
2005-01-04 21:51:23 +00:00
f4fe8c8543 Sky colour, plus skycolor config value
This was SVN commit r1583.
2004-12-28 11:16:05 +00:00
c9d89e964b Moved g_Gui.TickObjects to the main render loop and update the scheduler when no game is running
This was SVN commit r1531.
2004-12-18 23:25:58 +00:00
24abb51b59 First crack at loading screen (though need to figure out a way to move session loading to next frame to get it to actually stay on the screen). Some preliminary work on sub-windows.
This was SVN commit r1489.
2004-12-12 19:34:38 +00:00
9d317d8164 1) removed scaffolding from file
2) VFS: add path_copy convenience routine
3) various lib code: removed unnecessary const cluttering things (like
const char* _const_ name in param list)

This was SVN commit r1483.
2004-12-09 23:12:02 +00:00
cc02422908 1) TIMER added to timer.h (moved from main)
2) wposix: cache file status in struct dirent (Win32 specific)
3) vfs: speed up vfs_mount (via 2) and zip_cb path lookup caching
scheme)
4) temp scaffolding added to file.cpp to measure performance

This was SVN commit r1482.
2004-12-09 20:17:09 +00:00
f36008ac3b added TIMER(name_of_block). it declares a scoped object that measures time between ctor and dtor, and is therefore perfect for measuring how long functions or basic blocks execute. used to gather results reported in "analysis: why is startup slow" thread.
also split out a few functions from Init() (more structured, easier
measuring)

This was SVN commit r1475.
2004-12-08 15:34:15 +00:00
643810a276 cleaned up VFS after yesterday's new code;
explicit shutdown, instead of atexit

This was SVN commit r1472.
2004-12-07 22:10:46 +00:00
e76871e7b0 - heavy changes to VFS tree internals: now allows loose files and archives to coexist, choosing archive if they're the same date+size
- reworked tree_lookup: dir names now require trailing '/' to
disambiguate. exception: vfs_open_dir (convenience)
- display VFS tree in stdout.txt unless g_Quickstart

This was SVN commit r1466.
2004-12-07 01:22:25 +00:00
e1506b6d3a Removed unused Elvish
This was SVN commit r1462.
2004-12-07 00:17:14 +00:00
3fb241054f add master sound disable, triggered if g_Quickstart == true.
(skips OpenAL init => speeds up startup)

This was SVN commit r1437.
2004-12-01 22:19:58 +00:00
f1dac9c626 better error handling: lots of little changes.
added some error codes, tried to eliminate unspecific return -1  where
it made sense.

This was SVN commit r1436.
2004-12-01 21:37:01 +00:00
b8d0df4b03 Re-enabled crash-dumping exception handler
This was SVN commit r1427.
2004-11-30 15:52:10 +00:00
caf8471132 Testing svk (and fixing tab usage)
This was SVN commit r1404.
2004-11-26 21:34:35 +00:00
d4f31c09da replace detect() with individual routines; add sound card system_info;
add g_Quickstart that skips writing system_info (speeds up startup by
700ms)

This was SVN commit r1364.
2004-11-19 22:58:01 +00:00
c3a331b73f add JS sound binding
This was SVN commit r1328.
2004-11-15 18:23:39 +00:00
Fire Giant
eb1424cb8f Fixed a stupid typo (missing semicolon).
This was SVN commit r1315.
2004-11-14 21:16:39 +00:00
Fire Giant
a9fe8c0c61 Changed GUI load sequence in order to fix a problem which came up through the global objects being loaded before the main menu background object. The globals are now in 6_global.xml (should always be at the end of the load order) and the JS initialization now is in 1_init.xml.
This was SVN commit r1314.
2004-11-14 21:14:00 +00:00
fb09faf5be Parser bug-fix
This was SVN commit r1313.
2004-11-14 18:56:13 +00:00
9a69d76feb Minor update to add link to 5_atlas.xml, so that GUI development of the Atlas Editor is supported.
This was SVN commit r1303.
2004-11-11 23:51:52 +00:00
MarkT
793794649f Combat code, some scripting, broken network, and fixed some bugs.
This was SVN commit r1301.
2004-11-11 07:09:32 +00:00
Calefaction
9b47d446d2 Updated to instansiate and tear down the mesh managed.
This was SVN commit r1300.
2004-11-08 22:21:50 +00:00
e48b5f9b64 enable file listing hook in ParseArgs
This was SVN commit r1287.
2004-11-07 22:46:57 +00:00
3136791492 Linux/GCC Compat(tm)
This was SVN commit r1284.
2004-11-07 21:30:47 +00:00
Calefaction
3c69a79f0f Updated to output OpenGL version
This was SVN commit r1281.
2004-10-31 07:37:32 +00:00
Calefaction
955ddcf9a1 More programmable pipeline updates
This was SVN commit r1280.
2004-10-30 21:57:46 +00:00
Calefaction
7947293015 Initial programmable pipeline push
This was SVN commit r1272.
2004-10-23 18:13:54 +00:00
MarkT
d33d2e4450 Added some support for user profiles
This was SVN commit r1270.
2004-10-23 14:39:28 +00:00
a8fff67c91 remove "p-pressed" debug_out
This was SVN commit r1267.
2004-10-22 21:54:31 +00:00
0a4c838185 Exciting space->tab transformations
This was SVN commit r1265.
2004-10-21 15:04:19 +00:00
20061f0e38 due to h_allow_free, no longer rely on h_mgr cleaning up buffers (that was a hack, and wouldn't work if OpenAL is reset at runtime)_
now snd_cleanup before h_mgr_cleanup - makes sense anyway.

also added snd_update call that doesn't change OpenAL position - this is
so sound works in the main menu.

This was SVN commit r1263.
2004-10-20 23:16:38 +00:00
d30c7ef9aa use correct path to sound assets
This was SVN commit r1259.
2004-10-19 13:45:50 +00:00
Calefaction
50dee130ae Updated to properly support LOD bias settings in config. Fixes mipmap blurryness.
This was SVN commit r1254.
2004-10-17 21:01:00 +00:00
f0f7f236b7 sound test filename -> game data, since ogg playing works again.
This was SVN commit r1251.
2004-10-16 20:55:56 +00:00
90a0860081 Added load for 4_manual.xml.
This was SVN commit r1243.
2004-10-15 18:01:22 +00:00
1798a1ab1d remove testing code that makes clicks do strange things ;)
This was SVN commit r1242.
2004-10-15 17:26:36 +00:00
390fe343a0 gives sound engine current position during update; also fixed sound shutdown order issue (must come after h_mgr_shutdown)
note: you will need to fiddle a bit to test this ATM: see
http://forums.wildfiregames.com/0ad/index.php?showtopic=1672  #5

This was SVN commit r1240.
2004-10-15 13:29:04 +00:00
769e521349 Added references to multiple GUI XML files (temporary adjustment to make it easier to work on different GUI pages).
This was SVN commit r1227.
2004-10-07 21:06:08 +00:00
2c9ac03375 Another minor fix
This was SVN commit r1225.
2004-10-07 20:14:20 +00:00
MarkT
2ab625720b Fairly major XML/entprop changes; some more minor stuff that fell out as a consequence.
This was SVN commit r1220.
2004-10-07 19:23:35 +00:00
711118ee97 less dependencies: handle.h forward-defines Handle, so that not everything that uses res headers is dependent on h_mgr
This was SVN commit r1216.
2004-10-06 14:25:36 +00:00
53f8283cfc update sound test rig, have added a few (local) filenames for testing
This was SVN commit r1212.
2004-10-05 13:14:34 +00:00
622febf5b7 update sound test rig, have added a few (local) filenames for testing
This was SVN commit r1211.
2004-10-05 13:14:03 +00:00
6d4f94112d Fixed memory leak
This was SVN commit r1195.
2004-09-23 12:42:37 +00:00
Calefaction
0a05c2977a Updated to reflect MaterialManager
This was SVN commit r1194.
2004-09-23 05:21:18 +00:00
Calefaction
4fff66cfce Initial import of material code. MaterialReader is implemented and functional. Currently models do not attempt to load materials, nor does the renderer use them.
This was SVN commit r1192.
2004-09-23 04:00:56 +00:00
ab7b542c20 console height now relative to y resolution instead of always 600 pixels
This was SVN commit r1188.
2004-09-22 14:01:50 +00:00
777f06143d - A lot of small network fixes
- Connecting client(s) to a server and giving orders to a shared set of
entities now works - Yeah!
- Removed thread sync from CNetServer

This was SVN commit r1180.
2004-09-21 14:40:43 +00:00
6fd0c451c2 changed to include sound code (test "rig")
This was SVN commit r1163.
2004-09-19 15:58:13 +00:00
d373e7a559 Moved language selection into the .cfg file
This was SVN commit r1130.
2004-09-06 11:13:36 +00:00
959600b0d1 Removed FPS display
This was SVN commit r1121.
2004-09-05 11:27:23 +00:00
Gee
ec7ace7016 no message
This was SVN commit r1108.
2004-09-03 05:49:20 +00:00
756c89d85d Removed GUI TEMPmessage
This was SVN commit r1104.
2004-09-02 19:18:14 +00:00
Gee
51b5254a9d Added a GUI file to load
This was SVN commit r1086.
2004-08-31 02:10:40 +00:00
70d84beab2 Altered font handling -- now uses CFont in preference to unifont_* (yay, pointless OO) and allows font mapping ("default"=>"palatino12", etc) using .cfg files
This was SVN commit r1074.
2004-08-27 22:08:30 +00:00
918cb99c7f now verify glActiveTexture != 0 in GL extension check (in response to bug #18)
This was SVN commit r1055.
2004-08-25 11:44:11 +00:00
d5a5f4c300 Now uses plain English messages when calling translate() before loading a language, rather than crashing
This was SVN commit r1043.
2004-08-24 11:32:32 +00:00
0e55379b36 Initial i18n integration
This was SVN commit r1029.
2004-08-21 11:45:01 +00:00
4d9c7684df w00t! first batch of actual network support!
This was SVN commit r1006.
2004-08-16 15:19:17 +00:00
9cd4cab693 A few log categories
This was SVN commit r994.
2004-08-15 20:57:31 +00:00
c0428d8cee sound/music player now responsible for calling oal_Init, due to delay-loading.
This was SVN commit r983.
2004-08-12 17:20:11 +00:00
56d798d52f move g_LightEnv here from terrainMain (which is ceasing to exist)
This was SVN commit r961.
2004-08-10 16:02:29 +00:00
92ea452096 remove hack, now that h_mgr actually caches
This was SVN commit r937.
2004-08-08 16:55:25 +00:00
138df056bd Fixed invalid GL code
This was SVN commit r924.
2004-08-06 15:01:23 +00:00
b2afef529c Introducing: The Pre-Game State. The game instance is not created on program load as before, but can be started by JS functions.
This was SVN commit r912.
2004-08-05 13:07:51 +00:00
MarkT
2b396ccb57 Minor improvements to some simulation code.
This was SVN commit r887.
2004-08-02 23:14:54 +00:00
f1bb625684 cleaned up ParseArgs
This was SVN commit r877.
2004-08-02 12:53:49 +00:00
09f47d6820 Core Classes Reorganization:
- g_Terrain and g_Camera totally eradicated as globals, is now m_Terrain
of CWorld and m_Camera of CGameView
- terrainMain.cpp is almost completely empty with functionality moved
into the relevant core classes
- Miscellaneous global functions moved into Core Classes (mostly
GameView)

This was SVN commit r865.
2004-07-31 15:57:18 +00:00
fe061f4f11 Added JS setCursor(name)
This was SVN commit r857.
2004-07-31 12:45:30 +00:00
d2070837d2 Global variables are nasty. Hacked g_Terrain into a pointer so that it doesn't crash when automatically destructing, although it ought to be handled in a nicer way.
This was SVN commit r839.
2004-07-28 19:27:35 +00:00
2832286b3f add initial,rough,etc. music code.
have yourself serenaded (germanic peace 3) by pressing <P>lay.
known bug: stutters/pops at low framerates - will be fixed by proper
streaming.

This was SVN commit r829.
2004-07-28 11:36:16 +00:00
415662c4cd First set of Core Classes changes! w00t :P
This was SVN commit r823.
2004-07-27 21:00:53 +00:00
c8514b7d28 OpenGL cursor (for non-Windows)
This was SVN commit r817.
2004-07-24 19:38:12 +00:00
fe1bee706b Fixed loads of /W4 warnings, because it's easier than doing anything useful. Added some asserts to check potentially dangerous assumptions, implemented a few missing bits of code, adjusted some comments, etc.
This was SVN commit r814.
2004-07-24 14:04:40 +00:00
3f7797b762 Prototype support for using 32-bit textures as cursors on Windows
This was SVN commit r813.
2004-07-23 19:07:18 +00:00
MarkT
6d8b9e33ef Minor additions: Added hotkeys to GUI buttons, camera bookmarking (not sure if this system will stay), shoring up some JS error checking, moved a bunch of constants into the config file and added a new rotation mode.
This was SVN commit r804.
2004-07-22 16:18:12 +00:00
b39a059e10 Use the new exception handler in 'testing' builds (for debugging without a debugger)
This was SVN commit r801.
2004-07-22 13:22:28 +00:00
MarkT
f02eab8aba Added configurable hotkey-cooker
This was SVN commit r795.
2004-07-21 16:34:07 +00:00
1343de75d8 Added a function to enable excessively slow memory debugging, for detecting heap corruption close to where it happens.
This was SVN commit r792.
2004-07-21 12:28:23 +00:00
MarkT
7fd55bae7f Minor fix to timing code
This was SVN commit r786.
2004-07-20 21:12:28 +00:00
c6e3668009 Don't use the special exception handler in debug builds. (This time I think I got it the right way round.)
This was SVN commit r785.
2004-07-20 19:45:31 +00:00
MarkT
194fdf9b4b Unit selection and ordering, setTimeout, scheduler, fixed timestep code, various fixes and reinforcement of the JS<->Native code.
This was SVN commit r783.
2004-07-20 19:30:35 +00:00
db4b5d6ff4 Don't use the special exception handler in debug builds
This was SVN commit r781.
2004-07-20 17:20:26 +00:00
d27c345f28 Better error handling. Reports extensions in system_info.txt.
This was SVN commit r776.
2004-07-19 19:03:33 +00:00
7c623b02ee Fixed obvious bug
This was SVN commit r773.
2004-07-18 16:07:10 +00:00
bd884f9de6 Put the FPS counter above the GUI
This was SVN commit r770.
2004-07-17 17:51:04 +00:00
9b4f50309a Slightly pointless and/or rubbish movie-making code
This was SVN commit r767.
2004-07-17 11:13:21 +00:00
0ed69b0975 Handle the scroll wheel better when skipping updates
This was SVN commit r765.
2004-07-16 20:10:37 +00:00
af9cf31691 Working crash log
This was SVN commit r760.
2004-07-15 19:12:54 +00:00
b284b47a06 add crash log (call stack and minidump)
This was SVN commit r757.
2004-07-15 02:39:25 +00:00
7902369a85 Linux/GCC (requires a ## between L and a #expr string)
This was SVN commit r755.
2004-07-14 12:26:49 +00:00
977693c7db GUI text renderer
This was SVN commit r745.
2004-07-13 22:48:53 +00:00
f723248d8f split up main() into chunks to make it more manageable.
added top-level exception handler and Die()

This was SVN commit r730.
2004-07-12 16:50:46 +00:00
ca5b760310 Linux/GCC: Changed a whole bunch of wide character format strings... In VC++,
the wide printf functions default %s to be a wide string. GCC defaults
it to
a narrow string. Everything I could find uses %ls or %hs as appropriate
now.

This was SVN commit r715.
2004-07-11 22:30:08 +00:00
f2dc64e75d Send log messages to the console
This was SVN commit r704.
2004-07-11 16:03:26 +00:00
929fe237ce SDL_ACTIVE => SDL_ACTIVEEVENT (wsdl called it SDL_ACTIVE - official SDL has it
as *EVENT). Support for the "windowed" config value, and a bool
fullscreen
argument for set_vmode.

This was SVN commit r696.
2004-07-10 21:33:31 +00:00
77fbf1ab6d Fixed one more memory leak
This was SVN commit r683.
2004-07-10 14:14:36 +00:00
1a8f8df5f6 write screenshots to /data/screenshots, now that that is possible after fixing the appropriate VFS bug :)
This was SVN commit r677.
2004-07-09 20:03:15 +00:00
fcb85a5968 Added exit() JS function
This was SVN commit r673.
2004-07-09 12:44:12 +00:00
5931a06606 add WriteScreenshot (see announcements)
This was SVN commit r668.
2004-07-09 02:04:30 +00:00
a8f48ff7e0 XMB
This was SVN commit r665.
2004-07-08 15:22:09 +00:00
d59e656986 Added config file settings for VBO, vsync and shadows
This was SVN commit r647.
2004-07-07 18:47:11 +00:00
baa374ae13 Moved JS Init further to the beginning
This was SVN commit r622.
2004-07-04 15:38:18 +00:00
d1a66a4503 fix event handler return value
This was SVN commit r600.
2004-06-25 22:13:48 +00:00
7d35d84ecf fixed stupid bug found by philip - was skipping entire main loop if deltatime=0, not just skipping update
This was SVN commit r591.
2004-06-23 14:42:35 +00:00
0517546d19 load hello.xml instead of hello2.xml, which may be broken (or exposes a bug in CParser)
This was SVN commit r589.
2004-06-23 13:29:48 +00:00
fc476e04f6 stomped on numerous warnings
This was SVN commit r584.
2004-06-21 16:29:47 +00:00