Налетай народ на еще одну демочку. Не совсем такую же, но выводит объектов одинаковое кол-во.
вот код ее:
#include "../../sigel/ISigel.h"
void PulseDo(Entity* e)
{
e->Turn(1*e->tagf,0,0);
e->Move(0.3*e->tagf);
}
sGAME
{
InitDemo();
AppTitle("shoots");
Camera cam;
cam.Position(0,0,50);
Surface *shoot_body = new Surface();
shoot_body->MakePulse(4,1,0.25,-2);
Texture *tex = new Texture("v1.bmp");
VWait(0);
int cnt=500;
Entity **shs = new Entity*[500];
for(int i=0;i<cnt;++i)
{
shs[i] = new Entity(shoot_body);
shs[i]->BindTex(tex);
shs[i]->Blend(BM_ADD);
shs[i]->Rotate(rnd(360),rnd(360),0);
shs[i]->Position(rnd(-10,10),rnd(-10,10),rnd(-10,10));
shs[i]->PreProcess(&PulseDo);
}
float dtm=0;
while(!KeyDown(VK_ESCAPE))
{
dtm = GetFrameTime();
//dtm=1;
if(abs(dtm)<3)
{
for(int i=0;i<cnt;++i)
{
shs[i]->tagf=dtm*0.1;
}
}
else
{
for(int i=0;i<cnt;++i)
{
shs[i]->tagf=0.1;
}
}
Render();
Text(GetFPS(),10,10);
Flip();
}
}
вот ссылка на архив с двумя версиями - блицовой и сижеловской, блицовая чуть изменена. тестите сижеловскую в режиме 800х600х32хОКНО ))
http://www.forum.likosoft.ru/attachm...6&d=1217571924