Commit graph

5101 commits

Author SHA1 Message Date
Spoike
a6c66182ba fix ogg audio truncation.
add trace_surfacename qc global string.
concession for nolegacy and viewheights. remember kids, be sure to use VF_ORIGIN.
qcc: optimisation for [0,foo,0] vectors.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4980 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-02 03:12:25 +00:00
Spoike
c15ce364be git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4979 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-09-01 04:51:21 +00:00
Spoike
8241ed13be tweak intermissions a little so that quakeworld mods actually works properly (especially mvds).
dynamically allocate music_playlist_* cvars. may require the use of set from configs in order to create them in advance.
add a trail to rogue's plasma weapon.
fix r_waterstyle bug
attempt to optimise qcvm slightly.
tweak copyentity to be a bit more useful.
tweak ban code slightly. 'stealth' penalty hides other penalties.
fix some d3d9 rendering issues with q3.
fix some q2 stuff.
add the NOLEGACY thing that a few people have asked for lately.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4978 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-09-01 04:45:15 +00:00
Spoike
7a69604a76 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4977 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-08-28 04:05:20 +00:00
Spoike
31ced9384d fix cl_maxfps as a q3 client.
implement cfg_save_auto cvar, to replicated vanilla quake, ish. default off, obviously.
support for Q2RDF_IRGOGGLES (in combination with Q2RF_IR_VISIBLE). untested.
rework vectorvectors to be more predictable. v_right_z is now _much_ more commonly 0.
fix potential sound-related lock-up/console spam.
implement $colored_armor+$colored_powerup macros.
if command now copes with ' quotes.
fix crash on flushing q3bsps.
fix black bits with r_renderscale+cl_sbar 1
implement emulation for legacy q3 shaders when glsl is required. this is primarily for webgl right now, but potentially also useful with any gles2 port (fixme: still need to tweak d3d11 backend to support this too).
include scrollbar glyphs in the fallback font logic. this is primarily for download progress bars, especially with webgl.
don't try applying gamma to screenshots when using glsl.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4976 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-28 03:13:45 +00:00
Spoike
636def2dff autosprite and other deforms now work in webgl, supposedly.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4975 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-25 03:02:19 +00:00
Spoike
5e11342ee2 uri_get session cookie support
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4974 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-24 21:44:22 +00:00
Spoike
6f49a392f8 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4973 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-08-24 16:02:31 +00:00
Spoike
3d4e7f87b8 fix possible infinite loop.
fix viewmodel animations not adhering to sv_gamespeed.
actually fix -watchdog, at least for msvc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4972 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-24 15:47:40 +00:00
Spoike
ca09c08072 added a -plugwrapper argument, so that libcef can be a little more efficient with regards to new processes, at least in terms of quake resources eaten in subprocesses that will not be running quake.
fixed -watchdog, no longer conflicts with other exception handling.
try to be more efficient on behalf of videomaps

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4971 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-24 03:54:39 +00:00
Spoike
98f13cf884 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4970 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-08-22 03:05:37 +00:00
Spoike
6e6a767ba6 fix hitmodel.
allow providing a videomap shader as a cwindow background. because I can.
move all the tenebrae hacks over to only explicitly detected tenebrae progs.
small irc plugin update.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4969 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-22 02:59:01 +00:00
Spoike
76c9f48d13 fix bloom etc bug.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4968 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-20 06:12:05 +00:00
Spoike
e1a096bac2 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4967 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-08-20 03:58:15 +00:00
Spoike
972677cde0 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4966 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-08-20 03:32:09 +00:00
Spoike
e99354bd20 fix playdemo not working straight after record.
make a guess at the currently applied preset. fix issues with vid_reload on preset changes being buggy.
fix erroneous weapon flashes due to limited precision.
try to fix rogue finale.
fix issue with vid_restart crashing with directinput active.
work around emscripten rand entropy, at least as far as particles are concerned.
properly implement te_explosion2 (for rogue mission pack).
drastically reduce submodel polyoffsets in the webgl port, because firefox's depth precision is 16 bit or something stupid.
fix rogue ibar background not being used with qw hud.
added terrain editor feature to edit the bsp's entity lump. this also works with .bsps. added console command to reload the map/apply those ent changes but leaving the players how they were (lets hope enemy etc stuff doesn't bug out...)
force-enabled airstep when travelling fast. this is to partly replicate nq player physics in order to fix windtunnels on r1m5 iirc.
added some more effects to the 'high' particle effect, in order to make rogue feel a little more loved.
fix for rogue buzzsaws.
rework webgl pointer locks.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4965 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-20 03:17:47 +00:00
Spoike
c7b1e544ee fix autoid.
fix skewed grey captures.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4964 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-14 21:04:00 +00:00
Spoike
4116da6298 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4963 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-08-14 02:55:59 +00:00
Spoike
a26a373d15 fixed picmip simpleitems issue.
fixed double picmip bug.
use pbos for videocapture, for extra speed. mwahaha.
fix issues with 2d batching. including drawflags.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4962 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-14 02:46:38 +00:00
Spoike
5f7243c6dc capture[demo] now works in d3d renderers.
capturedemo now supports rendering to an fbo. this provides support for crazy video resolutions. 16k*16k videos are going to be quite large... only works in gl. hurrah...
console selection/copy indicators are back!
fix issue with q2 server browser.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4961 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-11 09:14:33 +00:00
Spoike
fc691d5be8 implemented gl_simpleitems.
load times reduced slightly.
don't show autoid armour if they're dead. its just not relevant.
fix csqc staticsound builtin.
fix some shader leaks/double-frees in certain situations.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4960 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-10 18:28:23 +00:00
Spoike
f520bdede7 fix gameclock in mvds.
implement hardware cursors in d3d9+d3d11
fix crash from closing the audio menu in the webgl port.
make deluxemapping+softwarebanding require a vid_reload before anything happens. this solves missing textures until the user does it anyway.
fix scores+spectating issue. again. oops.
rename openal devices in the webgl port, so that it makes more sense.
remove glsl/hlsl parameter limit. this also fixes the final ie webgl issue (still gets half the framerate though).
fix some issues with bloom and waterwarp active at the same time.
attempted to give properish error messages from emscripten, despite emscripten hating me.
hack drag+drop into fteqccgui. I ought to make fteqw accept demos etc this way some time too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4959 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-07 17:49:49 +00:00
Spoike
257610c89f add atlasing for wad images (batching means the entire regular hud can be a single draw call, assuming the ammo counts batch alongside show_fps).
d3d9 renderer can now use all the model batching stuff I wrote for gl.
fixed loading screens with d3d9 renderer.
cl_deadbodyfilter cvar is now archived.
autocam will avoid switching if the newly tracked player doesn't have anything interesting, etc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4958 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-04 15:16:24 +00:00
Spoike
676d59432a Lame customisation is now possible, with a whole lot of effort.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4957 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-04 12:17:42 +00:00
Spoike
aab72de84b more webgl tweaks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4956 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-02 19:08:36 +00:00
Spoike
4b2aa11988 I guess that is needed then.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4955 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-02 12:09:31 +00:00
Spoike
efc1082d7c Fix some issues with emscripten.
fix some obscure issues with fteqcc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4954 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-08-02 11:36:46 +00:00
Spoike
9cb8a2d025 fix some d3d8+d3d11 issues. 2d stuff should work a bit better now.
setcursormode now available to menuqc too. this gives menuqc hardware cursor support (useful to revert some braindamage I added for dp compat - menuqc is a dp spec).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4953 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-31 13:23:32 +00:00
Spoike
6adb05d916 autotrack is now over-complicated.
demo_jump with no args tells the current time (separate from map time or anything)
implement batching for text+csqcpolys to reduce draw calls.
qclib supports pointer(inc casts) evaluation.
fteqccgui now has a lame variables window thing. probably I'll get harassed about it.
add brush_calcfacepoints builtin for csaddon to use to preview brush edits.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4952 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-30 16:26:15 +00:00
Spoike
450bbcb50f Added emulation for old return array; etc behaviour.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4951 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-28 03:13:00 +00:00
Spoike
2b77e1ad3b git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4950 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-07-27 09:00:18 +00:00
Spoike
8cfbc1ad26 Fix some of my breakages.
fix hexen2 blind monsters.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4949 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-27 08:21:34 +00:00
Spoike
d7745478b5 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4948 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-07-26 11:11:56 +00:00
Spoike
63713793c9 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4947 fc73d0e0-1445-4013-8a0c-d673dee63da5 2015-07-26 11:04:00 +00:00
Spoike
6d36834f8e Reworked client support for DPP5+. less code now, its much more graceful.
added waterfog command. waterfog overrides regular fog only when the view is in water.
fixed 64bit printf format specifiers. should work better on winxp64.
fixed some spec angle weirdness.
fixed viewsize 99.99 weirdness with ezhud.
fixed extra offset on the console (exhibited in 64bit builds, but not limited to).
fixed .avi playback, can now actually display frames again.
reimplemented line sparks.
fixed r_editlights_save flipping the light's pitch.
fixed issue with oggs failing to load.
fixed condump to cope with unicode properly.
made sv_bigcoords default except in quake. hexen2 kinda needs it for bsp angle precision.
fixed nq server to not stall weirdly on map changes.
fixed qwprogs svc_cdtrack not bugging out with nq clients on the server.
fixed restart command to load the last map run by the server, instead of start.bsp (when idle)
optimised d3d9 renderer a little. now uses less draw calls, especially with complex scenes. seems to get higher framerates than opengl now.
fixed d3d9 renderer to not bug out quite so much when run fullscreen (shader subsystem is now correctly initialised).
fixed a couple of bugs from font change. also now supports utf-8 in a few more places.
r_editlights_reload no longer generates rtlights inside the void. this resolves a few glitches (but should also help framerates a little).
fixed so corona-only lights won't generate shadowmaps and waste lots of time.
removed lots of #defines from qclib. I should never have made them in the first place, but I was lazy. obviously there's more left that I cba to remove yet.
fixed nested calls with variant-vectors. this fixes csaddon's light editor.
fixed qcc hc calling conventions using redundant stores.
disabled keywords can still be used by using __keyword instead.
fixed ftegccgui grep feature.
fixed motionless-dog qcc bug.
tweaked qcc warnings a little. -Wall is now a viable setting. you should be able to fix all those warnings.
fixed qw svc_intermission + dpp5+ clients bug.
fixed annoying spam about disconnecting in hexen2.
rewrote status command a little to cope with ipv6 addresses more gracefully
fixed significant stall when hibernating/debugging a server with a player sitting on it.
fixed truelightning.
fixed rocketlight overriding pflags.
fixed torches vanishing on vid_restart.
fixed issue with decal scaling.
fixed findentityfield builtin.
fixed fteqcc issue with ptr+1
fixed use of arrays inside class functions.
fixed/implemented fteqcc emulation of pointer opcodes.
added __inout keyword to fteqcc, so that it doesn't feel so horrendous.
fixed sizeof(*foo)
fixed *struct = struct;
fixed recursive structs.
fixed fteqcc warning report.
fixed sdl2 controller support, hopefully.
attempted to implement xinput, including per-player audio playback.
slightly fixed relaxed attitude to mouse focus when running fullscreen.
fixed weird warnings/errors with 'ent.arrayhead' terms. now generates sane errors.
implemented bindmaps (for csqc).
fixed crashing bug with eprint builtin.
implemented subset of music_playlist_* functionality. significant changes to music playback.
fixed some more dpcsqc compat.
fixed binds menu. now displays and accepts modifiers.
fixed issues with huge lightmaps.
fixed protocol determinism with dp clients connecting to fte servers. the initial getchallenge request now inhibits vanilla nq connection requests.
implemented support for 'dupe' userinfo key, allowing clients to request client->server packet duplication. should probably queue them tbh.
implemented sv_saveentfile command.
fixed resume after breaking inside a stepped-over function.
fixed erroneous footer after debugging.
(I wonder just how many things I broke with these fixes)

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4946 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-26 10:56:18 +00:00
Spoike
9ecc276ce3 fix crash from dodgy skies.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4945 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-14 15:50:18 +00:00
Spoike
dca5fee18a bother. silly comments. try that again.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4944 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-14 15:02:06 +00:00
Spoike
510175058e forgot to rebuild the builtin shaders.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4943 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-14 14:49:47 +00:00
Spoike
869e544ad4 fix glsl not being used for skeletal animations (10->50 fps jump)
fix vbos not being used for skeletal animations (50->770 fps jump, yes, really. OOPS!)
so yeah, 7700% speedup there. lol... *sigh*
fixed update notification prompt not appearing by splitting menu key dest into emenu+gmenu. thus the prompt is no longer killed by menu.dat starting up.
fog command now displays a the extra params.
rewrote console char handling to support 32bit unicode chars. font code does not support more than 16bit codepoints still, however.
rewrote beam code in order to restore models on vid_restart. this solves a crash where they were invalid pointers afterwards.
revived old menu_media, because jogi wanted shuffle.
music now fades out for a sec when changing fake-cd-tracks.
music no longer abruptly stops when changing maps.
added fxaa support.
reworked bloom a bit. can now bloom further.
added r_renderscale cvar, for people that want supersampling (max 2), or subsampling for more speed or whatever.
$timer now favours cvars with that name, rather than the $time macro.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4942 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-14 14:47:00 +00:00
Spoike
9b058ce95b sky should accept fog somehow. this is the glass ceiling method. every method sucks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4941 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-12 00:35:11 +00:00
Spoike
2a2a53af2e z_ext was bugged since my qwfwd stuff.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4940 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-10 02:43:15 +00:00
Spoike
89a33f317a attempt to fix autoid revealing spies in TF.
fix issues with converted qizmo demos that appear to contain connectionless packets.
clarify some spam a little.
made demos menu re-open in the same path as before, with the same demo selected. still no mouse.
attempt to cope with gles2's potential lower attribute limit.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4939 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-09 18:02:49 +00:00
Spoike
b247f3e076 fix crash caused by missing bsp.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4938 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-09 16:22:43 +00:00
Spoike
845c0782cf I've been writing too much qc lately, apparently.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4937 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-08 19:36:23 +00:00
Spoike
2d6952b84e fix a few bugs and quirks. yay.
including one that crashes while playing ctf demos. oops.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4936 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-08 19:32:16 +00:00
Spoike
198410cfe7 disable vfs_flush when recording demos, there's some significant slowdown, and I don't see what else it could be (doesn't affect me).
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4935 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-07 02:44:27 +00:00
Spoike
67786a2601 ignore proxies if they claim to be able to ping a lan, because it probably won't be yours.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4934 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-07 02:33:00 +00:00
Spoike
6f5f8c3e34 implement connectbr command, along with providing best-route info from the server browser.
does not use proxies by default. this is the first pass at this, and I'm not sure the ping values are reliable enough to have any faith in the routes selected.
fix a couple of other issues too.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4933 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-07 02:03:31 +00:00
Spoike
d789a2c81a fix HOM issue with out-of-world r_projection. also gave 20% speedup.
refuse to load certain dxt images for premultiplied alpha, as these cannot otherwise work.
fteqcc now tries to be more relative with its paths, so #pragma sourcefile "subdir/foo.src" can work as expected.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4932 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-06 14:47:46 +00:00
Spoike
83f0179906 fix tracker.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4931 fc73d0e0-1445-4013-8a0c-d673dee63da5
2015-07-06 14:33:22 +00:00