Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I decided to write my first Quake source port, but I'm a bit confused.

There are 2 rasterization code files: d_draw.s and d_draw16.s.

The first is, as John Carmack said, horizontal 8-bpp span-drawing code. The second is the same, but with 16-pixel subdivision.

Which is more preferable for full-color 320x200 source port?

Do they both feature non-power-of-2 texture distortion?

GL code is not an option, because the target system doesn't feature 3D API.

share|improve this question
Thank you! Could you rewrite this in answers so I can give you some more points and close this question? – Triang3l Feb 29 '12 at 7:36
up vote 1 down vote accepted

According to here

For maximum speed, perspective correction is performed only every 16 pixels. This is normally fine, but it is possible to see texture ripples in surfaces that are viewed at sharp angles. For more precise texture mapping, set the console variable d_subdiv16 to 0. Doing this will result in somewhat slower performance, however, and the difference in visual quality will not normally be noticeable.

So I'm assuming for maximum visual quality you want d_draw and not d_draw16.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.