Показать сообщение отдельно
Старый 18.03.2009, 09:16   #30
jimon
 
Сообщений: n/a
Ответ: Глупый вопрос

Randomize
вот исходник метода Paste :
	Rem
	bbdoc: Paste a pixmap
	end rem
	Method Paste( source:TPixmap,x,y )
		For Local h=0 Until source.height
			ConvertPixels source.PixelPtr(0,h),source.format,Self.PixelPtr(x,y+h),Self.format,source.width
		Next
	End Method
а функция ковертации пикселей
Function CopyPixels( in_buf:Byte Ptr,out_buf:Byte Ptr,format,count )
	MemCopy out_buf,in_buf,count*BytesPerPixel[format]
End Function

Function ConvertPixels( in_buf:Byte Ptr,in_format,out_buf:Byte Ptr,out_format,count )
	If in_format=out_format
		CopyPixels in_buf,out_buf,out_format,count
	Else If in_format=PF_STDFORMAT
		ConvertPixelsFromStdFormat in_buf,out_buf,out_format,count
	Else If out_format=PF_STDFORMAT
		ConvertPixelsToStdFormat in_buf,out_buf,in_format,count
	Else
		Local tmp_buf:Int[count]
		ConvertPixelsToStdFormat in_buf,tmp_buf,in_format,count
		ConvertPixelsFromStdFormat tmp_buf,out_buf,out_format,count
	EndIf
End Function
это означает некоторые вещи, к примеру то что если у конечного пиксмапа не будет альфа канала то конечно при копировании альфа канал пропадёт и еще означает то что картинка не рисуется поверх, а тупо заменяются пиксели

идинственый нормальный способ сделать то что ты хочешь это рендер в текстуру, тогда наложения картинок произойдет прямо в видеокарте и ничего делать не надо
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Randomize (18.03.2009)