Commit Graph

116 Commits (bfa9d23e01b785c3e35663cb2c91fe1acb2c5844)

Author SHA1 Message Date
Gerard Krol baf02b66df Oops, screwed up applying r1290. Broke the build by duplicating the whole function... This fixes it.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1291 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-28 18:38:36 +00:00
Gerard Krol 01ec2ae422 Patch by Watermelon: C89 compliant(MSVC) and removed the 'BOOL same', in the function compare_edge in piedraw.c
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1290 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-28 18:31:35 +00:00
Gerard Krol 2fe34ce6cc Per's patch to use texture compression, modified to always specify generic compression (and let the driver decide which compression to use) and to
only compress the texure pages, and not backdrops and other textures. This this should give a framerate increase of 5-10 fps on fillrate limited 
systems (cpu usage < 100%).


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1289 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-28 15:08:57 +00:00
Gerard Krol ee76f4ce10 Tweaks and optimisations for CPU usage. Tiles are no longer added to the bucket sort, and the size of the bucket array is made smaller. The maximum
number of simultaneous effects is down from 2500 to 500 (a big fight has about 200 effects). The effect processing and drawing is now done from one 
loop instead of from 2 (saves on the iterations). The pie_DrawTexTriangle function defaults to non transparent tiles and sets an alpha drawing mode 
only when needed.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1286 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-27 13:56:36 +00:00
Gerard Krol a4c540f24a New shadow code, easier on the fillrate of your graphics card, but uses
more cpu time. Buildings have static shadows, the shadows of 
components/droids get recomputed every frame. Rain/bullets/other effects 
do no longer drop a shadow.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1281 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-24 22:53:18 +00:00
Gerard Krol 9e3acc087c The distance fog (aka Mist) start and end is now dependent on the zoom level. This should greatly reduce the number of popping tiles that can be
seen.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1275 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-20 20:46:26 +00:00
Dennis Schridde ca3b5909c8 Fix indention and some minor cleanup...
Fixing type-punned pointers is difficult, especially with that HEAP_ALLOC function...


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1252 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-16 19:31:15 +00:00
Per Inge Mathisen e3e1267e7d Fix bug #8730, where we would crash because the game did not find
a texture to replace during game play. The problem is that the 
texture counter is reset several times during a campaign, so we
cannot trust it. This should be fixed more thoroughly later, for 
now we just check all textures irrespective of the texture counter.
Also improves logging, and fixes a problem that should have made
texture replacements simply not work previously. Thanks to
Gernot Kohlhaas <mr_maniac> for reporting the bug.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1246 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-16 17:33:20 +00:00
Dennis Schridde 2a74242eb3 - Replaced various vectors with Vector3i and Vector3f (idea by Watermelon)
- Vector3i from lib/ivis also used in lib/audio, maybe want to move it to some more generic place?
- Replace iPoint with Vector2i
- Remove additional integer type declarations from pietypes.h
- Rename all iSprite to iTexture
- Various warning fixes: Unsigned/signed comparisons, uninitialized variables, declared but not defined symbols
- Replace DEBUG_BLOCK with DEBUG_MALLOC (it was virtually the same)


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1245 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-16 16:20:16 +00:00
Dennis Schridde b7ccc234b3 - Remove unused type from pietypes.h
- Replace iBool with BOOL where it was used
- Fix a warning in src/effects.c about validatePie being declared but not defined


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1241 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-15 22:49:54 +00:00
Dennis Schridde 7e12df4e35 - Backport r1228 (lib/script/script_parser.y, not initializing ppsLocalVarVal leads to segfault)
- Change some idention and whitespaces


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1229 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-13 20:49:03 +00:00
Gerard Krol 33936df7d9 Removed a strange __APPLE__ ifdef from stencil_one_pass(), and rewrote
the logic in there. 
Hopefully this will fix the crash reported by Richie on the forums.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1227 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-13 19:34:06 +00:00
Gerard Krol feff0ef74d Fix the skybox corners moving downwards when rotating the camera with a
factory or research menu open.
menu.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1221 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-08 19:39:00 +00:00
Gerard Krol 2ba3e85686 Added a working CLEAR_BLACK to pie_ScreenFlip, and modified the videoLoop to always use CLEAR_BLACK. This fixes the fog coloured
(orange) backgrounds for the briefing "video's".


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1193 4a71c877-e1ca-e34f-864e-861f7616d084
2007-03-03 16:35:56 +00:00
Per Inge Mathisen ea50a9249c Replace hard-coded map preview size of 512 with
BACKDROP_HACK_WIDTH and BACKDROP_HACK_HEIGHT for now.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1182 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-25 12:57:04 +00:00
Per Inge Mathisen b8deb3acdc Remove the unset, unused default backdrop.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1181 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-25 12:45:35 +00:00
Per Inge Mathisen 8927a832ac Remove more dead code
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1180 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-25 12:34:18 +00:00
Per Inge Mathisen 2a14556b60 Add skybox. Patch by Gerard Krol. The maximum allowed camera tilt towards
the sky has been increased to allow easier view of the new skyline.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1179 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-24 22:53:33 +00:00
Per Inge Mathisen a8ec143f3e Remove overzealous log call in previous commit.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1171 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-24 17:13:08 +00:00
Per Inge Mathisen d5b70b2384 Add new debug log category 'fog', and remove more unused code.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1170 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-24 16:07:44 +00:00
Per Inge Mathisen 7e2ba186d8 Clean up pie_DrawPoly, renaming it pie_DrawTexTriangle.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1161 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-22 12:07:44 +00:00
Per Inge Mathisen 2b416b26db Remove silly pie_ROTATE_PROJECT macro
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1159 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-21 23:02:14 +00:00
Per Inge Mathisen daaac4b5e3 Clean up redundant copy&paste code. Patch by Gerard Krol with
some stylistic and extra changes by me.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1158 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-21 22:38:52 +00:00
Per Inge Mathisen 255d2fe12e Add log message about maximum texture size, and error
checks for lack of double buffering and too small
texture support. Use --debug texture to see your
texture size (first line in output).


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1156 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-21 20:20:26 +00:00
Dennis Schridde 7fca14b129 Improve description of r1152 (fix broken font rendering in menus) and use pie_SetTexturePage(-1) in all places it was used prior to r1075.
Also clean indention.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1153 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-21 00:10:03 +00:00
Giel van Schijndel 82dd8e0bbc fixes (maybe just circumvents?) bug #8514
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1152 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-20 23:46:34 +00:00
Per Inge Mathisen 785daa97e1 Split --enable-debug into four: strict (-Werror),
yes (as before), relaxed (-O2 & -Wextra), and no
(as before). Fix two more reported warnings.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1151 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-20 16:21:19 +00:00
Per Inge Mathisen bbc588699d Turn __attribute__((unused)) into WZ_DECL_UNUSED, which is unset
for compilers other than gcc. Thanks to devurandom for bringing 
this problem to my attention. Also update documentation for
WZ_DECL_DEPRECATED, which had bitrotted. 


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1149 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-19 17:46:06 +00:00
Per Inge Mathisen 78396463a7 Fixes informed by -Wextra for graphics code. Removes much redundant code.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1147 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-19 17:18:50 +00:00
Per Inge Mathisen 79b3875fc4 This commit fixes all warnings (on my system). -Werror added for
debug builds. Hopefully this will not cause too much pain, but
rather increase code quality for the future.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1144 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-19 14:10:44 +00:00
Per Inge Mathisen 3a1d1a6069 Clean up pieclip.c, based on patch by Gerard Krol.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1136 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-17 23:03:48 +00:00
Per Inge Mathisen 85dbcef6af Cleanup of textdraw.c, removing pie_DrawTextToSurface(), which was
redundant, as Gerard Krol reported.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1135 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-17 22:39:33 +00:00
Per Inge Mathisen 34ad7b89e9 Some cleanup of piedraw.c (and more or less related fixes), includes
a reduction of duplication fix from Gerard Krol.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1134 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-17 22:29:21 +00:00
Per Inge Mathisen d68164d3af Smaller texture cleanup. Fix bug in debug log call parameters.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1133 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-17 21:33:10 +00:00
Per Inge Mathisen 9f16833e30 Small cleanup of texture loading and handling, removing unused
portions of the code.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1132 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-16 23:19:33 +00:00
Per Inge Mathisen e0a80da628 Remove unused header
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1131 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-16 22:54:18 +00:00
Per Inge Mathisen b46d680987 Remove lib/ivis_common/bug.c|.h, containing unused logging
functions of dubious usefulness. The log calls are still
present, with protos in ivi.h, in case someone wants to
build something better with them.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1128 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-16 22:31:52 +00:00
Dennis Schridde 8a70df4064 Use some more advanced Automake techniques like noinst_HEADERS. Changes partly autogenerated by KDevelop, so this should be compatible with Automake 1.6.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1118 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-16 14:36:03 +00:00
Roman C f4c4c48dd2 Patch by Gerard Krol:
replaces AND/OR macros with &&/||

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1089 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-10 16:39:39 +00:00
Dennis Schridde f105fad779 Improved backdrop-loading and don't delete a texture when it just needs to be replaced.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1085 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-10 14:34:12 +00:00
Dennis Schridde 977b2ee558 - Hack in PNG backdrop loader
- Add 2 new backdrops from Terminator (http://wz2100.net/forum/index.php?topic=109.0)
- Remove unused pal parameter from pie_PNGLoadMem()


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1075 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-07 15:27:17 +00:00
Dennis Schridde 2b16cbd06b Port of r1066
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1067 4a71c877-e1ca-e34f-864e-861f7616d084
2007-02-05 14:32:31 +00:00
Per Inge Mathisen 3d6771a521 Unify the several different definitions of pi in the codebase. Now we use the
C macro M_PI (if available, or we will define it on our own in fractions.h).


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1033 4a71c877-e1ca-e34f-864e-861f7616d084
2007-01-24 19:42:20 +00:00
Dennis Schridde 49ceba7503 Add GPL notices to all sourcecode files.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1014 4a71c877-e1ca-e34f-864e-861f7616d084
2007-01-15 20:09:25 +00:00
Giel van Schijndel 68d435097e enabled some more code to compile with a C++ compiler without -fpermissive (i.e. there should be *less* compile-time errors now)
* moved several #defines to the enums where they belong
 * changed some datatypes on declaration
 * prepended casts to malloc calls (using typeof() style)
 * changed some (void*) casts to (void**) where required
 * removed several #defines and there instances and then replaced them with their corresponding values from an enum

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@969 4a71c877-e1ca-e34f-864e-861f7616d084
2007-01-07 23:50:30 +00:00
Giel van Schijndel 851b570bc5 * functions memRecReport & memMemoryReport:
- removed these functions and all calls to it if REALLY_DEBUG_MALLOC isn't defined, because they don't do anything currently when REALLY_DEBUG_MALLOC isn't defined
  - moved the declaration of memRecReport from memint.h to mem.h where it is, together with memMemoryReport, optionally declared depending on REALLY_DEBUG_MALLOC
 * fixed yet another set of signed/unsigned errors (src/seqdisp.c & textdraw.c/h)
 * removed a cast from char* to char* (that's what I call unnecessary; transforming something into something it already is)
 * memory system:
  - added some comments to clarify what certain pieces of code actually do
  - removed some redundant code (e.g. why would you ever want to overwrite memory to zero just before passing it to free()?)
  - made debug-version of free() return immediately when being passed a NULL pointer (i.e. after raising an assert)
  - moved some variable declarations down to the first point of usage
  - *IMPORTANT*: commented the definition of MEMORY_SET out (line 38 mem.c), this might break code that expects freshly malloc'ed memory to be pre-initialized, if you experience any problems due to commenting this out please say so on the mailinglists!

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@957 4a71c877-e1ca-e34f-864e-861f7616d084
2007-01-04 18:41:24 +00:00
Giel van Schijndel 3d23a48076 * expand the use of compiler-guards (C preprocessor macros) so that not only the forward declarations and referring macros are guarded, but the referred functions as well
* remove some unused things: variables, macros (MEMORYREPORT, MEMORYTREAP)
 * fix some signing errors:
  * change assignments of/comparisons with -1 to unsigned variables ((-1) directly, not through a preprocessor directive) to ~0 (left OpenAL-code alone)
  * remove some casts to (SDWORD) in comparisons which actually cause signed/unsigned errors rather than fix them
  * redefine some vars as unsigned

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@955 4a71c877-e1ca-e34f-864e-861f7616d084
2007-01-04 17:03:32 +00:00
Per Inge Mathisen 3f88e8e4f2 Remove some more dead graphics code, and fix some warnings.
Happy new year everyone!


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@946 4a71c877-e1ca-e34f-864e-861f7616d084
2006-12-31 18:19:19 +00:00
Dennis Schridde 4e28453441 src/* and lib/ivis_common/piemode.h by me: Cleanup unused functions.
Rest: Patch by Giel van Schijndel: codecleaning patch: lets delete stuff


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@939 4a71c877-e1ca-e34f-864e-861f7616d084
2006-12-29 19:56:06 +00:00
Dennis Schridde 4b3fa4a865 src/projectile.c : Change an if() chain to switch
lib/ivis_common/pietypes.h : Add a depth field to bitmap so different bitdepths can be supported
Some minor cleanups (remainders from a failed abitrary-tiles attempt).



git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@902 4a71c877-e1ca-e34f-864e-861f7616d084
2006-12-17 18:18:06 +00:00