1 | |
Создание игры "Battle City" (танчики) на BGE26.02.2015, 15:44. Показов 15499. Ответов 56
Метки нет (Все метки)
Привет!
Хочу написать танчики на BGE с целью лучше узнать API движка. До применения API и Python пока далеко. Проблема в самом начале: не могу придумать, как сделать анимацию движения танка на спрайтах. Могу наложить текстуру и двигать площадку, а вот как менять текстуры и организовать удобно всё это - ума не приложу. Хочу делать сначала на Logic Bricks, а потом писать на Python, но только то, что действительно проще на нём (или только эта возможность и есть) Я записал небольшое видео. Мне кажется, уже на этапе, показанном в видео, много ошибок. Посмотрите, пожалуйста: Battle City in BGE. Attempt number 1
0
|
26.02.2015, 15:44 | |
Ответы с готовыми решениями:
56
Как написать Battle city (танчики) Танчики (battle city) в windows forms Есть библиотеки для создания 2D игр? Таких как танчики (Battle City) или Марио? Игра Battle City Аналог Battle City |
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
0
|
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 минут Так я и сделал Low poly
0
|
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
|
|
19.10.2015, 03:41 | 26 |
А если танк чуток притормозил одной гусеницей или начал ими в разные стороны крутить? Для справки они так поворачивают. А если имитировать рабочую подвеску? Каждый каток амортизирован независимо от других,
0
|
19.10.2015, 15:03 [ТС] | 27 |
Я пока поразвиваю версию танчиков ближе к оригинальной стилистике.
Создал анимацию движения треков гусениц --> gif-анимация
0
|
73 / 73 / 13
Регистрация: 15.01.2013
Сообщений: 284
|
|
19.10.2015, 18:30 | 28 |
Я какбы в курсе, никто не мешает проигрывать анимацию назад, ну по поводу работы амортизаторов и т.д. можно просто миксить анимацию
0
|
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
|
|
19.10.2015, 18:51 | 29 |
Я к тому что ее с разной скоростью крутить надо от того насколько газ и фрикционы прижаты
Добавлено через 1 минуту Да тут не миксить, тут морфить паз по которому траки идут придется.
0
|
73 / 73 / 13
Регистрация: 15.01.2013
Сообщений: 284
|
|
19.10.2015, 19:01 | 30 |
Ну так скорость анимации менять можно, не вижу в этом проблемы. Морфить паз? помоему мы говорим об одном и томже
0
|
15.07.2016, 11:31 [ТС] | 31 |
Я буду делать точный клон игры для денди "Battle City". Он ещё называется "Танчики".
Сюда буду выкладывать видео насколько продвинулся. Под видео вы можете скачать демку для Windows. Выкладываю, чтобы стимулировать себя доделать проект до конца. Возможно кто-то заметит потом расхождения с оригиналом. Кликните здесь для просмотра всего текста
0
|
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
|
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
|
09.01.2017, 12:06 [ТС] | 36 |
Чистый 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 |
Для плавности интерполяции движения нужно хотя бы 20 пакетов в секунду. Справится ли с этим sockets.io не знаю.
Добавлено через 4 минуты Не было необходимости использовать эмулятор, но думаю эмулятор от Google будет самый лучший, кто как не розработчик ОС знает как написать эмулятор http://www.lookatme.ru/mag/liv... 3-arcweldr
1
|
09.01.2017, 13:29 [ТС] | 38 |
Он может и больше. С этим точно справится, потому что очень много браузерных игр используют Node.js и его модуль socket.io. Это не бутылочное горлышко в сравнении с сетевыми задержками, которые могут достигать 50, 100, 200 милисекунд. Не у всех высокоскоростное соединение. Я сейчас изучаю, как бороться с сетевыми задержками по книгам и туториалам о программировании сетевых игр. Я хочу чтобы даже если у человека пинг равен 200 мсек, то он бы не замечал этого. Мне нравится, как реализована сеть на Node.js в игре http://curvefever.io/ которая использует Unity на клиенте. Я пробовал играть с соединением 200 мсек - вообще не заметно задержек.
Добавлено через 1 минуту Спасибо, попробую. Ещё мне посоветовали попробовать Xamarin Android Player и Bluestacks
0
|
58 / 57 / 15
Регистрация: 15.09.2012
Сообщений: 557
|
|
09.01.2017, 13:55 | 39 |
Тоже интересен этот вопрос. Я совсем немного почитал, поразмышлял и пришел к выводу, что все впирается только в интерполяцию - то есть можно интерполировать основываясь на текущем пинге и всякие хитрости применять. Экстраполяция реже используется так как персонаж может "переехать" точку своего реального положения, в играх где это недопустимо. Нашли ли вы другие ответы - берем, например синхронизацию только положения персонажа - задача плавное перемещение?
Добавлено через 15 минут 8Observer8, в этой игре http://curvefever.io - черви двигаются постоянно и еще и с равномерной скоростью - это идеальный вариант для скрытия большого пинга - движение даже не нужно синхронизировать - просто передавать в какую сторону нужно повернуть персонажа.
0
|
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
|
|
09.01.2017, 21:04 | 40 |
Ну вообще реальный способ только один - на клиенте тоже работает физический движок и передаются каждому клиенту просто состояния средств ввода других клиентов, c периодической коррекцией положения объектов с сервера. Решения о попаданиях и т.д. при этом принимает сервер. Т.е. у клиента вся физика считается только для плавного отображения. Реально никаких рывков не было замено даже с пингами 500 на модеме 56кбит в ИЛ-2 Штурмовик. Правда с большим пингом это все равно игра в одни ворота. У кого ниже пинг тот раньше увидит противника и даже за четверть секунды успеет получить преимущество.
0
|
09.01.2017, 21:04 | |
09.01.2017, 21:04 | |
Помогаю со студенческими работами здесь
40
Иерархия объектов для battle city Игра Battle City libGDX на двоих (передача данных) Создание клона игры city bloxx Создать множество независимых объектов, подобных танкам в игре Battle City С помощью каких библиотек писать игру "Battle City"? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |