X-Git-Url: https://jasonwoof.com/gitweb/?p=vor.git;a=blobdiff_plain;f=shape.c;h=92729e929f86d7cb6a80f29b5f835985918a2a68;hp=f45715866b11a44473c9a788f4a61fe591286e7d;hb=a77978e0c9bc91ea3d7b192ce136621e78d4ec5b;hpb=30498ebe775df3854f28946b1373da948bd190a3 diff --git a/shape.c b/shape.c index f457158..92729e9 100644 --- a/shape.c +++ b/shape.c @@ -108,3 +108,14 @@ collide(int xdiff, int ydiff, struct shape *r, struct shape *s) if(xov == 0 || yov == 0) return 0; // bboxes hit? else return mask_collide(xov, yov, r, s); } + +int +pixel_collide(unsigned int xoff, unsigned int yoff, struct shape *r) +{ + uint32_t pmask; + + if(xoff >= r->w || yoff >= r->h) return 0; + + pmask = 1 << (32 - (xoff&0x1f)); + return r->mask[(yoff*r->mw) + (xoff>>5)] & pmask; +}