Commit Graph

77 Commits

Author SHA1 Message Date
Spoike 7f6c2054d9 threaded loading code and associated/extensive tweaks.
unified image loading code a little between renderers.
support switching worldmodel in csqc. also associated bugfixes.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4758 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-10-05 20:04:11 +00:00
Spoike 2e1a70e319 rewrote ban code, merging bans+nonbans+cuffs+mute+cripple+deaf+lagged+vip. added timeouts. new penalties have no dedicated command. use the addip command for it.
maplist command now generates links.
implemented skin objects for q3. added a csqc builtin for it. also supports compositing skins.
playing demos inside zips/pk3s/paks should now work.
bumped default rate cvar.
added cl_transfer to attempt to connect to a new server without disconnecting first.
rewrote fog command. alpha and mindist arguments are now supported. fog change also happens over a short time period.
added new args to the showpic console command. can now create clickable items for touchscreen/absmouse users.
fixed menus to properly support right-aligned text. this finally fixes variable-width fonts.
rewrote console tab completion suggestions display. now clickable links.
strings obtained from qc are now marked as const. this has required quite a few added consts all over the place.
probably crappy attempt at adding joypad support to the sdl port. no idea if it works.
changed key bind event code. buttons now track which event they should trigger when released, instead of being the same one the whole time. this allows +forward etc clickable buttons on screen. Also simplified modifier keys - they no longer trigger random events when pressing the modifier key itself.
Right modifiers can now be bound separately from left modifiers. Right will use left's binding if not otherwise bound. Bind assumes left if there's no prefix.
multiplayer->setup->network menu no longer crashes. added rgb colours to the translation view (but not to the colour-changing keys).
added modelviewer command to view models.
added menu_mods menu to switch mods in a more friendly way. will be shown by default if multiple manifests exist in the binarydir.
clamped classic tracer density. scrag particles no longer look quite so buggy.
added ifdefs to facilitate a potential winrt port. the engine should now have no extra dependencies, but still needs system code+audio drivers to be written.
if it can't set a renderer, it'll now try to use *every* renderer until it finds one that works.
added experimental mapcluster server mode (that console command). New maps will be started up as required.
rewrote skeletal blending code a bit.
added cylinder geomtypes.
fix cfg_save writing to the wrong path bug.
VFS_CLOSE now returns a boolean. false means there was some sort of fatal error (either crc when reading was bad, or the write got corrupted or something). Typically ignorable, depends how robust you want to be.
win32 tls code now supports running as a server. added connect tls://address support, as well as equivalent sv_addport support.
exposed basic model loading api to plugins.
d3d11 backend now optionally supports tessellation hlsl. no suitable hlsl provided by default. !!tess to enable.
attempted to add gamma ramp support for d3d11.
added support for shader blobs to speed up load times. r_shaderblobs 1 to enable. almost vital for d3d11.
added vid_srgb cvar.
shadowless lights are no longer disabled if shadows are not supported.
attempt to add support for touchscreens in win7/8.
Wrote gimmicky lua support, using lua instead of ssqc. define VM_LUA to enable.
updated saved game code. can again load saved games from vanilla-like engines.
changed scale clamping. 0.0001 should no longer appear as 1.
changed default mintic from 0.03 to 0.013 to match vanilla qw. I don't know why it was at 0.03. probably a typo.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4623 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-03-30 08:55:06 +00:00
Spoike fd70ec0c62 fix misc warnings.
add support for q3's shader remapping feature.
don't mask sky depth on q3bsp. apparently it causes problems.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4609 fc73d0e0-1445-4013-8a0c-d673dee63da5
2014-02-13 23:54:57 +00:00
Spoike 7f84519ce2 fixed fbsp vertex lighting the lame way. still needs a glsl method.
fixed shader lighting levels due to overbright methods.
fixed scaling.
misc other fixes and tweaks.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4469 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-08-27 13:18:09 +00:00
Spoike e0aab1c134 try to fix shader vertex lighting issue.
fix issue where ftenq protocol positions were sticking.
fixed manifest file windowless infinite wait.
Added support for ^[\img\foo^] images on the console if they are at the start of the line.
Console objects may now be drawn by csqc. Key input is blocked for now, lest csqc get access to things its not allowed to access. Will add provisions later.
fixed sound menu crash.
added ultrawide speex codec.
clamp micamp levels to try to boost audio quality/audiability.
rtp control plugins are now allowed to use opus, speex support is correctly queried instead of assumed.
WriteFloat now works properly, and not just for ents.
no longer sending prespawn/precaches/signon commands to clients that do not expect them.
fix sql column header queries.
more verbose about active nq protocol verions.
-condebug overrides config.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4461 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-08-21 07:14:39 +00:00
Spoike 71207fce9b Try to fix a colours issue mixup. that glsl specifies a colour attribute.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4373 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-05-20 16:01:40 +00:00
Spoike 9dbf5b5837 changed to not load gamecode from quake paths, to avoid issues with buggy quakeworld clients that will freely download stuff from anywhere (not sure what to do about ktx, but it can be reenabled with a cvar).
image_width is now only set by a single function.
tweaked scancode inputs slightly. added support for printscreen binds.
changed the way gamma works. glsl gamma now used when running windows, or hardware gamma is not available. removed gl_contrast+gl_brightness.
q2 gamecode support no longer has a system componant. this means that ports only need the generic stuff.
misc tweaks to the d3d11 renderer.
added brief descriptions to many builtins. need to add comments to constants, globals, and fields too, somehow.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4355 fc73d0e0-1445-4013-8a0c-d673dee63da5
2013-05-11 14:02:55 +00:00
Spoike fe23d72d69 Android tweeks
memory freeing tweeks
batch data rearranged a little (to try to reduce memory).
RBSP/FBSP fixed. lightstyles now supported.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4059 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-07-05 19:42:36 +00:00
Spoike 33a540806e Small tweeks, bugfixes, breakages, cleanups...
Added $reflection texture map for (water) shaders. Just renders the screen to an fbo before rendering the surface.
hub/savegame fixes.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4034 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-05-09 15:30:53 +00:00
Spoike 25ef3f02db Couple of bugs fixed - other-player prediction, net_preparse crashes, q2 gamecode no longer crashes.
Throttle getstatus requests (so we don't end up being used for udp escilation (d)dos attacks so usefully/expensively).
Added cl_predict_players_frac. vanilla QW effectively had a hardcoded value of 0.5.
Added simple fps preset menu, which keeps on appearing until they actually pick one. mwahaha.
Quit menu offers to save settings if some CVAR_ARCHIVE cvar was changed.
alias models do vertex blending on the gpu.
GL renderer now uses vao when available.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4031 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-04-24 07:59:11 +00:00
Spoike 5651e77c30 Android fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3956 fc73d0e0-1445-4013-8a0c-d673dee63da5
2012-01-16 06:22:06 +00:00
Spoike f33873ddb7 committing for fixes for OMC
some minor changes. Mostly bug fixes and internal reorganisation.
Added code to provide an activex control as part of the npfte.dll plugin. If the dll is registered the regsvr32 way, the plugin can be used with IE as well.
fisheye/panoramic view enable is now controlled by rulesets instead of serverinfo.
server will list all pak files it has loaded. client will probably do the wrong thing and still needs fixing properly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3910 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-10-27 16:16:29 +00:00
Spoike 61e4aa96b3 removed separate trigger/solid links.
some q3 fixes.
q2 will autosave on map changes, like q2 normally does.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3839 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-06-29 18:39:11 +00:00
Spoike d5ab16befc heightmap semi-functional again, but still useless.
A few bugs fixed.
Slightly better compatibility with DP.
Added breakpoint_csqc command to set breakpoints in csqc to better debug csprogs.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3793 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-20 04:10:46 +00:00
Lance 0e078381b3 Fixed incorrect pointer types, and some other warning types for GCC and MinGW
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3788 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-19 13:34:07 +00:00
Lance f6741d8dde My attempt at handling GCC warnings, everything but incorrect pointer types, #pragma warnings, " is deprecated etc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3787 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-05-15 13:23:13 +00:00
Spoike 132ef961bc Fixes...
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3785 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-04-30 17:58:24 +00:00
Spoike 546c49870d Fixes a couple of bugs, the overkill way.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3777 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-04-20 23:34:13 +00:00
Spoike 946b5d6f52 lots of useless stuff.
will attempt to load doom3 maps.
_gl_fog 1 and friends can be used to activate fog, still needs tweeks for use, not a final feature at all.
added gl_screenangle which rotates the screen, including hud.
seems to be some nvidia driver issue. may need end-tasking after video shuts down (including from-fullscreen vid_restarts).
double-frees on glsl shaders is now supposedly fixed.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3735 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-02-25 04:22:14 +00:00
Spoike 8fc0df0f44 vid_gl_contex_gles cvar mostly works. Most of the shaders still have no program attached to them - pics+font have it disabled due to nvidia driver crashes, I wanna check if ATI crashes too.
Merged GL+D3D builds should work now too, but still not stable if you vid_restart too much.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3716 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-23 03:44:49 +00:00
Spoike 9b6ea1c114 Fix for recent timing issues, hopefully.
Fixed a couple of warnings.
Added voip options to menus.
GL+D3D merged builds compile, but d3d is probably broken still.
Added vid_gl_context_es2 cvar to attempt to init a gles context. Note that you also need to set the requested gl version correctly.
Changed qtv's webpage view slightly, for slightly updated npfte usage.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3714 fc73d0e0-1445-4013-8a0c-d673dee63da5
2011-01-04 02:56:16 +00:00
Spoike 4505f7321b various small bugfixes, mvd+voip should work again, qcjit changes, towards usability.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3700 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-12-18 17:02:47 +00:00
Spoike 9eaa65ccda d3d now does fullbrights properly and skyboxes.
ogl still has broken skyboxes...


git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3653 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-13 17:22:46 +00:00
Spoike 5f71f6d355 Portals, skyspheres, particles, lighting, texture clamps work.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3651 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-11 18:22:49 +00:00
Spoike 2937f9d861 Now understands spams setangles.
D3D is a little more complete, lighting on models appears correct.
Added rate scaling to the sound system. Not sure on the configuration yet, and its not queryable in any way. Misc sound related cleanups.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3619 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-06 23:05:29 +00:00
Spoike fcba94f554 Merging D3D and GL renderers a little.
D3D should be functional now. Maybe not pretty, maybe not complete, maybe not correct, but at least playable, at least with classic particles.
Some download fixes.
Some q3vm 64bit fixes.
Removed some dead cvars.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3614 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-11-02 23:17:25 +00:00
Spoike 22bb395305 hexen2 client effects now go via the particle system, if they're supported at all. Added 'h2part' description to provide this.
Fixed svc_setangles and sv_bigcoords.
Model code is now responsible for transforming traces instead of it being generic. This fixes rotating things getting stuck in players in hexen2.
The renderer now generates a list of surfaces to draw. Backend now performs rotations/scaling per entity. This fixes sorting order, at least when not using realtime lights.
Hidden items in the hexen2 inventory that you do not have.
Added colourmapping for hexen2.
Should be easier to click on menu items for hexen2.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3602 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-28 17:14:38 +00:00
Spoike 1e1084bed7 Changes merged from trunk. Also additional extensive changes. Q3 portals work.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3541 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-11 02:22:39 +00:00
Spoike c0680334c7 What could possibly go wrong?...
Multiple consoles can now be printed/cleared via extra con commands.
Fixed the tab-completion alignment, by adding support for \t characters.
Changing the download mechanisms. Don't try downloading an ftp:// file. It'll probably crash you for now.
Trying to fix load time issues on q3bsps with a lot of curves.
Fixed sprites.
Added warning prints/spam where the new backend is bypassed, thus marking things that still need to be fixed.
QTV proxy fixed to not sit on qw servers unless someone is actually watching. Will ping for status requests still.
QTV proxy now supports ipv6.
QTV proxy now attempts to use the fte browser plugin.
Reworked the browser plugin code, now uses threads instead of ugly hacks. This should make cooperation with other such plugins work. Fixes unresponsiveness of opera, and gives an API that can be used from any other bit of software you want, tbh (read: internet explorer/activex plugins).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3516 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-03-14 14:35:56 +00:00
Spoike e6d1ae1a8f more cleanups: csqc now shares collision code with ssqc. Still lacks physics.
gl_rsurf.c has been split into gl specific and generic code - the d3d renderer can now draw the world.
ifdef removed the old server-side mvd playback which had been disabled all this time anyway.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3426 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-07 13:29:15 +00:00
Spoike 66b78c0b11 Work In Progress branch.
In this version: replacement GL backend. Replacement D3D backend sharing code with GL. Lots of code reorganisation.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3401 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-04 21:16:50 +00:00
Mark Olsen 7b9bfe0ae9 Spike for president, less GLSL compile errors! Oh, and happy birthday yesterday, BTW ;)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3374 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-09-16 19:33:50 +00:00
Lance 4ff8acffb9 Hack to get MinGL to compile again
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3350 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-29 15:01:00 +00:00
Spoike f5e3d5e499 Fix glitching with q3 skies.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3345 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-08-12 08:12:36 +00:00
Spoike 10accd2908 Cleaned up GL a minor amount more.
Sounds can now be recorded while capturing to tga sequences (as raw sound). Fixed frame limits a little.
Passed the unicode key values around to a few more key input functions.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3332 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-25 11:05:06 +00:00
Spoike f419538b37 Added skygroup command. Also polygon offset cvars. Even though its evil - I'm not sure how long it'll stay.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3321 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-19 20:43:07 +00:00
Spoike 58af42990d Fixed up some EXT_CSQC expectations.
Tweeked interpolation.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3313 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-18 20:46:42 +00:00
Spoike 57c9515b39 Updated QVM apiFixed up some of the slowness in the sky/water warping code.
Enabled freetype in gl builds. It'll try to link dynamically. Headers are included for windows users. unix users will need the freetype2-dev package for their system, sorry. you could probably get away with editing the makefile to include the headers if that's a problem.
Fixed occasional missing skies.
Updated q1qvm api stuff version (to 13).
Cleaned up the ban code. There are no longer two separate mechanisms to ban people.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3279 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-14 23:42:54 +00:00
Spoike a80214290d Oh noes! Everything is broken!
Rewrote much of the console code. Should be no obvious differences.
Nearly all conchar parsing goes via a single function. Still some left in the dedicated server code.
Added the ability to parse utf-8 text, disabled by default.
Added the ability to input unicode chars using whatever keymap the user has set up in windows (not enabled by default).
Reworked vbo stuff to be a little more versatile.
Added toggle console command.
Added freetype2 support (not compiled by default).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3234 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-05 18:45:53 +00:00
Spoike 2d8dba797a Gcc is more fussy than msvc
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3227 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-06-22 06:07:33 +00:00
Spoike f2cce499f6 Multiple minor cleanups. Chunks of dead code removed.
Added com_parseutf8.
Z_EXT_VWEAP is supposedly supported serverside, but not clientside. It is not advertised, and not used, yet.
Fixed csqc mouse issues in linux, supposedly.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3226 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-06-21 17:45:33 +00:00
TimeServ 9f09a30019 r_fastskycolour accepts rgb format
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2857 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-01-13 05:05:30 +00:00
Molgrum 0f02f12b8b s/compatable/compatible (take notice that sv_compatablehulls will have a changed name too)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2717 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-10-05 18:08:47 +00:00
Molgrum 4861637b3b Unused variables here too.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2613 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-08-25 04:22:18 +00:00
Spoike 1f9484f93d One d3d renderer.
Wonder how much this breaks.
Place your bets now.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2501 fc73d0e0-1445-4013-8a0c-d673dee63da5
2007-05-25 22:16:29 +00:00
TimeServ 637633af80 vector op cleanups, added pr_droptofloorunits, sets how many units droptofloor QuakeC call will drop, defaults to "" which drops up to 256 units (Quake default)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2304 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-05-29 04:50:24 +00:00
TimeServ 3fd1a224e3 internal cleanup, r_menutint and r_skybox use callbacks
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2210 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-04-15 05:28:44 +00:00
Spoike 6231281e5e Fix a bug where shaded wateralpha surfaces were not being drawn.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2114 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-03-14 01:28:22 +00:00
Spoike 2046931e26 gameclock, roq/avis can play on shaders (sound is wrong though, so that's fine with avis!), snprintf changes (this is the bulk), up2's mcharset
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2054 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-03-06 01:41:09 +00:00
Spoike bb67cd181e Fixes the skybox in d3d.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1922 fc73d0e0-1445-4013-8a0c-d673dee63da5
2006-02-01 22:32:39 +00:00