1
0
forked from 0ad/0ad
Commit Graph

1850 Commits

Author SHA1 Message Date
15ca12311b more WIP; initial memcpy code
This was SVN commit r2700.
2005-09-12 22:13:03 +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
d64e2ed19f dyn_array: use memcpy2
add tex error codes
move memcpy code to ia32
tex: simplify codec call with separate tex_codec_for* calls
codecs: use error code instead of string; remove redundant params
ia32: heavy WIP - testing memcpy implementations
util: prepare for zero-copy improvement to screenshot code

This was SVN commit r2695.
2005-09-10 14:28:55 +00:00
189786928e minor error path improvements+comments; add WARN_IF_FALSE et al.
This was SVN commit r2693.
2005-09-08 17:14:19 +00:00
3c9ad073bc minor error reporting / wording changes while cruising through.
This was SVN commit r2691.
2005-09-08 01:48:57 +00:00
494d27bdd4 moved SAFE_DELETE to lib.h
dyn_array supports "wrapping" other types of memory (stopgap measure)
texture codecs now load via DynArray (intermediate step to all mem stuff
going through res/mem.cpp)
simplified tex codecs by doing as many checks as possible in
tex_load_mem ("template method"-esque)

This was SVN commit r2690.
2005-09-08 01:47:45 +00:00
467b14e928 - Added stay-in-tile-class and border-tile-class constraints.
- Made objects snap to terrain (the game does this automatically for
entities but it was a problem with actors)
- Small enhancements to the RMS API
- New version of cantabrian_highlands

This was SVN commit r2688.
2005-09-08 01:20:51 +00:00
4cc30aeb56 This was SVN commit r2684. 2005-09-07 02:24:13 +00:00
1a7d67a97f dyn_array: efficient expandable array that doesn't waste mem or relocate itself. TODO: self test and dox
file: expose block size constant; always round user transfers up
tex: transform() now receives what to change, not what to achieve.
tex*: encoding works with DynArray+VFS backend
GameSetup: free g_BuildingPlacer to avoid mem leak.
fixed some warnings+bugs.

This was SVN commit r2679.
2005-09-06 22:44:48 +00:00
9dc8a71b15 Added health properties to BaseEntity so they work properly for Entity as well (on units that don't directly specify them).
This was SVN commit r2677.
2005-09-06 19:30:41 +00:00
6f10e8c09c Updated building placement cursor to make the object glow read and not be placeable if trying to place in an invalid area.
Also a small fix: made the selection bandbox not appear when the view is
being rotated using left+right drag (it doesn't make sense to show it
then).

This was SVN commit r2674.
2005-09-06 08:25:41 +00:00
11de356225 Improved building placer to show the actor that will be placed instead of the original white lines.
This was SVN commit r2671.
2005-09-05 23:44:21 +00:00
65e90614f2 Added hitpoint bars above selected and mouseovered units.
This was SVN commit r2669.
2005-09-05 21:45: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
7b144a11ca ogl_tex: has to be aware of multitexturing because if hotloading a texture on TMU1, we have to re-bind it to that. done
waio: fix bug with SetErrorMode usage triggered by reading "The old new
thing" (Raymond Chen's blog)

This was SVN commit r2664.
2005-09-04 20:49:58 +00:00
819aca0f1c work around flaw in some DDS headers (not setting alpha flag). this is critical because renderer/GUI code now uses TEX_ALPHA flag instead of just checking against all known GL formats containing alpha
This was SVN commit r2663.
2005-09-04 20:05:21 +00:00
c6215a1451 guirenderer: fix bug that was breaking the ScEd button in main menu. it was calling glEnable/glActiveTextureUnit before ogl_tex_bind, which is now also doing that.
self_test: added another note
wtime: fix evil bug - was casting FILETIME* to u64*, which has different
alignment guarantees.

This was SVN commit r2662.
2005-09-04 19:48:26 +00:00
b071585610 Added tile class and "avoid at distance" support to RMGen.
This was SVN commit r2659.
2005-09-03 21:53:07 +00:00
2b55945893 doc clarification as requested by Philip (thanks for feedback!)
This was SVN commit r2656.
2005-09-03 14:41:06 +00:00
f4c535a326 lib.cpp: forgot to use TEST (for self-test)
self_test: add dox (also to wiki)
tex_codecs: further work; renamed+reorg for clarity. separating codecs
from IO implementation

This was SVN commit r2654.
2005-09-02 18:38:25 +00:00
50ea8c532c - PathPackage now does CHECK_ERR. adjusted callers appropriately
- mem.h: export mem_assign (needed to wrap a mem buffer)
- use stricmp in some file extension comparisons
- wposix: properly sets last-error code when opendir fails
- also: misc comments

This was SVN commit r2650.
2005-09-02 03:03:06 +00:00
21709a5a7a (as before, belonged in the previous batches)
This was SVN commit r2649.
2005-09-02 02:58:40 +00:00
71f7fccd12 split texture loader into codecs (greatly eases navigation)
tex.cpp now has loader API and codec support routines.
provide for codecs "transforming" the image; this allows e.g.
decompressing DDS, which is currently done in ogl code (but belongs
here)

This was SVN commit r2648.
2005-09-02 02:56:54 +00:00
9ec828f6fd - both tex.cpp and ogl_tex.cpp had functions named tex_* - confusing. renamed to ogl_tex* to disambiguate.
- ogl_tex_bind now supports multitexturing (avoids need to get id and
then bind manually)
- provide nicer API for querying texture properties (no longer one big
getter). improved GUI determination of texture alpha.
- renderer: another see-if-texture-has-alpha and fixed alpha map code
(wasn't checking if all are same size. only worked because the first map
was larger than the rest

This was SVN commit r2647.
2005-09-02 02:54:02 +00:00
ed5041a301 some infrastructure for self-tests: gets rid of boilerplate code.
squelch debug asserts during self-tests to avoid warning about intended
errors (passing invalid data into functions to test their error
reporting)

This was SVN commit r2646.
2005-09-02 02:47:25 +00:00
43fda176cc This was SVN commit r2631. 2005-08-22 03:27:15 +00:00
e46136fe96 This was SVN commit r2630. 2005-08-22 03:26:40 +00:00
1039e9f2a2 Atlas: Removed compile-time linking
This was SVN commit r2629.
2005-08-20 18:05:25 +00:00
ccb813119e Atlas: Slightly better undo system (with merging of 'continuous' commands)
This was SVN commit r2628.
2005-08-20 17:37:48 +00:00
5d62c3f3f7 Atlas: Simple undo system
This was SVN commit r2627.
2005-08-20 15:44:50 +00:00
a10082d69b Minor fixes
This was SVN commit r2625.
2005-08-16 19:51:18 +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
70b44f6485 moved self-tests into their respective files (this makes checking if a file has one easier) and automatically calls them if #if PERFORM_SELF_TEST == 1 (allows global enable/disable of all tests and also per-file override).
This was SVN commit r2623.
2005-08-14 23:36:43 +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
5f1983b9a4 Avoid "unreachable code" warnings
This was SVN commit r2618.
2005-08-14 02:07:12 +00:00
9e40ebc93d RealDir.watch wasn't initialized, leading to complaints at exit. fixed
This was SVN commit r2614.
2005-08-13 23:37:31 +00:00
3552c54bdc Made ToPrimitive throw on failure (since that is preferable to returning an undefined value)
This was SVN commit r2613.
2005-08-13 18:32:58 +00:00
a0e7d02cdd Fixed and rebuilt ScEd. Updated tex to handle greyscale PNGs.
This was SVN commit r2610.
2005-08-13 17:14:57 +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
fac9a8aa87 reading a gamedev thread triggered the realization that WDIR no longer needs to store full path in dirent. therefore, streamlined opendir/readdir/closedir; I guess they are a good bit more efficient now.
This was SVN commit r2606.
2005-08-12 22:19:31 +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
8475c16c31 fix bugs in ilog2 (yoink) and add self-test+asserts.
This was SVN commit r2600.
2005-08-11 02:02:10 +00:00
aba23e4fdb config: got my grubby hands on a list of OS defines, so those have been assimilated. also add STL_ defines for GCC and ICC.
vfs.h: wording in dox
win.cpp: add note on suspending threads in display_error_impl

This was SVN commit r2598.
2005-08-10 20:53:52 +00:00
cd4273cd16 Oops, I broke it. Fixed by reinserting memory leak.
This was SVN commit r2596.
2005-08-10 01:27:33 +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
ff97a903b8 wpthread: improved code and avoid memory alloc during thread creation
wsdl and tex: use british english terms

This was SVN commit r2594.
2005-08-10 00:33:15 +00:00
4b33f49da1 - sysdep cursor functions renamed sys_cursor_*
- res/cursor.cpp cleaned up, uses sys_cursor_*; also fixed some bugs.

This was SVN commit r2593.
2005-08-10 00:27:56 +00:00
b63bc42245 TextureManager: stopped memory leaks
wsdl: create window at expected size, and retrieve correct mouse coords
CStr: not ISerializable (=> not virtual)
Game: less excessive complaining, since the original problem seems to be
fixed
Entity: fixed evaluation order
Others: minor comments/etc

This was SVN commit r2591.
2005-08-09 21:26:40 +00:00
78c751aff6 ogl: add oglSquelchError call. use that if you know a piece of code will trigger an error and want to suppress it (e.g. INVALID_ENUM after using GL_CLAMP_TO_EDGE although we've already warned the user that not everything may work)
file: now provides a much more efficient alternative to file_enum that
does not sort all files (this was a problem for check_if_oal_dll which
was scanning the entire system32 dir)

- use the same DirEnt struct for file and VFS due to clever name pointer
trick.
- wposix: avoid malloc for most opendir() and fix mmap() bugs (thanks to
Philip for noticing+reporting them)
- VFS: was getting too large to manage, now split into an additional
file
- WIP: much more efficient mounting; supports other mount sources than
file or zip (e.g. if we want to add network files); clean separation
between VFS submodules; dox; beginning of thread locking.

This was SVN commit r2589.
2005-08-09 16:32:23 +00:00