PMG http://forum.pmg.org.ru/ |
|
Управлени персонажем(?-) http://forum.pmg.org.ru/viewtopic.php?f=4&t=7950 |
Страница 1 из 1 |
Автор: | TAPAKAHATOP [ 25 мар 2010 18:50 ] |
Заголовок сообщения: | Управлени персонажем(?-) |
Собираюсь делать маленькую игрушку на ОГЛ. До этого работал с готовыми движками ДХ где все функции управления уже написаны, остается тока ими пользоваться. Необходимо сделать управление персонажем без привязку к платформе.(желательно чтобы одинакового неплохо работало как в Линуксе(Разработка планируется на нем), так и в Винде). Что посоветуете почитать, или что расскажите сами на эту тему. |
Автор: | _Dok_ [ 26 мар 2010 08:30 ] |
Заголовок сообщения: | Re: Управлени персонажем(?-) |
А что за игру собираешься делать? жанр? От типа жанра и зависит управление, что именно тебе необходимо. В принципе управление персонажем - это изменение координат объекта (в данном случае персонажа), "ответная реакция" на нажатие кнопки на клавиатуре. Для примера выполнения думаю можно разобраться с исходниками Quake3, из литературы - много всяких книг, конкретно подсказать не могу. Ты собираешься писать на чистом ОГЛ или использовать какие готовые движки? |
Автор: | MagicWolf [ 26 мар 2010 09:45 ] |
Заголовок сообщения: | Re: Управлени персонажем(?-) |
Какие функции управления? Чем? Если надо есть готовые движки и на OGL. Или задача самому написать? |
Автор: | TAPAKAHATOP [ 26 мар 2010 10:56 ] |
Заголовок сообщения: | Re: Управлени персонажем(?-) |
_Dok_ писал(а): А что за игру собираешься делать? жанр? От типа жанра и зависит управление, что именно тебе необходимо. В принципе управление персонажем - это изменение координат объекта (в данном случае персонажа), "ответная реакция" на нажатие кнопки на клавиатуре. Для примера выполнения думаю можно разобраться с исходниками Quake3, из литературы - много всяких книг, конкретно подсказать не могу. Ты собираешься писать на чистом ОГЛ или использовать какие готовые движки? MagicWolf писал(а): Какие функции управления? Чем? Если надо есть готовые движки и на OGL. Или задача самому написать? Жанра как такого нет, простая пока что двухмерная бродилка-срелялка. Готовые движки не нада, так как смысл всего самообучение, а на готовом обучатся не очень эффективно на мой взгляд. Функцие управление - кнопку нажал персонаж прыгнул, или отошёл. простейшее так сказать управление. |
Автор: | _Dok_ [ 26 мар 2010 11:20 ] |
Заголовок сообщения: | Re: Управлени персонажем(?-) |
TAPAKAHATOP писал(а): Функцие управление - кнопку нажал персонаж прыгнул, или отошёл. простейшее так сказать управление. Функции управления состоят из двух частей: 1) обрабатываем, какая кнопка на клавиатуре нажата; 2) что делаем после того как нажали на ту или другую кнопку. Ну, вот и сделай обработчик кнопок с клавиатуры. А что будет происходить после нажатия - это опять же как тебе надо так и решишь. Надо чтобы персонаж переместился вперёд при нажатии (пример): MSG msg; while(GetMessage(&msg, NULL, 0, 0)) { // вперёд if(msg.wParam == 'W') Hero_Position.X += 10; // назад if(msg.wParam == 'S') Hero_Position.X -= 10; TranslateMessage(&msg); DispatchMessage(&msg); } и т.д.,и т.п. |
Автор: | TAPAKAHATOP [ 26 мар 2010 15:04 ] |
Заголовок сообщения: | Re: Управлени персонажем(?-) |
_Dok_ писал(а): TAPAKAHATOP писал(а): Функцие управление - кнопку нажал персонаж прыгнул, или отошёл. простейшее так сказать управление. Функции управления состоят из двух частей: 1) обрабатываем, какая кнопка на клавиатуре нажата; 2) что делаем после того как нажали на ту или другую кнопку. Ну, вот и сделай обработчик кнопок с клавиатуры. А что будет происходить после нажатия - это опять же как тебе надо так и решишь. Надо чтобы персонаж переместился вперёд при нажатии (пример): MSG msg; while(GetMessage(&msg, NULL, 0, 0)) { // вперёд if(msg.wParam == 'W') Hero_Position.X += 10; // назад if(msg.wParam == 'S') Hero_Position.X -= 10; TranslateMessage(&msg); DispatchMessage(&msg); } и т.д.,и т.п. Я так понял пример кода по венду? а есть что нить подобное но чтобы не под венду |
Автор: | _Dok_ [ 26 мар 2010 16:17 ] |
Заголовок сообщения: | Re: Управлени персонажем(?-) |
Да код под винду. Под линукс подсказать не могу, не было опыта программирования под него. И это не самый лучший вариант, здесь же обрабатываются сообщения винды, что работает медленнее, чем, например, использование DirectInput. Ты под линукс то программировал? вот самый простой обработчик сообщений с клавиатуры возьми для начала и им пользуйся (какой нибудь проверку на форме KeyPress, KeyUP, ну там же есть своё, я просто не знаю линукс). |
Автор: | MagicWolf [ 27 мар 2010 11:26 ] |
Заголовок сообщения: | Re: Управлени персонажем(?-) |
Принципиально ничем не отличается. Надо так или иначе узнать (с помощью функций уникальных для каждой ОС) нажата или отжата клавиша клавы или мыши и соответствующим образом среагировать. На linux не писал обработчик клавы, но не думаю, что там сложнее, чем в win. Надо книгу по linux где бы эти функции были описаны. Или другой вариант посмотреть исходники sdl... |
Автор: | MagicWolf [ 29 мар 2010 18:51 ] |
Заголовок сообщения: | Re: Управлени персонажем(?-) |
Вот ebook не давно появилась подходящая: http://gigapedia.com/items:links?id=425632 Cross Platform Game Development: Make PC Games for Windows, Linux and Mac (Wordware Game Developer's Library) |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |