Commit Graph

107 Commits (ba36ac6cfd69466d2b36b5cba82fedb2fa6513da)

Author SHA1 Message Date
Per Inge Mathisen 4d33f6a51d Add new function to output grayscale PNG images. Needed for ticket:652 net map/savegame format.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7817 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:06:26 +02:00
Freddie Witherden 54f3d2e9b8 Get Mesa offf of my lawn. Update the Xcode project.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7789 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:06:24 +02:00
Buginator 27bdf48197 slight cleanup of r7738
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7739 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-16 22:28:35 +02:00
Buginator 1ccb1487de Create a new function, addDumpInfo(), to be used to add custom information to the crash dump report file.
Currently, we query openAL & openGL vendor/version info.
This should give us more descriptive crash reports on the user's hardware.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7738 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-16 22:28:34 +02:00
Buginator 11ab9125ad Add new macro, info(), it is shorthand for debug(LOG_INFO,...). This is used to *always* display informational messages on both debug & release builds.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7734 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-16 22:28:34 +02:00
Christian Ohm 1dd96730f4 Fix the "Mesa" string that was wrong for testing.
Actually fixes #608.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7695 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-09 23:44:26 +02:00
Christian Ohm b9b1a4bac7 Move the "Mesa hack" from GLee.c into screen.c:screenInitialise()
There we can check the GL_RENDERER string for more fine control. Currently it
is enabled when the string starts with "Mesa", so it doesn't affect any other
drivers. It might need more checks if new Mesa versions break this.
Fixes #608.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7694 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-09 23:44:26 +02:00
Buginator cbe998956a Slight cleanup of glOrtho parameters that should be double floats.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7660 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-05 16:21:06 +02:00
Giel van Schijndel e0f65b827c Add support for Full Screen Anti-Aliasing (FSAA):
* Enable, at the user's request, FSAA.
  - The user can specify the amount of samples (should be a power of 2) with the "FSAA" config option.
  - The user can disable FSAA by setting the "FSAA" option to "0" (zero)

This closes #387.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7065 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-18 17:08:19 +02:00
Per Inge Mathisen 742fecefc8 Make Warzone use regular textures to display the videos. Removes requirement for texture
rectangle extension. It uses one texture with a fixed size for videos (the old code allocated 
a new texture once per frame). The texture size is set at 512x512, which is enough
for the current 320x240 videos. In addition the message about the radar not working is 
removed and some extra checks added. Patch by Christian Ohm.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7021 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-15 20:36:58 +02:00
Dennis Schridde 58897d42be Report OpenGL 3.0 support during initialisation as well
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6779 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-06 14:40:27 +00:00
Dennis Schridde aac41748dc Bump copyright
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6617 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-10 18:01:48 +00:00
Buginator 4971f0cdcd Adds a message to the console when screenshot key is hit.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6108 4a71c877-e1ca-e34f-864e-861f7616d084
2008-10-04 03:31:18 +00:00
Ari Johnson d5b341334d More changes from #ifdef __APPLE__ to #if defined(WZ_OS_MAC)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5880 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-27 15:24:21 +00:00
Freddie Witherden 55be99a19d Add sync-to-vblank support to Warzone; this closes ticket #38.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5871 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-25 18:01:49 +00:00
Buginator ebecb854b1 Add a fallback for the map preview when drivers report they have FBO, but we detect a FBO error.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5835 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-17 18:35:22 +00:00
Giel van Schijndel 535c97354f Add Doxygen comments to functions screenDoDumpToDiskIfRequired and screenDumpToDisk
"Poked" by ticket:23 to add these API-level comments, but the comments themselves are completely different.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5821 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-15 20:27:18 +00:00
Giel van Schijndel 81005f3605 Remove the status check for GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT as it was removed from the GL_EXT_framebuffer_object extension and Mac OSX doesn't provide it
Deletion suggested by Buginator. This should fix bug #12136

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5777 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-04 20:58:28 +00:00
Giel van Schijndel 7980737e77 * Use ssprintf instead of snprintf to print into a statically sized string
* Reduce the nesting inside Init_FBO
 * Bail out of Init_FBO as soon as we discovered that FBOs are unavailable

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5771 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-03 22:56:38 +00:00
Giel van Schijndel 83159f335d Coding style:
* Fix indentation
 * Don't repeat function prototypes in their pre-leading comments
 * "Upgrade" some function comments to Doxygen comments
 * Remove whitespace from the end of lines
 * Reintroduce empty lines removed in r5733

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5769 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-03 21:06:39 +00:00
Buginator 38c54928d3 Delete the FBO (if we are using it) when done with it, and also fix a whitespace issue. :S
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5765 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-03 19:36:02 +00:00
Buginator 8aabfd23b2 If we are going to check for a extension, we should do it correctly.
In this case, check GLEE_EXT_framebuffer_object.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5758 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-03 02:37:02 +00:00
Buginator 6ccaa10f16 Enhances 'map preview' screen with map maker's ordering of the players position.
This allows players to get to the correct starting position on the map they picked, much easier.

Note, this uses a FBO.  If your card doesn't support it, then you will basically notice nothing different.  A fallback routine is done (but not in this patch), it is just waiting for a decent font *bitmap* that we can use.

Please see http://forums.wz2100.net/viewtopic.php?f=19&t=1953 for more discussion on the matter.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5733 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-02 04:28:58 +00:00
Per Inge Mathisen 94aca87927 Fix bug #12016: radar is broker on trunk, reported by Michael Strobel. We now
use the texture rectangle extension to draw the radar window, which should be
supported on even the oldest OpenGL-capable hardware out there.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5562 4a71c877-e1ca-e34f-864e-861f7616d084
2008-07-15 20:06:09 +00:00
Dennis Schridde 5b703fb634 Dump OpenGL implementation information to console
Author: Buginator
Signed-off-by: Dennis Schridde <devurandom@gna.org>


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5123 4a71c877-e1ca-e34f-864e-861f7616d084
2008-05-15 17:32:39 +00:00
Giel van Schijndel 0859814e16 Replace our custom OpenGL extension checking mechanism by GLee:
* import the code from GLee into our repository (a single source and header file), and replace all use of the check_extension function by use of GLee functions
 * Remove function stencil_one_pass and replace all calls to it with `if (GLEE_EXT_stencil_two_side && GLEE_EXT_stencil_wrap)`

Patch from ticket 8 by Buginator (with some minor additions by me)


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@4687 4a71c877-e1ca-e34f-864e-861f7616d084
2008-04-20 12:52:19 +00:00
Per Inge Mathisen f106d10772 Do not leak VRAM when displaying map previews. Patch by Buginator with changes by me.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@4679 4a71c877-e1ca-e34f-864e-861f7616d084
2008-04-18 18:04:55 +00:00
Dennis Schridde 10f2ccfd56 TRUE->true, FALSE->false (except in scripts)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@4311 4a71c877-e1ca-e34f-864e-861f7616d084
2008-03-24 16:51:17 +00:00
Dennis Schridde b1b2859ea3 New enum TEXPAGE_TYPE, to better control disabling/enabling of texturing. (Changed pie_SetTexturePage accordingly.)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@4202 4a71c877-e1ca-e34f-864e-861f7616d084
2008-03-21 14:34:30 +00:00
Per Inge Mathisen 83ddfb7b99 Small cleanup of the screen flip code
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@4021 4a71c877-e1ca-e34f-864e-861f7616d084
2008-03-12 19:29:24 +00:00
Giel van Schijndel c51bd8ae10 * Get rid of a large quantity of unused parameters
* Turn some signed integers ("int" or "SDWORD") into unsigned integers where it made more sence (and signed integers caused warnings about comparing signed with unsigned integers)
 * At some places cast to an unsigned integer (where the type of the expression is a signed integer but the result of it logically _always_ is an absolute value)
 * Remove unused struct-type EVENT_INIT
 * Convert use of malloc->memcpy->free to one single realloc call (and now make sure to actually check realloc's return value, which wasn't done with the malloc call)


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@3037 4a71c877-e1ca-e34f-864e-861f7616d084
2007-12-10 23:15:46 +00:00
Freddie Witherden 299d7bfcfb Commit patch #871
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2983 4a71c877-e1ca-e34f-864e-861f7616d084
2007-12-05 21:56:12 +00:00
Per Inge Mathisen f86858109a Fix texture size warning. It will correctly nag about missing support for 2048x2048 textures.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2973 4a71c877-e1ca-e34f-864e-861f7616d084
2007-12-03 20:29:34 +00:00
Dennis Schridde 9cc0a628c1 Do parts of the proposed changes in "[Warzone-dev] build issues in FreeBSD system" by Yaroslav Kolomiyets from 24.10.2006:
- SDL header includes don't use SDL/ anymore (raw Makefiles and MSVC Project adapted).


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2863 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-24 11:49:51 +00:00
Per Inge Mathisen fb9d667895 Clean up screen.c - make globals static and remove unused vars.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2822 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-14 22:29:19 +00:00
Per Inge Mathisen f577a8f269 Remove unused screenGetSurface
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2821 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-14 21:05:45 +00:00
Dennis Schridde 223bc803e8 Use OLD_TEXTURE_SIZE_FIX instead of 256.0f to scale texcoords, to make clear that this is a fix for the old ...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2759 4a71c877-e1ca-e34f-864e-861f7616d084
2007-11-09 17:43:50 +00:00
Per Inge Mathisen 94421b5b56 Clean up LOG_3D
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2634 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-27 13:58:01 +00:00
Dennis Schridde c7b00fadaf More work on the ICC front:
- Less strict warnings in debug-mode (still unusable, because ICC warns about _a lot_)
- Explicit conversions
- Clarify parameter evaluation order


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2550 4a71c877-e1ca-e34f-864e-861f7616d084
2007-10-15 18:09:18 +00:00
Dennis Schridde fbd3a9c394 Use Unix PATH_MAX as default and thus move all "fixes" to Windows.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2425 4a71c877-e1ca-e34f-864e-861f7616d084
2007-08-21 12:59:05 +00:00
Per Inge Mathisen ce56538fba Revert commit r2258 which made texture coordinates into floating point. It
caused bug #9631, wrong team colours displayed.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2292 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-30 20:20:06 +00:00
Dennis Schridde 723f9bfaa1 Use float texture coordinates in the range 0.0-1.0.
Any fixes, if necessary, should be applied on loading.
In the image code (IMAGEDEF) this did not work, so OLD_TEXTURE_SIZE_FIX is applied during rendering.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@2258 4a71c877-e1ca-e34f-864e-861f7616d084
2007-07-29 13:32:21 +00:00
Dennis Schridde 68e56823e1 - Constification
- POINT -> Vector2i
- changed internalformat = getPixelFormat() to GL_RGBA in one place
- removed unused variables/functions
- proper intialisation


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1792 4a71c877-e1ca-e34f-864e-861f7616d084
2007-06-02 23:01:29 +00:00
Dennis Schridde 351060f21f - 1st attempt to create an API for image loading (support for PNG features like non 8bit channels still needs to be thought of). Appropriate code location is also missing (added new functions to tex.c, since they were not PNG related)
- Renamed pie_PNGLoadFile, because I got confused about pie_ vs. iV_ when working on my terrain stuff, and did not fix it when backporting to trunk
- iTexture (now aka iV_Image, s.a.) is given a depth field to enable support for different number of channels. This is required to support RGB only textures (without adding a useless alpha channel) and eg. for greyscale images like heightmaps
- Simplyfied iV_loadImage_PNG (formerly known as pie_PNGLoadFile, s.a.) and also removed lots of seemingly unnecessary conversions
- Converted page-8 from paletted to RGB for simplification. This multiplied the size by about 3x (still < 100kB)


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1580 4a71c877-e1ca-e34f-864e-861f7616d084
2007-05-01 20:34:54 +00:00
Giel van Schijndel d6758391d8 * Fix nameclash of <png.h> with lib/ivis_common/png.h
* renamed lib/ivis_common/png.[ch] to lib/ivis_common/png_util.[ch]

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1562 4a71c877-e1ca-e34f-864e-861f7616d084
2007-04-30 14:09:33 +00:00
Giel van Schijndel 82eee99004 * Move PNG dumping code from screen.c to png.c
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1560 4a71c877-e1ca-e34f-864e-861f7616d084
2007-04-29 23:00:38 +00:00
Giel van Schijndel aff4430378 * Move PNG specific code to png.[ch] (PNG saving code still needs moving though)
NOTE: this _WILL_ require updating the MSVC project file

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1559 4a71c877-e1ca-e34f-864e-861f7616d084
2007-04-29 22:19:21 +00:00
Giel van Schijndel 4548e56fe2 * Fix some signed vs unsigned comparisons
* Turn some implicit conversions of void* to something* into an explicit cast
 * remove some redundant commented out code
 * refactor some error checking code ( was: if (!error) normal exec path; else deal with error; now is: if (error) deal with error; normal exec path )

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1534 4a71c877-e1ca-e34f-864e-861f7616d084
2007-04-23 22:08:53 +00:00
Giel van Schijndel 825ac28558 * use malloc instead of a variable sized array (is slower, requires more maintenance work, but is C89 and as such MSVC compatible, *sigh*)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1526 4a71c877-e1ca-e34f-864e-861f7616d084
2007-04-23 14:28:04 +00:00
Dennis Schridde 5c79953e18 Watermelon: projfix11a:
1. Fixed a bug (I made some parenthesis order mistakes, near predictX and predictY, which might corrupt predictX, predictY)
2. Fixed a value corruption when predictX or predictY becomes negative, since proj_SendProjectile only expects UDWORD (now set them to 0 when they become negative, so the turret wont try to fire projectiles to some off-map coords)
3. Fixed zero height building bug (invincible rearm pads) when an imd's ymin is equal to ymax...

lib/ivis_opengl/screen.c: \param channels


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1524 4a71c877-e1ca-e34f-864e-861f7616d084
2007-04-23 14:08:05 +00:00