On 29 November 2012 09:28, Yasir I. Al-Dosary - zgzg2020™
<yasiraldos...@yahoo.com> wrote:
> Hi again,
> I tried to look for documentation online to see what ASM files are used for
> but couldn't find any.
> Does anybody know?

Historical background

Quake1 had at least a small part of it in assembler. Such thing made
sense in the MS-DOS days where how the assembler look could have a big
impact on the inners part of the rendering code. To this day Quake1 is
still CPU bounded, because so much of the rendering is CPU-side. So
you want the CPU part to be as fast as possible.

Quake2 , Quake 3,...     have probably (I have not looked in the code)
more stuff done GPU-side, with stuff like shaders and OpenGL
extensions.   The priority is to have as less CPU-side stuff has
posible, so the biggest part of the game is rendered in the GPU (that
is fast, and have the textures next to it.... and is separate from the
CPU by the bus, that is a bottleneck).
Assembler code is unlikeable because it poison portability (it need to
be rewritten to be ported to other CPU's, like ARM) and because is
hard to maintain if it ever have bugs (you need somebody that want to
get his hands dirty in assembler), but assembler gurus claim to get
speedups by writing some parts in assembler.   The Mayans tolds us
about it, too.

/just kidding



--
--
ℱin del ℳensaje.
_______________________________________________
ioquake3 mailing list
ioquake3@lists.ioquake.org
http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org
By sending this message I agree to love ioquake3 and libsdl.

Reply via email to