Rev 5738 | Rev 5962 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5738 | Rev 5761 | ||
---|---|---|---|
Line 160... | Line 160... | ||
160 | PutShadow(x+1,y+h+3,w+1,1,skinned,1); |
160 | PutShadow(x+1,y+h+3,w+1,1,skinned,1); |
161 | } |
161 | } |
Line 162... | Line 162... | ||
162 | 162 | ||
163 | :void GrayScaleImage(dword color_image, w, h) |
163 | :void GrayScaleImage(dword color_image, w, h) |
164 | { |
164 | { |
- | 165 | dword i,gray,to,rr,gg,bb; |
|
165 | dword i,gray,rr,gg,bb; |
166 | to = w*h*3 + color_image; |
166 | for (i = 0; i < w*h*3; i+=3) |
167 | for (i = color_image; i < to; i+=3) |
167 | { |
168 | { |
168 | rr = DSBYTE[i+color_image]; |
169 | rr = DSBYTE[i]; |
169 | gg = DSBYTE[i+1+color_image]; |
170 | gg = DSBYTE[i+1]; |
170 | bb = DSBYTE[i+2+color_image]; |
171 | bb = DSBYTE[i+2]; |
171 | gray = rr*rr; |
172 | gray = rr*rr; |
172 | gray += gg*gg; |
173 | gray += gg*gg; |
173 | gray += bb*bb; |
174 | gray += bb*bb; |
174 | gray = sqrt(gray) / 3; |
175 | gray = sqrt(gray) / 3; |
175 | DSBYTE[i +color_image] = DSBYTE[i+1+color_image] = DSBYTE[i+2+color_image] = gray; |
176 | DSBYTE[i] = DSBYTE[i+1] = DSBYTE[i+2] = gray; |
176 | } |
177 | } |
Line 177... | Line 178... | ||
177 | } |
178 | } |
178 | 179 |