bebabo
|
|
« : 02-05-2007 08:14 » |
|
посредством DirectX вывожу на экран .png файл и хочу получить из этого файла значение прозрачности пиксела, на который указывает курсор. изображение хранится в памяти как LPDIRECTDRAWSURFACE. получаю значение позиции курсора (x,y). вычитаю из этих значений х,y картинки (левый верх. угол) - получаю таким образом позицию курсора "в картинке" _x, _y. далее делаю следующее
ulong* aSrcPtr = mImage->mNativeAlphaData; ulong val = *(aSrcPtr + (_x * _y)); ulong Alpha = val >> 24;
в ulong* mNativeAlphaData хранится информация о прозрачности.
работает не совсем так как мне хотелось бы. частенько при попадании в совершенно прозрачную область выдает не нулевые значения. подскажите, в чем здесь ошибка?
|