From what I understand, Enemy Territory is based on the Quake 3 engine, and the ET source code has been released… so why hasn’t someone made and released some Athlon-optimized ET speed dlls like they did with Q3? Q3 players were seeing up to a 25% boost in framerates after installing those… it was amazing!
I know that the guy who made the Q3 dlls said he was planning on (possibly) eventually making some for RTCW, but his site appears to have gone offline and I havn’t heard anything since.
Could anyone else do this? I know the whole community would appreciate it
The only difference was the floating point precision that the DLLs used was different to the QVM’s, other than that, it was all a fake fad. ET already uses DLLs, so does RTCW, hence why he gave up before being humiliated probably, i assume.
I’m not quite sure what you mean. I ran benchmarks with Quake3 before and after, and there was a huge fps boost. I personally experienced in the range of a 20-25% fps increase. Many others posted similar results. Why would you call them a “fake fad”?
Certainly ET and RTCW already use DLLs. Q3 “already” used DLLs prior to the tweaked versions, but that didn’t stop this guy from producing a big chunk of extra fps with his Athlon-optimized versions. He made versions for Quake III, Star Trek: Elite Force (which uses the Q3 engine) and a 3d program called POVRay. He mentioned that he was considering creating versions for Soldier of Fortune and RTCW (after getting many requests), but was limited due to time constraints.
FYI, the following is a brief description he wrote of what the DLLs do:
[i]"Quake3 (even with an Athlon XP) forces AMD chips to use 3DNow, not SSE. Little do people know the 3DNow! code is completely broken in Quake3. It does not help at ALL.
The Pentium 3 and 4 chips however are both detected as “Pentium 3” chips, which automatically uses SSE which DOES work in Quake3 and gives a significant FPS boost. These DLLs don’t enable SSE but do help with Athlons… and if SSE was to ever be enabled in Quake3 for Athlon processors they would blow Pentium 4 chips out of the water even more. In the tests I ran a P4-2.53 @ 3.32GHz, 175/700fsb lost to a “stock” Athlon XP 2700+(2166MHz, 166fsb) using these dlls…"[/i]
I didn’t find any previous posts on this subject that convinced me this wouldn’t work in ET. What in particular makes this impossible with ET? Where did you get your info?
Neither the Quake3 engine, or our modified version of it, or RTCW’s version of it actually use SSE, SSE2, 3dNow, or any or the other extended chipset features supplied by the various classes of processors around.
All they do is detect which chip you have and ( potentially ) what features it supports, none of the code actually takes advantage of it.
Using dlls “optimised” for Athlon chips is unlikely to gain much benefit over the stock dlls, as most of the really heavy maths is done in-engine, which cannot be sped up by the dlls obviously, and certainly wouldn’t allow you on most servers.
The main gain from using the quake3 versions was due to actually just using the dlls full stop, quake3 does NOT use dlls natively, it uses QVMs, which obviously aren’t quite as fast as they have an extra layer of abstraction.
Sorry, i’m not sure if that phrase translated properly, all it meant was, “a standard quake 3 install does not use dlls at all, most of the gain seen was just from using the dlls over the QVMs”. Since ET already uses dlls, switching to using dlls would obviously have no effect, since it already uses them However, using an optimised set of dlls you might see some small gain in performance, but i doubt it would be all that significant for most people. Having the engine itself utilise SSE effectively could see a larger improvement, but that is obviously beyond the scope of most people.
I think he wants another patch that includes SSE/SSE2/3Dnow…
Will D3 use native DLLs or QVMs? I seem to recall Carmack talking about the benefits of QVM (like cross-platform compatibility and security), but at the end of the day all everyone cares about is performance.