Commit graph

201 commits

Author SHA1 Message Date
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
789197f58f Working towards d3d+gl dual support again.
Fixed slow-rockets bug with high framerates.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3608 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-10-02 02:25:39 +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
f535baa59f Added per-player userinfos (for splitscreen).
Enabled cheats in single player by default.
Added a 'sky' alias to wrap r_skybox.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3583 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-14 03:17:33 +00:00
Spoike
ce07219448 Fixes, workarounds, and breakages. Hexen2 should work much better (-hexen2 says no mission pack, -portals says h2mp). Started working on splitting bigcoords per client, far too much work still to go on that. Removed gl_ztrick entirely. Enabled csprogs download by default. Added client support for fitzquake's 666 protocol, needs testing, some cleanup for dp protocols too, no server support, couldn't selectively enable it anyway. Now attempting to cache shadow meshes for explosions and stuff. Played with lightmaps a little, should potentially run a little faster on certain (intel?) cards. Tweeked npfte a little to try to avoid deadlocks and crashes. Fixed sky worldspawn parsing. Added h2mp's model format. Fixed baseline issue in q2 client, made servers generate q2 baselines. MOVETYPE_PUSH will not rotate extra if rotation is forced. Made status command show allowed client types. Changed lighting on weapons - should now be shaded.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3572 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-08-11 03:36:31 +00:00
Spoike
244c08ad04 Attempted to add support for divVerent's varlen protocol extension info. This is more silencing warnings than anything else.
Also tweeked video code to remove 6 dead sw-only functions.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3556 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-18 08:42:59 +00:00
Spoike
e7ec40d0c8 Trying to fix some leaks.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3547 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-07-12 22:46:37 +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
e6f90bea14 Tweeks to the d3d renderer. Supports various shader features now. Other changes/fixes/breakages also.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3531 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-05-01 22:47:47 +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
589ef03c05 FTE, now with added C support - no longer treating enums as regular ints.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3509 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-02-06 01:25:04 +00:00
Lance
8e3fca993e Quake, Quake2 & Hexen now have fully functional singleplayer cheat menus. Existing tweaks to other menus, like more bloom diamond size combobox options (2x, 4x, 6x, 8x, 10x), video menu has a more reliable width & height value source to display current resolution incase vid_height and vid_width are 0
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3505 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-01-23 07:14:37 +00:00
Lance
bfc4c15d48 Fixed a menu crash, tweaked some menus, added bloom options, and a method of decreasing the time vid_restart takes in each menu by not trying to apply menu options which don't differ from the current cvar value.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3500 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-01-17 06:42:30 +00:00
Lance
a9326e3ea1 Fix for MinGL, and minor menu fixup
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3498 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-01-16 06:16:42 +00:00
Lance
d55c03b072 Menu work in progress, additions, tweaks etc, still more to do
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3495 fc73d0e0-1445-4013-8a0c-d673dee63da5
2010-01-15 05:35:27 +00:00
Lance
4062c0b387 Updated gl_max_size to be renderer latched requiring a vid_restart to take effect
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3488 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-12-30 04:29:14 +00:00
Lance
22df64de91 Gasp, teamplay menus, and fixups to other menus I added last commit
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3487 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-12-30 04:06:14 +00:00
Lance
7f0e91037c Menu code work in progress, menu_video is less cluttered, new menus
within menu_options, sound, 3d rendering, texture, shadow & lighting etc


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3486 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-12-29 14:00:56 +00:00
Lance
77056f58ed Same as r3484, but applied to the WIP branch
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3485 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-12-25 03:06:13 +00:00
Lance
df42139913 Added various 4:3, 16:10 (8:5), 16:9, 5:4 aspect-based resolutions,
cleaned up the video mode list, added refresh rate option to video menu 
(driver default (0), 59hz, 60hz, 70hz, 72hz, 75hz, 85hz, 100hz)


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3484 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-12-25 02:57:16 +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
f6b3416ce7 Fixed up some stuff so it actually compiles now. Also corrected pixel offsets on d3d chars so fonts are like in GL. Removed the unneeded gl_ppl file.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/branches/wip@3403 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-11-04 23:20:50 +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
Spoike
1d68abc578 Should fix vweps.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3330 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-24 20:20:31 +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
d119e7fadb Added scr_turtlefps - sets the framerate that the engine has to maintain in order for the turtle to hibernate. Because... why not?
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3312 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-18 20:26:24 +00:00
TimeServ
d0a8a8ee9d default vid_width/vid_height cvars to 0 to use desktop params (unless windowed then use 640x480x32)
don't try to switch to 640x480 if we already attempted it

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3291 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-17 23:11:34 +00:00
Spoike
4671892cce Removed some unused variables.
Added support for 32bit player skins (with pants/shirt overlays).
Updated spectating name tags to not lag, and be centered. Also visible by default.
Smoothed out viewweapons slightly in certain cases (when they're not animating at 10fps).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3290 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-17 22:28:16 +00:00
TimeServ
4b2c4ed77a remove more unused sw variables
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3289 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-17 22:15:37 +00:00
TimeServ
1b101bab97 remove ram icon (no longer makes sense with non-sw)
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3287 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-17 21:25:53 +00:00
TimeServ
a94a33212c destroy software rendering and break everything (and that won't be all!)
also note that merged builds on non-windows no longer make much sense

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3283 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-16 22:06:59 +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
b5ac90d523 More stuff broken.
Added control over texture coords on particles. Switched them to batch based on common render state. Less state changes there now.
Inverted sorting, to aid depth culling.
fullbrights use vbos too now.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3261 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-11 20:56:09 +00:00
Spoike
18b617f4a1 vweps.
added builtin float(float modidx, float framenum) getframeduration = #277; to both csqc and ssqc.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3236 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-07-06 01:20:20 +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
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
Spoike
5f1a9d8cbf added cprint console command.
fixed nq client loading-screen persisting bug
fixed nq clients getting flooded by packets.
fixed nq clients not receiving any entities
removed a bit of redundant code in pmove
fteqcc: merged array function calls with real function calls, fixing return values in the process.
vid_preservegamma now defaults to off. windows sucks.
tweeked the prototype FTE_CSQC_SKELETONOBJECTS a bit. still not official nor advertised.
added a little bit more functionality to halflife support
csqc got some pmove tweeks. this is how I want it to work. nothing has been changed that is really incompatible with darkplaces in this commit.
added markers around some ext_csqc_1 features.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3178 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-19 00:50:42 +00:00
Spoike
aa8ca7c111 Can script some things now, including playername and connecting it to other servers. Though its still a little limited in what it can do.
Scripting does work with both firefox and opera. Don't know about others.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3167 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-10 00:33:02 +00:00
Lance
e71b59bf92 Crosscompile all Win32 SDL binaries from Linux with FTE_TARGET=win32_SDL, binaries have been tested alittle and still have bugs
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3165 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-08 08:12:29 +00:00
Spoike
2adb420a6d Reworked the console/loading screen a little. The console is no longer directly shown at startup. MSVC2005 project files update for npqtv.
Added vid_wndalpha to make the window transparent (only supported in GL-win32).
Multiple issues with SW rendering, which I'll fix eventually. It does at least run, even if it looks ugly.
Plugins are now able to read the console input. Bigfoot, feel free to tweek.
Fixed up a few mismatched prototypes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3153 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-06 00:34:32 +00:00
Spoike
4974c57c2c Big fat-off commit.
A few changes. Half-Life support is finally getting committed.
Some unnecessary filesystem code changes.
And there's code for nsapi - meaning we can embed FTE in a browser (firefox and opera on windows work).
A couple of CSQC changes, trying to move towards a final EXT_CSQC_1.
Revised ruleset format finally implemented.
Doesn't compile with msvc6 due to issues with libjpeg not being a clean library.
Presumably its fine in vs2005.
Your mileage may vary.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3148 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-04-01 22:03:56 +00:00
Spoike
b763b5594d My monthly commit. I wonder what I broke.
Contains some stuff to get twig working a little better.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3132 fc73d0e0-1445-4013-8a0c-d673dee63da5
2009-03-03 01:52:30 +00:00
Spoike
6e3f69f504 d3d rendering is diabled (framestate, read later - merged will compile just sw+gl for now).
fte particle scripts are disabled (classic works).
I'll fix these in the new year.
Redid framestate stuff again. Slightly better now, but this is the bulk of the changes here.
Reworked the renderqueue to provide batches of items instead of individual items. This cleans up the particle rendering code significantly, and is a step towards multiple concurrent particle systems. fte's scripted particles are broken as I'm trying to find a way to rework them to batch types together, rather than having to restart each batch after each particle when you have two particles in a trail. I'll fix it some time.
Reworked some alias model code regarding skeletal models. Added some conceptual skeletal bone control builtins available to csqc. Currently it can query the bone names and save off animation states, but can't animate - its just not complete.
Added more info to glsl custom shaders.
Updated surface sorting on halflife maps to properly cope with alphaed entities, rather than just texture-based blends (q2-style).

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3095 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-12-23 02:55:20 +00:00
Spoike
dce284811e Minor update...
Q3 clients can connect to q1 gamecode (sv_listen_q3).
hacked support for SendFlags. It'll work compatibly, just not efficiently.
Unified shared qc builtins.
fteqcc supports int |= float, more params in macros, &~= operator.
Additional recent DP QC extensions.
Particle system abstraction. 'r_particlesystem classic' (vs null or script) will revert to truly classic particles.
Nexuiz might run again.
Network address revamp (sv_port and sv_port_ipv6 can both be used to specify an ipv4 address:port and both corrently accept clients). localhost now properly favours ipv4 (use ::1 for ipv6 localhost).
Download system revamp.
Numerous other changes.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3051 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-11-09 22:29:28 +00:00
Spoike
c29cf3db99 Framerate will be more stable when picking up items/getting shot/etc.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3025 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-07-16 00:19:33 +00:00
Spoike
519983dee2 git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2992 fc73d0e0-1445-4013-8a0c-d673dee63da5 2008-06-01 22:06:22 +00:00
Spoike
40952dabf4 Let q2bsps work again when they're lacking textures.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2976 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-05-25 22:08:29 +00:00
Spoike
333339782b The renderer code actually listens to the video code failing again.
Also added an extra attempt to try 640*480 before giving up and reverting to console.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2925 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-02-16 03:40:32 +00:00
Lance
12d0492566 Silly mistake, made the directx9 option select the d3d7 renderer by
mistake.


git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@2903 fc73d0e0-1445-4013-8a0c-d673dee63da5
2008-02-02 15:52:14 +00:00