Показать сообщение отдельно
Старый 23.02.2010, 01:21
dixlofos вне форума Посмотреть профиль Отправить личное сообщение для dixlofos Найти все сообщения от dixlofos
  № 9  
Ответить с цитированием
dixlofos
 
Аватар для dixlofos

Регистрация: Apr 2009
Сообщений: 167
Записей в блоге: 1
ах вот оно как на самом -то деле. Тобишь lock и unlock влияют на производительность только в том случае если битмапдата меняеться в "потом". Я правильно понял?

Вот кстати, если интересующимся интересно код "2го случая", где битмап дата меняеться на 5м кадре. (если закаментить unlock то перерисовки не случиться!)
Код AS3:
var bitmapData = new BitmapData(200,200,true,0xFFFF0000); 
var bitmap:Bitmap = new Bitmap(bitmapData);
addChild(bitmap);
bitmapData.lock();
 
var ii:int = 0;
addEventListener(Event.ENTER_FRAME, ef);
 
function ef(e:Event)
{
	ii++;
	if (ii == 5)
	{
		f1();
		ii++;
	}
}
function f1()
{
for (var i = 0; i < 200; i++)
{
	for (var j = 0; j < 200; j++)
	{
		bitmapData.setPixel32(j,i, Math.floor(Math.random()*0xFFFFFFFF));
	}
}
}
bitmapData.unlock();