Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.08.2009, 23:36   #1
ZotaC
Форумчанин
 
Аватар для ZotaC
 
Регистрация: 25.06.2009
Сообщений: 163
Лампочка Игровые движки

Я давно ловлю себя на мысли о том, что не могу понять, что же представляют из себя игровые движки. Я читал об этом в интернете, но полного понимания в данном вопросе так и не достиг. Ведь, насколько я знаю, игровые движки отделяются в отельную категорию от всего остального игрового кода. Даже, более того, сами они подразделяются на несколько видов - Графический, Физический, Звуковой (кое-кто даже предлагал Химический, но это уже совсем другая история).

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

Вообще я представляю себе написание движка как отдельной части игры, никак с ней не связанной, то есть связывание идет впоследствии с уже готовым движком, а до этого он пишется безо всяких намеков на саму игру. Даже, более того, каждый вид лвижка пишется отдельно.

У кого есть какие идеи по данному поводу? Может быть, кто-либо поделится какими-нибудь интересными ссылками или напишет свои мысли прямо в теме - буду очень признателен за это. Но попрошу больше внимания уделять движкам 2D-игр, потому что они, судя по всему, проще, а сам я никакого опыта в написании движков еще не имел, хотя бы потому, что не осознаю, что это такое. Короче, любые мысли по этому поводу очень помогли бы мне. Заранее спасибо.
ZotaC вне форума Ответить с цитированием
Старый 24.08.2009, 00:26   #2
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Графический движок - это система, в которой распределены процедуры и функции, отвечающие за инициализацию графических форматов, загрузку обработку и вывод на экран разнообразных графических данных. Что это значит? ...это значит, что графический движок имея на входе ряд данных, например, объект, его тип, его координаты, его состояние и мн. др. рисует все что вам нужно увидеть на экране.

Физический движок - это система, манипулирующая абстрактными данными (системными, нам не видимыми, и не понятными без преобразования), задающая скелет и динамику игры. Т.е. чтобы что-то в игре двигалось, изменялось, рассчитывалось, появлялось, исчезало, нужно это все прописать в функциях и процедурах.

Звуковой движок - аналогично предыдущим, отвечает за загрузку, обработку и вывод звука с нужными параметрами, например, канальным распределением, по уровню громкости, с приложенными спецэффектами и пр.

Игровой движок - это система из перечисленных выше трех движков, т.е. полный набор процедур и функций, необходимых для создания игры, плюс удобный инструмент для оперативного создания и настраивания всех необходимых ресурсов.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 24.08.2009, 00:36   #3
ZotaC
Форумчанин
 
Аватар для ZotaC
 
Регистрация: 25.06.2009
Сообщений: 163
По умолчанию

А есть ли какие-нибудь примеры самых простых графических движков для 2D-игр? Я не говорю про более сложные, но что-то простое, безо всяких навороченных эффектов, с открытым исходным кодом.
ZotaC вне форума Ответить с цитированием
Старый 24.08.2009, 00:54   #4
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

С конкретными названиями, и тем более какой лучше для новичка не помогу, ...но можете дождаться ответа знающего человека, кому это все нужно было. Я давно пользовал Blitz Basic, он и простенькое 3D может. Пока наберите в поисковике "2D движок выбор".

Если вам нужен графический движок для Delphi, то это скорей всего будет модуль или dll библиотека, ...такие в темах проскальзывали, некоторые пишут самостоятельно, ...пусть отзовутся.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его

Последний раз редактировалось Beermonza; 24.08.2009 в 00:57.
Beermonza вне форума Ответить с цитированием
Старый 24.08.2009, 10:01   #5
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Я использую OmegaEngine(графический движок)+chipmink(физический движок)= http://www.programmersforum.ru/showthread.php?t=58946 . Возможности не очень богатые но мне хватает: быстрая инициализация в собственное и свое(для редакторов) окно, вывод примитивов, спрайтов, тайлов, множество флагов, небольшой набор эффектов (например Bloom, к тому же эффекты можно делать самому), ResolutionDependence и поддержка камер. Если не хватает функционала можно писать прям в коде игры на OpenGL (или DX). Самих движков огромное множество, поискать не составит труда.
Графический движок это что-то типа оболочки для графичесой системы ( OpenGL,DX...), набор заранее созданных инструментов для создания графики для игры (или чего еще).
Вадим Буренков вне форума Ответить с цитированием
Старый 24.08.2009, 10:15   #6
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

При использовании спрайтов в проектах заметил, что для организации графики движения приходится применять одинаковые процедуры.Тогда я выделил эти методы в отдельный модуль. Получился практически графический движок для работы со спрайтами.Модуль во вложении.Там все довольно просто и подробно закоментировано.
Модуль достаточно прикрепить к проекту и прописать в uses.
Пример использования в простейшем варианте:
Код:
// используем глобальную переменную N_kadr
  var  N_kadr : byte;
  procedure TForm1.FormCreate(Sender: TObject);
begin
 // инициализация графического фона
InitFon(3,2,'Fon1_1');
  LoadFon(0,0,'Fon1_1');
  LoadFon(1024,0,'Fon2_1');
  LoadFon(2048,0,'Fon3_1');
  LoadFon(0,712,'Fon4_1');
  LoadFon(1024,712,'Fon5_1');
  LoadFon(2048,712,'Fon6_1');
  InitBuff;
end;
 procedure Move_sprite(dx,dy: integer; N_stroka: byte);
  // работа со спрайтами
begin
  N_kadrS:= InitSprite('gosha6',6,2,N_stroka,N_kadrS);
  LoadBuff(x,y,x + dx,y + dy,0);
  Form1.Canvas.Draw(xf,yf,Buffer);
end;
Вложения
Тип файла: rar SpriteModul.rar (2.6 Кб, 25 просмотров)
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума Ответить с цитированием
Старый 24.08.2009, 11:06   #7
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Где скачать OmegaEngine в гугли юзал все ссылки битые.
VintProg вне форума Ответить с цитированием
Старый 24.08.2009, 16:24   #8
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию

зайди на http://www.isadateam.com/ Это сайт разработчиков омеги. Я тоже сейчас этот движок юзаю, может скоро выложу наработки
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Старый 24.08.2009, 21:31   #9
0nni
Форумчанин
 
Аватар для 0nni
 
Регистрация: 24.07.2008
Сообщений: 279
По умолчанию

А вот мой недоделанный 2D движок с двумя примерам.
Сам движок выполнен в виде dll (без исходников) + заголовочный файл к нему.
Создание окна, загрузка изображений, рисование, все делается минимум вызовов.
Lapage.zip
Сказал и загрустил от бесспорности своей правоты.
0nni вне форума Ответить с цитированием
Старый 25.08.2009, 09:47   #10
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Цитата:
А вот мой недоделанный 2D движок с двумя примерам.
Интересный движок. Он на OGL сделан?
Вадим Буренков вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Граф. движки для начинающих. ЗА и ПРОТИВ. Ulex Свободное общение 2 29.06.2009 23:38
Звуковые движки Яр|/||< (^_^) Мультимедиа в Delphi 2 23.06.2009 00:49
Игровые классы окна rangel Общие вопросы Delphi 4 27.05.2009 18:21
Игровые движки. blackstersl Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 24.03.2009 16:02
Сетевые движки delphin100 Работа с сетью в Delphi 4 26.05.2008 18:51