Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Вниз

Принцип игры Герои 3.   Найти похожие ветки 

 
Galiaf ©   (2005-10-23 22:00) [0]

Мне стало интересно как сделана игра Герои 3, и вообще в играх как используются например клики по предметам число которых достигает огромнрго количества, я раньше думал что в 2d играх используются image но что-то мой разум начал спорить со мной, обясните кто, а.


 
Кефир87 ©   (2005-10-23 22:03) [1]

Ух... Ну это...

if(cursor.x>object[i].x-10)and(cursor.x<object[i].x+10).... then
object[i].selected := true;


Сомневаюсь что-то кто-то ответит конкретнее 8)
А про TImage и прочую лабуду вообще забудь!


 
PAVIA ©   (2005-10-23 22:20) [2]

В 2D играх не используют компоненты image. Не считая игр начинающих.
Обычно используют DirectX, OpenGl, GDI. Или их надстройки для работы с Delphi. Принцип у них один и тотже. Бирут картинку, чаще всего TBitmap или другом формате. И ресуют ее на некоторой поверхности, чаще всего это сама форма.
Для того чтобы определить, какую картинку выводить и по какой из них кликнули. Использую массивы. Вычисление по какой картинки щелкнули происходит просто бируться координаты мыши относительно начала формы/экрана переводят из относительных координат в реальные.Путем вычетания позиции видимой облости.
Далее делят на размер клетки получают позицию в массиве. Вот впринципи и все.


 
Galiaf ©   (2005-10-23 22:27) [3]

я конечно тот самый, начинающий, и ничего  не понимаю в ogl и т.п., но принцип я понял, спасибо, за ясное обьяснение.


 
XProger ©   (2005-10-24 14:03) [4]

Galiaf, если число объектов действительно огромно, то строят QuadTree (или вариации)  по карте. Т.е. делят карту на ячейка в которые в свою очередь делятся на ещё меньшие ячейки и т.д.
В итоге каждая "нижняя" ячейка будет хранить указатели на объекты в ней находящиеся, следовательно такой метод отбросит просчёт явно не попадающих под курсор объектов :)


 
Кефир87 ©   (2005-10-24 20:50) [5]


> XProger ©   (24.10.05 14:03) [4]

Это ему еще рано...


 
Galiaf ©   (2005-10-24 22:01) [6]

спешу знать :)


 
Zer0 ©   (2005-10-28 02:40) [7]

наф квад? тогда уш проще rb(красно-черное)- или kd- дерево.

еще проще помещать предметы на тайлы карты, и определять тайл под мышкой.


 
Bogdan1024 ©   (2005-10-29 00:35) [8]

В интернете полно комманд (с двумя я даже частично знаком), которые делают аддоны на герои, уж они-то 100% знают как сделаны герои, спрашивай у них.


 
Брат П   (2005-10-29 03:00) [9]


> Galiaf ©   (23.10.05 22:00)
>
> Мне стало интересно как сделана игра Герои 3, и вообще в
> играх как используются например клики по предметам число
> которых достигает огромнрго количества, я раньше думал что
> в 2d играх используются image но что-то мой разум начал
> спорить со мной, обясните кто, а.


На все имджи вешают один и тот же обработчик. А определить по какому именно имеджу кликнули можно по (Sender as TImage).Tag .


 
Denis_AC   (2005-10-29 18:58) [10]


> На все имджи вешают один и тот же обработчик. А определить
> по какому именно имеджу кликнули можно по (Sender as TImage).
> Tag .

LOL !!!!


 
Брат П   (2005-10-30 04:20) [11]


> Denis_AC   (29.10.05 18:58) [10]
> LOL !!!!


А чего ?


 
XProger ©   (2005-10-30 14:41) [12]

Брат П, Люди писавшие героев ещё школы не окончили по-вашему? ;)


 
Брат П   (2005-10-31 01:37) [13]


> XProger ©   (30.10.05 14:41) [12]
>
> Брат П, Люди писавшие героев ещё школы не окончили по-вашему?
>  ;)


Причём тут какие то Герои ?
Человек спросил как использовать имедж, я ответил. Что ещё ?



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

Форум: "Игры";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.017 c
9-1130771485
Finsternis
2005-10-31 18:11
2006.05.28
Прошу помощи у специалистов


2-1147260862
daimyo
2006-05-10 15:34
2006.05.28
DBMS_SQL


2-1147424074
max32
2006-05-12 12:54
2006.05.28
delfi------->msword


6-1138795143
Phoenix9000
2006-02-01 14:59
2006.05.28
Удаление и копирование файлов на сетевой ресурс


2-1146835049
AlexanderMS
2006-05-05 17:17
2006.05.28
Всплывающая подсказка в ListBox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский