1
0
Fork 0
forked from fte/fteqw
fteqw/engine
Shpoike f38f27e388 Add 'auto' keyword, this works around ptr-to-local in a C compatible way. Unlike C, can also be used for globals where it serves to reduce bss in favour of loadtime allocs.
Fix some other C-related qcc bugs.
Add 'extern "QC"' and 'extern "C"', probably doesn't quite tweak enough compiler settings like type keywords, but should otherwise be fine for *extensions.qc.
Avoid using popen on weird systems (for git info).
Add emulation for pointers to char/short, so they can be used with older/limited opcode targets (eg DP - char/short ptr maths is still an issue there though).
2025-01-26 06:55:31 +00:00
..
client Add setwatchpoint builtin, for debugging stuff that would otherwise be hard to monitor. 2024-12-28 16:30:05 +00:00
common Add setwatchpoint builtin, for debugging stuff that would otherwise be hard to monitor. 2024-12-28 16:30:05 +00:00
d3d WIP: linear fog mode (required for Source Engine compatible fog) (#223) 2024-10-20 19:12:16 -07:00
droid Track areas properly, so we don't bug out when a client has multiple cameras in different areas. 2019-07-02 04:12:20 +00:00
gl glsl: unbreak lightmapped surfaces 2024-12-30 02:22:35 -08:00
http Undo the damage from 2e51fb74be 2024-12-28 16:24:00 +00:00
partcfgs Add all the junk for network compat with Q2E. 2024-07-14 19:58:24 +01:00
qclib Add 'auto' keyword, this works around ptr-to-local in a C compatible way. Unlike C, can also be used for globals where it serves to reduce bss in favour of loadtime allocs. 2025-01-26 06:55:31 +00:00
server Add setwatchpoint builtin, for debugging stuff that would otherwise be hard to monitor. 2024-12-28 16:30:05 +00:00
shaders Parse gltf2's KHR_materials_transmission and KHR_materials_volume extensions, so eukara can figure out the glsl for it. 2024-12-28 16:29:14 +00:00
sw android/msvc tweaks/fixes. 2019-04-19 23:55:47 +00:00
vk Parse gltf2's KHR_materials_transmission and KHR_materials_volume extensions, so eukara can figure out the glsl for it. 2024-12-28 16:29:14 +00:00
web fteqw: add memrealloc builtin. 2024-12-28 16:24:00 +00:00
xdk Builtin for movetype_push ents, wastes config changes 2017-06-15 14:23:26 +00:00
BSDmakefile testing, never mind this 2008-04-27 10:23:37 +00:00
LICENSE This should have been in here all along. 2005-06-01 18:31:29 +00:00
makeconfig.sh Tweeks to the d3d renderer. Supports various shader features now. Other changes/fixes/breakages also. 2010-05-01 22:47:47 +00:00
Makefile CI and various compile fixes (#270) 2024-09-06 09:31:36 -07:00
README.MSVC just added the ml.exe requirement 2005-11-19 16:32:14 +00:00

This code compiles against libjpeg, libpng, zlib, dx7, libogg and libvorbis.
You can find the main MSVC 6 workspace in the ftequake directory.
You will need to build the gas2masm project's debug build first.
After that, you will have a choice of FTE builds.
If you are running without libraries, you can pick the mingldebug build. For sw only builds, select the debug/release options. For dedicated builds, choose the logical one. The MDebug/MRelease builds are the merged binaries.

important: msvc 6.0 standard install doesn't come with "ml.exe" which is needed to build fte, you can get it from either service pack 5 or 6. or grab it from somewhere i dunno

zlib:
libs/zconf.h
libs/zlib.h
libs/zlib.lib
You will need zlib if you wish to build a version of FTE with png/zip/pk3 support.
If you don't have it, you can hunt out the line '#define AVAIL_ZLIB' in bothdefs.h and disable it.

Ogg Vorbis:
libs/ogg/*
libs/vorbis/*
At the time of writing, ogg vorbis support is not fully functional and is #ifdefed out. You will not need these libraries.
Lack of these files can be indicated by removing any '#define AVAIL_OGGVORBIS' line found in bothdefs.h (if they exist)

lib jpeg:
libs/jpeg.lib
libs/jpeglib.h
libs/jmorecfg.h
libs/jconfig.h
libs/jerror.h
These files are optional and not strictly needed for anything other than screenshots and loading Quake3 textures.
Hunt out and kill '#define AVAIL_JPEGLIB' from bothdefs.h to disable the requirement.
URL pending.

libpng:
libs/libpng.lib
libs/png.h
libs/pngconf.h
These files are for support of png textures and screenshots.
Hunt out and kill '#define AVAIL_PNGLIB' from bothdefs.h to disable the requirement.
URL pending.

DirectX 7 SDK:
libs/dxsdk7/include/*
libs/dxsdk7/lib/*
These are used for the d3d renderer. They are only benefitial in this way.
This feature is normally enabled via an ifdef in the project file. An '#define NODIRECTX' in bothdefs.h will disable all requirements of dx. It is normally only used in the merged binaries.
Without this define, it will expect to find DX5 headers and libraries in your compilers default directories.
You can obtain an uptodate copy of directx from Microsoft's Website.