5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
1

Создание игры "Battle City" (танчики) на BGE

26.02.2015, 15:44. Показов 15499. Ответов 56
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет!

Хочу написать танчики на BGE с целью лучше узнать API движка. До применения API и Python пока далеко. Проблема в самом начале: не могу придумать, как сделать анимацию движения танка на спрайтах. Могу наложить текстуру и двигать площадку, а вот как менять текстуры и организовать удобно всё это - ума не приложу. Хочу делать сначала на Logic Bricks, а потом писать на Python, но только то, что действительно проще на нём (или только эта возможность и есть)

Я записал небольшое видео. Мне кажется, уже на этапе, показанном в видео, много ошибок. Посмотрите, пожалуйста: Battle City in BGE. Attempt number 1
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.02.2015, 15:44
Ответы с готовыми решениями:

Как написать Battle city (танчики)
Задали писать игру Battle city (танчики), сам не осиливаю помоги кто чем может.очень нужно

Танчики (battle city) в windows forms
Такая проблема: нужно сделать курсач в формсах. Выбрал создание танчиков, но вообще ничего не могу...

Есть библиотеки для создания 2D игр? Таких как танчики (Battle City) или Марио?
Есть библиотеки для создания 2D игр? Таких как танчики (Battle City) или Марио?

Игра Battle City
Ребята помогите мне для кyрсовой надо написать Battle City (танчики) на C#. Меня интересyeт где...

Аналог Battle City
Я делаю в SDL2 аналог battlecity и немного запоролся. 1. я запутался в стенах. т.е. я не могу,...

56
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
20.08.2015, 21:41  [ТС] 21
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от Vell_is Посмотреть сообщение
Прошу связаться со мной.
Связался.

Цитата Сообщение от MELkey Посмотреть сообщение
Вроде как траки готовы, ты говори чего добавить
Я в субботу этим займусь.
0
73 / 73 / 13
Регистрация: 15.01.2013
Сообщений: 284
29.09.2015, 11:38 22
Моделинг закончил, сделал ретоп, развёртку, запёк основные нормал, но там ещё доделывать, сделал анимацию траков. Вышло 30к поликов, с учётом того что 20 из них это чисто траки . Модель выстроена в иерархии, разные цвета указывают на разные материалы, всего их 8. Имена моделькам и материалам дал заранее, т.е потом только останется добавить на них текстуры, только их и осталось сделать, модельку шлю в лс.
По поводу анимации траков, такая математика: 1 кадр анимации трака равен повороту ведущего колеса и опроных катков + ленивец на 1 градус, вспомогательных катков на 4 градуса. За 18 кадров 1 трак переходит ровно на место другого (т.е. можно запускать цикл и создаётся иллюзия непрерывного движения), на сколько едениц он передвинется , нужно смотреть в самом юнити ибо всё перескейлится в юнити, у меня в максе это значение равно 173.4.
P.S. В силу своей безграмотности именовал вместо track truck
Миниатюры
Создание игры "Battle City" (танчики) на BGE   Создание игры "Battle City" (танчики) на BGE   Создание игры "Battle City" (танчики) на BGE  

0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
29.09.2015, 13:37  [ТС] 23
Ты умеешь тектурировать? Где ты возмёшь текстуры?

Я хочу сделать LowPoly (низкополигонные) модели для "Battle City 3D" в Blender'е. Сейчас учусь, как создавать текстуры в GIMP.

В общем, буду пробовать как оживить твою модель и параллельно создавать 3D версию Battle City.
0
73 / 73 / 13
Регистрация: 15.01.2013
Сообщений: 284
29.09.2015, 13:57 24
Конечно умею, сам нарисую. Как доделаю текстуры вышлю. нормалы почти готовы (на скринах же видно), дифузки целиком вручную

Добавлено через 8 минут
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Я хочу сделать LowPoly (низкополигонные) модели для "Battle City 3D" в Blender'е
Так я и сделал Low poly
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
19.10.2015, 01:18  [ТС] 25
Моя первая моделька танчика. Делал в Blender и GIMP. Импортировал в Unity:
Миниатюры
Создание игры "Battle City" (танчики) на BGE  
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
19.10.2015, 03:41 26
Цитата Сообщение от MELkey Посмотреть сообщение
По поводу анимации траков, такая математика: 1 кадр анимации трака равен повороту ведущего колеса и опроных катков + ленивец на 1 градус
А если танк чуток притормозил одной гусеницей или начал ими в разные стороны крутить? Для справки они так поворачивают. А если имитировать рабочую подвеску? Каждый каток амортизирован независимо от других,
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
19.10.2015, 15:03  [ТС] 27
Я пока поразвиваю версию танчиков ближе к оригинальной стилистике.

Создал анимацию движения треков гусениц --> gif-анимация
0
73 / 73 / 13
Регистрация: 15.01.2013
Сообщений: 284
19.10.2015, 18:30 28
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
А если танк чуток притормозил одной гусеницей или начал ими в разные стороны крутить? Для справки они так поворачивают. А если имитировать рабочую подвеску? Каждый каток амортизирован независимо от других,
Я какбы в курсе, никто не мешает проигрывать анимацию назад, ну по поводу работы амортизаторов и т.д. можно просто миксить анимацию
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
19.10.2015, 18:51 29
Цитата Сообщение от MELkey Посмотреть сообщение
Я какбы в курсе, никто не мешает проигрывать анимацию назад,
Я к тому что ее с разной скоростью крутить надо от того насколько газ и фрикционы прижаты

Добавлено через 1 минуту
Цитата Сообщение от MELkey Посмотреть сообщение
какбы в курсе, никто не мешает проигрывать анимацию назад, ну по поводу работы амортизаторов и т.д. можно просто миксить анимацию
Да тут не миксить, тут морфить паз по которому траки идут придется.
0
73 / 73 / 13
Регистрация: 15.01.2013
Сообщений: 284
19.10.2015, 19:01 30
Ну так скорость анимации менять можно, не вижу в этом проблемы. Морфить паз? помоему мы говорим об одном и томже
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
15.07.2016, 11:31  [ТС] 31
Я буду делать точный клон игры для денди "Battle City". Он ещё называется "Танчики".

Сюда буду выкладывать видео насколько продвинулся. Под видео вы можете скачать демку для Windows. Выкладываю, чтобы стимулировать себя доделать проект до конца. Возможно кто-то заметит потом расхождения с оригиналом.

Кликните здесь для просмотра всего текста
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
08.08.2016, 12:36  [ТС] 32
Сделал корректное разбивание кирпичей (как в оригинальной игре), видео: 002 Battle City 2D in Unity CSarp (Correct Shooting)

Кликните здесь для просмотра всего текста


Перевод на PC уже многими сделан, но в моей версии клона будет игра на двоих по интернету. Может есть и такие версии, но я хочу сделать свою для тренировки и интереса.
0
58 / 57 / 15
Регистрация: 15.09.2012
Сообщений: 557
08.01.2017, 11:15 33
И свои пять добавлю. Вчера выпустил клон Battle City - только онлайн мультиплеер. На данном этапе игра в режиме Death Math - победитель, игрок первым набравший 10 фрагов. Если игра пойдет - уже есть реализации и базы и добавлю режим как и в классических танчиках по захвату базы. Прошу не воспринимать за рекламу - хотел бы услышать ваши мнения что не так, как улучшить, что добавить нового. Игра так сказать в испытательном режиме) https://play.google.com/store/... city&hl=ru
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
09.01.2017, 11:32  [ТС] 34
ASDFD12, к сожалению не могу потестить вашу игру, так как у меня пока нет возможности купить Android. Я попробую найти и поставить какой-нибудь эмулятор, можете посоветовать какой?

А я немного задержался в создании клона. Я пришёл к выводу, что лучше всего делать браузерные игры, потому что тогда их можно будет запускать в один клик, а не скачивать exe или apk. Многие боятся или ленятся скачивать exe. Не у всех есть Android, т.к. используют iOS или вообще старый телефон (как у меня). А если делать браузерные игры, то будет запускаться на всех платформах, где есть браузер. Можно встроить в vk.com и facebook.

Я взял для изучения игровой html5 фреймворк Phaser, который изначально разрабатывается и оптимизирован для мобильных платформ. Если нужно собрать exe или apk для Phaser, то имеются инструменты для этого. На Unity тоже можно делать html5 сборки, но для 2D он грузится долговато, хотя несильно. Я его тоже буду использовать, особонно для 3D версии клона Battle City.

Тоже делаю с мультиплеером. Использую Node.js. У меня будет несколько версий. Одна похожая на tanx.io, где будет 4 команды, но с механикой Battle City. Ещё одна это полный клон Battle City, где можно будет вдвоём играть по интернету, как в оригинальной игре (то есть цель - создать клон, как можно более близкий к оригиналу)
0
58 / 57 / 15
Регистрация: 15.09.2012
Сообщений: 557
09.01.2017, 11:51 35
8Observer8, успехов, конкуренция в браузерных играх тоже не маленькая, кроме того многие сидят на WOT и подобных, многим нравится крутая графика, которую самому тяжело делать. На google play также полно клонов Battle City, но не нашел ни одного клона где бы был realtime multiplayer со сражением только против реальных противников, везде один, два игрока против ИИ. По этому решил реализовать чисто онлайн сражения. Но теперь проблема набрать народу, так как в пустых комнатах или 1 на 1 играть не совсем интересно. Реализовал комнаты на 8 человек - поэтому при полной комнате матч будет довольно активным и не сильно длительным) Реализация игры на Unity3d - можно будет зарелизить и в фейсбук, только в игре используется TCP and UDP сокеты - наверное будет многовато работы для реализации под Web GL
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
09.01.2017, 12:06  [ТС] 36
Цитата Сообщение от ASDFD12 Посмотреть сообщение
только в игре используется TCP and UDP сокеты - наверное будет многовато работы для реализации под Web GL
Чистый WebGL я тоже изучаю, чтобы знать как с нуля реализовывается рендер и чтобы знать как работают шейдеры и как их писать, так как написание шейдеров будет далее неизбежным. Хотя я использую обёртку над WebGL в виде Phaser (который использует графическую библиотеку PixiJS, которая является обёрткой над WebGL и Canvas2D) и Unity (сборка под HTML5 - тоже обёртка над WebGL). Для сети я изучил socket.io - это обёртка над Websocket. Там достаточно посмотреть, как реализуется чат, как присоединяются клиенты, как они отсылают сообщения на сервер, и как сервер пересылает сообщения клиентам. Там очень просто с пересылкой json-сообщений. У меня сложность с логикой синхронизации клиентов. Я же не могу каждый тик игры пересылать синхронизирующие сообщения, потому что у меня за секунду присходит 60 тиков (то есть 60 обновлений)
0
58 / 57 / 15
Регистрация: 15.09.2012
Сообщений: 557
09.01.2017, 12:18 37
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Я же не могу каждый тик игры пересылать синхронизирующие сообщения, потому что у меня за секунду присходит 60 тиков (то есть 60 обновлений)
Для плавности интерполяции движения нужно хотя бы 20 пакетов в секунду. Справится ли с этим sockets.io не знаю.

Добавлено через 4 минуты
Цитата Сообщение от 8Observer8 Посмотреть сообщение
к сожалению не могу потестить вашу игру, так как у меня пока нет возможности купить Android. Я попробую найти и поставить какой-нибудь эмулятор, можете посоветовать какой?
Не было необходимости использовать эмулятор, но думаю эмулятор от Google будет самый лучший, кто как не розработчик ОС знает как написать эмулятор
http://www.lookatme.ru/mag/liv... 3-arcweldr
1
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
09.01.2017, 13:29  [ТС] 38
Цитата Сообщение от ASDFD12 Посмотреть сообщение
Для плавности интерполяции движения нужно хотя бы 20 пакетов в секунду. Справится ли с этим sockets.io не знаю.
Он может и больше. С этим точно справится, потому что очень много браузерных игр используют Node.js и его модуль socket.io. Это не бутылочное горлышко в сравнении с сетевыми задержками, которые могут достигать 50, 100, 200 милисекунд. Не у всех высокоскоростное соединение. Я сейчас изучаю, как бороться с сетевыми задержками по книгам и туториалам о программировании сетевых игр. Я хочу чтобы даже если у человека пинг равен 200 мсек, то он бы не замечал этого. Мне нравится, как реализована сеть на Node.js в игре http://curvefever.io/ которая использует Unity на клиенте. Я пробовал играть с соединением 200 мсек - вообще не заметно задержек.

Добавлено через 1 минуту
Цитата Сообщение от ASDFD12 Посмотреть сообщение
но думаю эмулятор от Google будет самый лучший, кто как не розработчик ОС знает как написать эмулятор
Спасибо, попробую. Ещё мне посоветовали попробовать Xamarin Android Player и Bluestacks
0
58 / 57 / 15
Регистрация: 15.09.2012
Сообщений: 557
09.01.2017, 13:55 39
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Я сейчас изучаю, как бороться с сетевыми задержками по книгам и туториалам о программировании сетевых игр.
Тоже интересен этот вопрос. Я совсем немного почитал, поразмышлял и пришел к выводу, что все впирается только в интерполяцию - то есть можно интерполировать основываясь на текущем пинге и всякие хитрости применять. Экстраполяция реже используется так как персонаж может "переехать" точку своего реального положения, в играх где это недопустимо. Нашли ли вы другие ответы - берем, например синхронизацию только положения персонажа - задача плавное перемещение?

Добавлено через 15 минут
8Observer8, в этой игре http://curvefever.io - черви двигаются постоянно и еще и с равномерной скоростью - это идеальный вариант для скрытия большого пинга - движение даже не нужно синхронизировать - просто передавать в какую сторону нужно повернуть персонажа.
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
09.01.2017, 21:04 40
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Это не бутылочное горлышко в сравнении с сетевыми задержками, которые могут достигать 50, 100, 200 милисекунд. Не у всех высокоскоростное соединение. Я сейчас изучаю, как бороться с сетевыми задержками по книгам и туториалам о программировании сетевых игр. Я хочу чтобы даже если у человека пинг равен 200 мсек, то он бы не замечал этого.
Ну вообще реальный способ только один - на клиенте тоже работает физический движок и передаются каждому клиенту просто состояния средств ввода других клиентов, c периодической коррекцией положения объектов с сервера. Решения о попаданиях и т.д. при этом принимает сервер. Т.е. у клиента вся физика считается только для плавного отображения. Реально никаких рывков не было замено даже с пингами 500 на модеме 56кбит в ИЛ-2 Штурмовик. Правда с большим пингом это все равно игра в одни ворота. У кого ниже пинг тот раньше увидит противника и даже за четверть секунды успеет получить преимущество.
0
09.01.2017, 21:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.01.2017, 21:04
Помогаю со студенческими работами здесь

Иерархия объектов для battle city
Пишу игру Танчики ООП на С++. для начала стоит задача создать иерархию объектов а потом уже и...

Игра Battle City libGDX на двоих (передача данных)
Всем здравствуйте! Хотел написать аналог танчиков с денди на Андроид с возможностью игры на двоих,...

Создание клона игры city bloxx
В игре city bloxx есть такой момент, когда дом, построенный игроком, начинает раскачиваться из...

Создать множество независимых объектов, подобных танкам в игре Battle City
Всем привет, подскажите пожалуйста алгоритм по которому как в этой ...

С помощью каких библиотек писать игру "Battle City"?
Собрался написать игру Battle City на С++. Какие библиотеки для этого лучше подойдут?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru