Mercurial > hg > dmlib
changeset 267:509d8c72d774
Add Z checks.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 10 Oct 2012 14:08:12 +0300 |
parents | 4ad2b9739c4a |
children | f07ddc4982c6 |
files | dmq3d.c |
diffstat | 1 files changed, 5 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/dmq3d.c Wed Oct 10 13:30:07 2012 +0300 +++ b/dmq3d.c Wed Oct 10 14:08:12 2012 +0300 @@ -117,6 +117,9 @@ dm_vector_add(&pv[0], pos); dm_vector_add(&pv[1], pos); + if (pv[0].z <= 0 && pv[1].z <= 0) + continue; + if (line->type > 1) dmDrawLineSpec(screen, dmPX(cx, pv[0]), dmPY(cy, pv[0]), dmPX(cx, pv[1]), dmPY(cy, pv[1]), lcol, fbmap); else @@ -130,6 +133,8 @@ DMVector pv; dm_vector_mul_by_mat(&pv, &model->vertices[sprite->v], mat); dm_vector_add(&pv, pos); + if (pv.z <= 0) + continue; dmUnscaledBlitSurface32to32Transparent(bmp->img, dmPX(cx, pv), dmPY(cy, pv), screen); } }