Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
crezd Гость
|
Добавлено: Вс Май 16 2004 13:30 Заголовок сообщения: Срочно....очень важно (c/c++) |
|
|
Пишу игру на с....вот не знаю как сделать передвижение экрана...например как в марио,как это реализовать? |
|
Вернуться к началу |
|
|
droopy Гость
|
Добавлено: Вс Май 16 2004 14:28 Заголовок сообщения: |
|
|
под что пищещь?
можно нарисовать картину затем затем следовать пометкам какую
часть картины нарисовать на экране. это теретически. практически
не реализовывал. |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Вс Май 16 2004 15:35 Заголовок сообщения: |
|
|
Если очень беспокоишься за скорость, то копируешь старое изображение (статичное, сохраненное в буффере), потом вставляешь его со смещением, а край экрана дорисовываешь спрайтами. После этого опять сохраняешь в статичный буффер, накладываешь живность, и все собранное уже выносишь прямо на экран.
А вообще, лучше фон отдельно перерисовывать от близких предметов, причем перемещать с другой скоростью (для достижения псевдо 3D эффекта, как в MoorHuhn) |
|
Вернуться к началу |
|
|
Гость
|
Добавлено: Вс Май 16 2004 15:58 Заголовок сообщения: |
|
|
GREA
тежело...может где нить статейка есть? или приведи пример(кусок кода) |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Вс Май 16 2004 16:20 Заголовок сообщения: |
|
|
Обрисуй инструментарий. И краткое описание игрушки (если не секрет. Хотя бы, что должно на экране быть |
|
Вернуться к началу |
|
|
Гость
|
Добавлено: Вс Май 16 2004 16:41 Заголовок сообщения: |
|
|
320x200 256 color
человечков нарисовал.....фон...
работает так
Код: | void main(void)
{
randomize();
Init();
Draw();
InitISR();
for(j=0;j<3;j++)
for (i=0;i<2;i++)
heroes[j].ManFrameN[i]=heroes[j].ManOgenN[i]->Next;
LoadPage (VGA,VPage2);
FadeIn();
while (!kbhit())
{
if (ArrowsStatus&RIGHT)
{
xy_fr[frame][buka]=0;
xy_fr[x_pos][buka]+=14;
}
if (ArrowsStatus&LEFT)
{
xy_fr[frame][buka]=1;
xy_fr[x_pos][buka]-=14;
}
if (ArrowsStatus&UP) xy_fr[y_pos][buka]-=14;
if (ArrowsStatus&DOWN) xy_fr[y_pos][buka]+=14;
check_frame();
LoadPage (VPage1,VPage2);
for (j=0;j<3;j++)
DrawBMP (&(heroes[j].ManFrameN[xy_fr[frame][j]]->Pic),xy_fr[x_pos][j],xy_fr[y_pos][j],VPage1);
DrawEmptyRect (0,0,300,180,5,VPage1);
tfos();
LoadPage (VGA,VPage1);
delay(50);
}
Close();
} |
ферштейн?
упревление человечком....он бегает прыгает...можно только в перед/назад......копия Марио |
|
Вернуться к началу |
|
|
|