Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Где можно достать алгоритм движка для игры? [Delphi, Windows]


andrM ©   (2003-10-24 16:51:00) 

Простейшая игра гонки.
Дорога перемещается по экрану согласно карте.
Как связать карту с местоположением игрока и отображение видимого
пространства согласно карте?
Есть ли готовые алгоритмы?


AndreyM   (2003-11-03 10:54:00) [1]

Для Sapersky:Спасибо,что ответил.
А есть ли готовый алгоритм или текст программы,которые описывают
такое движение?
Ты говоришь:чем дальше данная точка (линия) от игрока, тем меньше ширина.
А по какому закону происходит уменьшение?
Есть точка наблюдателя (x,y).Расстояние до появляющейся машины(dM).Расстояние до угла поворота дороги(dD)
Как найти (xED,yED)-координаты точки на экране для точки на дороге и машины (xEM,yEM).Плюс надо еще менять высоту появляющейся машины в зависимости от расстояния до нее!
Что скажешь?


Sapersky   (2003-10-31 18:08:00) [2]

Как сжимать видимую часть по законам перспективы?
Представь - ты едешь в авто,а дорога где то там на горизонте сходится в одну точку?


Тогда дорогу лучше полигональную сделать. Т.е. представлять как набор вершин, или поперечных оси дороги линий; перспективное искажение - чем дальше данная точка (линия) от игрока, тем меньше ширина. Для красоты наложить текстуру, программно или аппаратно.
Только с подъёмами/спусками могут быть проблемы в плане корректной видимости. Нужно сортировать по высоте, по близости к наблюдателю или ещё как-то.
Или сделать честное 3D.


AndreyM   (2003-10-31 11:47:00) [3]

Для TButton:
-->Философский ответ Дата-Батона.А по конкретней можно?
Реально кто-то занимался подобными вещами?
Интересует механизм реализации,математика.
А то получается болтовня да и только.
Неужели на уважаемом мною форуме нет специалистов?
Только батоны да канвасы одни что ли?


TButton   (2003-10-30 18:30:00) [4]

гоночки а-ля рип с денди... или RoadRash 1-2


AndreyM   (2003-10-30 09:47:00) [5]

А как быть с перспективой?
Как сжимать видимую часть по законам перспективы?
Представь - ты едешь в авто,а дорога где то там на горизонте сходится в одну точку?
Как это сделать?


VitGun   (2003-10-29 11:35:00) [6]

Т.е. как я понял все таки изометрия. Тогда тебе нужно перед выводом спрайта проверять не выходит ли он за границы экрана/видимой области, если да то не рисовать и наоборот в 3D графике это называеться Frustum Culling(отсечение невидимых граней).


AndreyM   (2003-10-27 09:37:00) [7]

Спасибо всем кто ответил!
У меня инет оборвался - я опять на форуме.
Вопрос в продолжение темы.
Сдвижка карты это хорошо,но как быть с перспективой?
Т.е. как на экране отоброжать видимую часть карты???
Ее же надо как то сжимать,а не просто двигать.
Поэтому я написал что это не совсем 2D а нечто среднее.


VitGun   (2003-10-26 21:30:00) [8]

Если есть алгоритм,тогда и API выбрать можно.

:)) А что есть разница? Алгоритмы - они API-независимые, все будет зависить от тебя.

Скорее это 2D++ :)
Это типа щас так изометрию называют?
Хотя если серьезно для 2D, то DirectX, в OpenGL как-то беспонтово с 2D работать....


Asteroid   (2003-10-25 03:18:00) [9]

Если у тебя игрок в позиции (x, y), сдвигаешь карту на (-x, -y) и еще на полэкрана в обе стороны (чтобы игрок был в центре экрана).


andrM   (2003-10-24 17:40:00) [10]

Меня больше интересует принцип построения,взаимодействие обьектов,передача данных.
1)Скорее это 2D++ :)
2)Если есть алгоритм,тогда и API выбрать можно.


VitGun   (2003-10-24 17:23:00) [11]

Движок - это не алгоритм. Проще говоря движок - это набор классов отвечающий за вывод графики(графический движок). Также в нем реализуеться физика и пр...
Теперь вопросы:
1. Тип игры 2D\3D?
2. Какой API используешь (Opengl\DirectX)?


Наверх

Титульная страница Поиск, карта сайта Написать письмо