Commit Graph

356 Commits

Author SHA1 Message Date
Spoike 1c1f04370f preliminary .xcf support.
imgtool tweaks.
some build system fixups.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5560 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-06 01:59:13 +00:00
Spoike 0558ec638b Make sure freetype doesn't use the system/wrong png/zlib headers when compiled statically.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5557 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-02 04:33:36 +00:00
Spoike f3a779639c Fix build issue with bullet plugin.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5555 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-10-01 22:19:09 +00:00
Spoike fde25234df Add lame image tool, for no real reason. Handy as a wrapper around astcenc. Only tested on linux.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5552 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-29 03:08:01 +00:00
Spoike be5466c9fd Some image fixups.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5551 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-29 02:16:34 +00:00
Spoike 4134353778 Update some dependancy versions.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5550 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-09-26 02:48:55 +00:00
Eukara 3250a794b3 Hardlink against Freetype on OpenBSD from now on. The versioning is different on systems apparently and we don't want dynamic linking to turn into a Lovecraftian nightmare
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5512 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-12 02:32:18 +00:00
Eukara 299921118d Use CC=cc on BSD systems. On OpenBSD that'll use clang which produces more stable results than its version of gcc. For example release builds will break on Quake 3 Arena when playing with bots.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5511 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-08-11 23:35:23 +00:00
Eukara c159d90253 Fixed FTE not compiling on OpenBSD 6.5.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5499 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-07-30 23:34:18 +00:00
Spoike 8612ca3437 Lets try enabling Z_EXT_PF_ONGROUND by default for a bit, lets see what explodes.
Some warning/compile fixes.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5496 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-07-29 06:04:43 +00:00
Spoike 145c99e802 Make sure stripping actually happens now that we're spitting out .db files.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5489 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-07-03 18:27:09 +00:00
Spoike af48d07bc5 Fixes for winX_sdl builds.
Disable -ffast-math in release builds, as it was causing problems.
Added a build config that disables a number of things that might trigger antivirus FALSE-positives (including all http+tcp support, process forking, tls/crypto), for use in SDL builds where any further system interactions is deferred to SDL. For crippled builds.
Made the output of the version command more verbose to reflect networking features.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5485 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-07-02 04:37:11 +00:00
Spoike 8197e0875f Track areas properly, so we don't bug out when a client has multiple cameras in different areas.
Fix up r_ignoreentpvs 0 to check areas properly.
checkpvs builtin can no longer mess up area checks elsewhere.
Write out foo.db files for release builds, in the hopes of at least getting function names from release-build crashes.
Implement _skyroom worldspawn field, still needs a few tweaks though.
Try to fix android surface-related crashes, AGAIN.
Separate parsing of connect requests, in preparation for formal logins (and removal of the old ranking code).
A few tweaks to try to improve compatibility with q3 mods.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5484 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-07-02 04:12:20 +00:00
Spoike e58daf1090 Enable building plugins for android.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5459 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-05-10 02:06:07 +00:00
Spoike cb346bc1db Do ansi colours in sdl builds too.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5449 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-04-17 09:48:03 +00:00
Spoike 3ee3230f96 Try to fix up FTE's android port.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5445 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-04-15 18:43:42 +00:00
Spoike d65d4f6ff1 Some fixes for the emscripten port
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5404 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-02-23 09:29:20 +00:00
Spoike fa0c73d33b Fixed crash from too many csqc entities (reported by shpuld)
Added .psd, .pbm/.pgm/.ppm, .pfm, and .hdr image formats. Extensions NOT added to r_imageextensions.
png (and the above formats) can now be loaded as RGBA16, instead of being truncated to RGBA8 (8bit pngs not affected).
r_imagelist will now show images from memory, instead of potentially loading new/different ones from disk.
Fix serverbrowser bug being too eager to join the server (eg from alt+tab).
Don't send ipv6 packets to qw/q2 masters. They won't be able to report ipv6 addresses anyway, and this reduces warnings when a host STILL has no ipv6 (my ISP sucks). this does not affect q3/dpmasters, for people without ipv4 addresses.
Tried to improve compat with Bloodshot's particle effects.
Fixed a couple of issues with R_AddTrisoup.
Fixed string tokenizing bug where it was using the wrong buffer size values.
Don't show link-local/localhost addresses in eg the status command (unless developer).
qtv-rel is now an easier target, for new qtv releases.
qtv warning fixes.
added a nailtrail effect to 'high' particles.
fixed terrain shaders.
fixed fogged water issue (on one of bal's maps).
first attempt at gltf2 format support



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5400 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-02-16 19:09:07 +00:00
Spoike 2361c7d14f Flattened downloads menu.
Added scrollbars to various menus (when they're too tall for the virtual screen height).
Added warnings when qc draws to the screen outside of where it'll actually be displayed (freecs is guilty of this).
r_showshaders will now work in q2.
mod_texturelist will include a small preview, because I can.
plug_list command will now also display some plugins which are not currently loaded.
q1bsp now properly respects hitcontents (note that normally only hull 0 actually has contents other than solid+empty).
q1bsp now correctly reports content values in tracelines (this fixes freecs being unable to detect func_water).
Rewrote netgraph code. Now displays using polygons instead of textures for higher resolution graphs.
Fixed texture bug that appears with nouveau's core contexts (texture unit switches were not happening).
Added some better support for disabling vsync with nouveau, although its still broken fullscreen for some reason.
Changed fteqcc's warning for unrecognised CRCs. Should be more descriptive about the usual cause (but less technical and potentially technically wrong).



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5378 fc73d0e0-1445-4013-8a0c-d673dee63da5
2019-01-13 16:51:50 +00:00
Spoike 2ee8387644 Many general cleaups and warning fixes.
Console code no longer makes assumptions about con_main
Screenshots rework, for screenshot_360, but also some other cleanups.
Fixed an issue with beginpolygon (finally).
Added per-rtlight style strings.
Added cvar to control whether ents will be culled by fog.
Added define to disable IPLOG, etc.
Added r_editlights cvar and related commands, for whenever csaddon isn't available.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5338 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-11-19 06:37:25 +00:00
Spoike 45b4659de6 Fix vulkan lag issue with vk_busywait. Separate lightmap formats, to fix deluxemapping-with-hdr-lightmaps. Fix decals lingering on removed bmodels.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5326 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-10-27 04:32:18 +00:00
Spoike 2bedc32ff9 Misc tweaks.
Fix potentially serious crash with sprites+csqc tracelines.
Reworked fallback mouse cursor.
Fix decals on q3 bmodels.
Double-click to select a work to copy is now implemented.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5323 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-10-23 07:09:06 +00:00
Spoike 39e1f24511 Added trace_networkentity global to csqc. Try to fix some misc bugs.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5319 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-10-13 12:19:58 +00:00
Spoike b68a6218e8 Fix some stringop-truncation warnings. Enable static freetype in config_fteqw.h. Fix wastes build.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5318 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-10-13 06:20:49 +00:00
Spoike 5159a801ff lerpfrac3 fixes. unix sockets for the luls (disabled). some misc tweaks for xonotic.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5309 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-09-23 19:35:24 +00:00
Spoike 5b7a426afe Added cl_autodemo cvar to automatically record games. 1 records multiview demos where possible, -1 strictly records singleview demos.
Enclosed mvd recording in ifdefs, so it can be disabled at compile-time for any mods that don't want to have to deal with it.
Removed the recorded players thing.
Allow csqc to use EF_FULLBRIGHT.
Fix cl_pure to attempt to actually download missing packages.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5303 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-09-01 04:18:08 +00:00
Spoike b6847664a7 Some compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5301 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-08-25 02:53:45 +00:00
Spoike be373b88b9 Fix some annoying stuff.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5300 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-08-24 00:35:16 +00:00
Spoike 98b71860ed Fix some warnings. Hopefully fix bullet plugin.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5287 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-08-04 19:00:19 +00:00
Spoike 0fee3a4aea Add ortho lights (still has serious issues that make them unusable on regular maps).
First real attempt at lit water.
Parsing rtlights is now aware of spotlights.
Default cl_yieldcpu to 1, to save cpu for anyone who sets cl_maxfps lower. Added to menus.
presets now include view angle clamping - maps made for quakespasm REQUIRE full pitch angles despite it otherwise being considered a cheat or glitchy (on servers that try to block the cheat).
fix r_fullbrightSkins>=1 issue.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5274 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-07-22 11:49:37 +00:00
Spoike d1d0d86fea Rewrote infostrings. Now using infobuffers, which allows for the use of arbitrary blobs, except not using the protocol extension yet in case it needs to be fixed.
Fix sound source issues in Q3.
Fix q2 air acceleration/prediction omission.
Don't change console completion while typing (while that option is still possible).
Shift+tab now cycles completion backwards (now ctrl+shift for cycle subconsoles).
Allow a few things to ignore sv_pure - including csprogs files (which is useful for all the mods that come with the csprogs.dat distributed separately).
clamp pitch values to the range documented by openal, to hopefully avoid error spam.
add some colour coding to the text editor when shader files are being edited/viewed.
Changed how overbrights are clamped on q3bsp.
Added portalfboscale for explicit texture scales on portal/refract/reflect fbos.
qc decompiler can now at least attempt to decompile qtest's qc.
fteqccgui can now be pointed at a .pak file, and decompile the progs.dat inside.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5269 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-07-05 16:21:44 +00:00
Spoike b7784f41d9 Fix potentially serious vulkan performance issue.
Stripped obsolete vk_nv_dedicated_allocation extension.
Misc fixes for warnings.
Linux now defaults to using ~/.local/share/fte instead of ~/.fte for greater consistency.
Other misc linux tweaks.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5267 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-06-18 16:44:29 +00:00
Spoike df3e8fa719 Some bugfixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5259 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-06-03 09:46:41 +00:00
Spoike 5e937bcf48 Eukara wants native-code custom menus. He's weird.
Try to clean up the frametime global.
fix some quirks with r_dynamic -1
Added scr_fov_mode cvar to control whether the fov is defined relative to horizontal, vertical, or guessed.
fix a few fteqcc bugs
tab completion for the gamedir command.
fix the savegame_legacy command. it wasn't entirely compatible.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5254 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-05-21 13:47:53 +00:00
Spoike 6ee709e6d7 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5253 fc73d0e0-1445-4013-8a0c-d673dee63da5 2018-05-19 05:11:09 +00:00
Spoike cf899af34a compile fixes for openbsd+freebsd
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5252 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-05-19 05:07:30 +00:00
Spoike 876eb0cf39 minor fixes
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5228 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-24 08:33:03 +00:00
Spoike 7f2c356133 Fixed some bugs with servers using gnutls.
Attempted to clean up build configs slightly, now ALWAYS using a build config.
Now enabling wayland renderer by default on linux (activates by default only when x11 fails).
Given linux servers the ability to chroot (will be used by default if run as suid-root).
Fixed a couple of vulkan warnings.
Makefile now treats speex like any other library.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5227 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-24 04:02:09 +00:00
Spoike 986131b191 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5224 fc73d0e0-1445-4013-8a0c-d673dee63da5 2018-03-06 17:01:53 +00:00
Spoike 0da0e97fc5 fix up gles2-only targets
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5218 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-05 04:00:56 +00:00
Spoike 685404250f added cmake file.
reduced input latency.
reworked how internal texture formats work,.
added support for LIGHTING_E5BGR9 bspx lump for HDR lighting.
updated support for srgb, no longer looks quite so weird. works on glx
vid_srgb 3 attempts to use half-float swapchains, where possible.
gl: use glTextureStorage where available.
d3d11: gave up on using dxgi for fullscreen, was just too buggy.
glx: updated gl context creation on linux.
server: fix svc_updatefrags not being passed though (fixes frikbot scores)
fs: spanned pk3s now work (fragmented files/directory will fail to open, so this needs a custom tool to be fully useful).
fixed restart_ents command (restarts the map, but preserving the players as they are)
tw: removed 'QWSKINS' featureset from tw config

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5217 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-03-04 14:41:16 +00:00
Spoike 9e8bb446f4 implemented pm_stepdown.
attempt to implement 'simple csqc' api.
handle qw+nq gunshot+blood+lightning differently - they do actually have different particle spawn patterns (qw is a single point, so spreads wider).
fix q3ui logo mesh thing. work around q3ui player meshes on d3d.
split video and renderer latching, so vid_reload delatches more stuff.
fix autosprite+autosprite2 in 6 different renderers...
added fog volumes to d3d9 renderer.
using matrix hacks instead of glDepthRange, this should give more consistent behaviour, especially now that we have r_viewmodel_fov.
small cleanup for gl shadowmaps to make the interface more consistent with other renderers.
added patchDef2 parsing to fte's .map loader, doesn't actually use it though.
some fixes for q3's shaders, including to try to get overbright working better.
updated customskin api to give more control.
first attempt at a packager system for fteqccgui. probably useless, but whatever.
menusys changes to try to support QSS's csqc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5200 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-01-22 19:18:04 +00:00
Spoike fbf5069a38 Fixed http server on linux.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5176 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-12-02 22:30:08 +00:00
Spoike 7314c78135 bump android ndk version
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5173 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-24 23:02:46 +00:00
Spoike 4896954c8a apply lmgamma to rbsp vertex lighting
opus should now be statically linked or something
made the denormalised floats warning look less scary.
fix the console-making-hud-pics invisible issue

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5172 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-11-24 18:40:17 +00:00
Spoike 52f0f117ab fix Q3BSP-without-Q2BSP bug.
reworked deferred rendering to support specular. mrt can be reconfigured by TCs if desired.
reworked q3bsp deluxemap code (so it no longer bugs out).
fixed a few warnings.
updated fteqcc to try to cope with xonotic. still not working (xonotic fails from bound checks).
reworked shader conditionals to support elif. added some directives from QF(aka: warsow)

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5158 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-10-31 22:52:58 +00:00
Spoike b8d0718b5c Attempt to work around a gcc bug with -dumpmachine by using -print-multiarch with a second workaround. gcc sucks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5157 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-10-25 09:43:01 +00:00
Spoike 7dc01f7362 android port updated. egl now handled by native code, which means we now have proper control over everything and can default to gles2. requires android 2.0+. vulkan-on-android renderer added, but not tested.
added .ktx image support as an alternative to .dds, primarily for etc2 compression (which should work on all gles3 devices, or gl4.3), only known representations will work.
rework z-fighting workaround. now only enabled on known vanilla maps.
added splitscreen option to the singleplayer menu.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5154 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-10-13 17:50:28 +00:00
Spoike 0c8ad17f7c Fix various compiler warnings.
Added sv_guidkey cvar, allowing cross-server guid key generation (although it lacks auth).
Support .ico, because we can.
preliminary support for sdl 2.0.6's vulkan stuff. will wait till its actually released before its properly used.
Fix capturedemo.
videomap should typically use premultiplied alpha, apparently.
Updated sound drivers. No more old drivers. Better cvar registration. More drivers optionally support float output.
Added certificate log for dtls connections.
Rewrote font char cache, now supports full unicode char range, not just ucs-2. Attempt to support FreeType 2.5+ rgba fonts.
XMPP now supports carbons, and shows avatars in conversations. Updated xmpp's scram auth to be more strict, including the plus variation (hopefully), to block evil tls proxies.
ffmpeg plugin now uses the decoupled api for decoding too.
Cef plugin updated to support fte-scheme post data properly, as well as request/response headers (like cross-origin).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5148 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-09-20 11:27:13 +00:00
Spoike bc0dd0492c fixed a couple of stupid things.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5141 fc73d0e0-1445-4013-8a0c-d673dee63da5
2017-08-14 17:43:13 +00:00