[AD] Primitives (DirectX) legacy check broken |
[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]
The first thing in prim_directx.c is a function,
is_legacy_card. The comment says that older Intel cards are broken and can't
handle 3 things so some vertex rearrangement is done. It says they don't support
shaders.
Testing on Intel 945, the card does support shaders
(Pixel Shader 2.0), but is_legacy_card checks for PS3.0 (even though everywhere
else we use 2.0) and if 3.0 isn't supported the card is deemed
"legacy".
If I leave this as is, untextured primitives draw
pure white, no matter what color is used. Textured primitives/everything else
draw correctly.
What's interesting is if I return "false" from
is_legacy_card, everything works perfectly fine. The comment mentions
DrawIndexedPrimitiveUP, which I didn't check that it was used but textured
primitives, untextured primitives both draw correctly (al_draw_prim and high
level primitives) if I return false.
Not sure, SiegeLord can you clarify which cards
this is supposed to detect? Intel 945 is a very old chip.
Thanks,
Trent |
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |