Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > Полезные функции

Полезные функции Выкладываем полезные функции, чтоб не изобретать велосипед заново...

Ответ
 
Опции темы
Старый 05.02.2007, 01:28   #1
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
FillBuffer(buff,width,height,c=0)

Function FillBuffer(buff,width,height,c=0)
	LockBuffer buff
	WritePixelFast 0,0,c,buff
	WritePixelFast 1,0,c,buff
	WritePixelFast 0,1,c,buff
	WritePixelFast 1,1,c,buff
	state=0
	x=2
	y=2
	While x<width
	While y<height
	If state=0
		CopyRect 0,0,x,y,x,0,buff,buff
		x=x*2
		state=1
	Else
		CopyRect 0,0,x,y,0,y,buff,buff
		y=y*2
		state=0
	EndIf
	Wend
	Wend
	UnlockBuffer buff
	Return buff
End Function
быстрое заполнение поверхности одним цветом, у меня 512 на 512 заполнило за 72 мс, в то время как заполнение путем перебора всех пикселей и writepixelfast работало 3913 мсек. на больших поверхностях выигрыш должен быть еще существенние.
p.s. DebugMode включон.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ResizeMesh(Width#,Height#,Depth#,Proporcional%) moka Полезные функции 12 24.03.2007 09:38


Часовой пояс GMT +4, время: 21:12.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com