Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.28;
Скачать: CL | DM;

Вниз

Игра типа Worms   Найти похожие ветки 

 
Ricks ©   (2006-03-10 11:19) [0]

Привет всем!
Народ, кто знает, как в таких играх (worm, tanks, итд итп) реализуется ландшафт? И как он потом обрабатывается? Ведь не массив же это ведь, хранить и обрабатывать массив, скажем 640x480 точек, это согласитесь..... :(


 
Nic ©   (2006-03-10 13:31) [1]

Может быть векторная геометрия?


 
Булат Шакиров ©   (2006-03-10 14:00) [2]

http://delphigfx.mastak.ru/2d/004/2d_4.htm
Принцип такой же


 
KreeS ©   (2006-03-10 14:56) [3]

нет,  Worms общет попиксельный


 
Ricks ©   (2006-03-10 18:37) [4]


> Булат Шакиров ©


> Nic ©


не то и не другое!

Действительно, эти ландшафты обсчитываются попиксельно. Но только вопрос как?

А если вспомнить старую досовскую игру "Tank Wars" так там вообще после взрыва КАЖДАЯ точка ландшафта падает!


 
grisme ©   (2006-03-10 18:40) [5]

а зачем хранить ВСЕ, можно хранить только точки крайние-поверхность, по которой червяк ползет.


 
XProger ©   (2006-03-10 19:55) [6]

grisme, пожёг ты землю, появились зазубрины... в итоге имеем кучу геометрии и при этом, многоугольники далеко не всегда будут правильными... ;)

Ricks, что как? Есть "БУМ!!!" всё что в радиусе взрыва - чистится... следовательно и колизий с очищеными местами не будет. А ландшафт можно делить на секции...


 
Ricks ©   (2006-03-10 21:58) [7]

Так вот меня и интересует, как именно определить тот самый "БУМ!!!" и почистить местность вокруг него...
У меня появилась мысль, что местность можно хранить в какой-то картинке типа маски (ч/б), может это поможет?


 
XProger ©   (2006-03-10 22:20) [8]

Мдя...
if pixels[x, y] <> clBlack then
 for j := y - BoomRadius to y + BoomRadius do
   for i := x - BoomRadius to x + BoomRadius do
     if sqrt(sqr(i - x) + sqr(j - y)) <= BoomRadius then
       pixels[i, j] := clBlack;
Самый простой пример, без каких-либо проверок... ;)


 
antonn ©   (2006-03-11 06:57) [9]

XProger ©   (10.03.06 22:20) [8]
scanline рулит :)


 
XProger ©   (2006-03-11 14:48) [10]

antonn, ни то, ни другое не рулит ;) А это - так, пример...


 
Yeg   (2006-03-17 14:53) [11]

У WondeRu был пример на его сайте: www.wonderu.com, вроде. Там на GLScene разрушающийся ландшафт.



Страницы: 1 вся ветка

Текущий архив: 2007.01.28;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.062 c
6-1156601566
Орион
2006-08-26 18:12
2007.01.28
idHTTP.DoRequest и ошибка с конвертацией даты


3-1162813086
Ольга
2006-11-06 14:38
2007.01.28
Возможности Query


15-1167926050
kaZaNoVa
2007-01-04 18:54
2007.01.28
Психология и интернет, реальность и виртуальность.


3-1162996402
pic509
2006-11-08 17:33
2007.01.28
как убрать пароль с базы данных ib5?


2-1168759824
Garacio
2007-01-14 10:30
2007.01.28
запись в один .ini состояния MainForm и Form2