Суббота, 02 Августа 2025, 14:36

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
8Observer8Дата: Воскресенье, 09 Августа 2015, 23:24 | Сообщение # 201 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Огромное спасибо! Добавил и сбросил до нуля трение.

Вот что получилось:


Есть проблема, что если врезаться в ящик с вопросом сбоку (задеть), то он реагирует (то есть подрыгивает). Пока не придумал, как это решить. У меня же в условии в скрипте на Box'е стоит удар снизу, и сравнение игреков:
8Observer8Дата: Понедельник, 10 Августа 2015, 14:57 | Сообщение # 202 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Цитата KamiRonin ()
невидимая полка снизу (триггер)

Идею понял. Попозже попробую.

Я не могу придумать, как лучше уровень храть и строить. Такие варианты есть:

  • Создать уровень из префабов, методом Ctrl+D, временно расположив рисунок всего уровня, как фон
  • Создать уровень в редакторе Tiled, поставив временно в фоне слой Image с уровнем. Потом экспортировать с помощью Tiled2Unity
  • Создать текстовые файлы с кусками уровня, где каждый символ обозначает объект и генерировать динамически по мере продвижения Марио


Сообщение отредактировал 8Observer8 - Понедельник, 10 Августа 2015, 14:59
8Observer8Дата: Понедельник, 10 Августа 2015, 23:46 | Сообщение # 203 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
KamiRonin, да уровни достаточно короткие, поэтому действительно оптимизация не нужна. За ссылки большое спасибо! Для генерации потом буде как раз. А сейчас нужен клон уровней.

Я нашёл удобное для себя решение. Я создаю в редакторе Tiled - "Image Layer". Делаю его полупрозрачным. Добавляю TileSet. Рисую тайлами уровни. У каждого тайла есть свой ID. Я экспортирую в CVS файл. Сохраняются все ID через запятую. Каждый элемент на своей позиции. Я замарачиваться с файлом не стал, чтобы проблем с Web Player'ом не было, поэтому сохраняют массив сразу в исходник. Выставляю "Pixels Per Unit" равным 16, чтобы координаты были (0, 0), (1, 2) и т.д., чтобы координаты совпадали индексами двух вложенных циклов.

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

Добавлено (10 августа 2015, 23:46)
---------------------------------------------
Ещё раз уточню более подробно, как я уровни решил делать (первый уровень сделал), чтобы не повторяться --> ссылка


Сообщение отредактировал 8Observer8 - Понедельник, 10 Августа 2015, 23:47
8Observer8Дата: Вторник, 11 Августа 2015, 23:31 | Сообщение # 204 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
KamiRonin, пока не могу плюсануть, ресурс не даёт. Спасибо!

Скажите, что это за линии, как их убрать? Они динамически появляются и пропадают: SuperMario_v1.1.0 (source)

8Observer8Дата: Среда, 12 Августа 2015, 07:02 | Сообщение # 205 | Тема: Кто-нибудь делал экспорт под WebGL в Unity 5
заслуженный участник
Сейчас нет на сайте
У меня марсоход двигается так как будто я управляю реальным марсаходом и сигнал приходит с задержкой, то есть вижу слайдшой. Такое же слайдшой вижу со всеми примерами от Blend4Web Только с примером Planetarium дела лучше. Но всё равно планеты двигаются не плавно - дёргаются. Пока что я не видел на этом движке ни одного примера, чтобы можно было сравнить по скорости и качеству с Web Player'ом. Может поделитесь ссылкой? Мне самое главное, чтобы FPS был высокий.

Сообщение отредактировал 8Observer8 - Среда, 12 Августа 2015, 07:05
8Observer8Дата: Среда, 12 Августа 2015, 09:38 | Сообщение # 206 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Посмотрите на каком я сейчас этапе (управление - стрелками, прыгать - пробел): SuperMario_1.2.0 (win)

Добавлено (12 августа 2015, 09:38)
---------------------------------------------

Цитата KamiRonin ()
делай куст целым спрайтом и ставь ручками в сцену..

Это очень долго. Как я узнаю точное положение объектов? Мне нужно будет создать точные копии всех уровней Марио.


Сообщение отредактировал 8Observer8 - Среда, 12 Августа 2015, 09:19
8Observer8Дата: Среда, 12 Августа 2015, 17:21 | Сообщение # 207 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Что интересно эти кромки попадают на тайл с соседнего тайла. Не пойму в чём дело.

Добавлено (12 августа 2015, 13:14)
---------------------------------------------
Цитата KamiRonin ()
Добавлено:
Все, посмотрел исходный тайлсет - это на нем зазоры!! Там у картинки самой в рамку спрайта (ну скажем правого склона горки) влезает прозрачная кромка.. По моему - это причина глюка.. Попробуй на кочке - в фотошопе затри зазоры, посмотри как будет рисовать..

Случайно заметил добавление. Пока не понятно, что за кромка. Посмотрю в фотошопе.

Добавлено (12 августа 2015, 14:45)
---------------------------------------------
Я ещё задал свой вопрос здесь на кривом английском. Пишут, что нужно добавить "padding", так как близлежащие текстуры влияют друг на друга. Появляется эффект "bleed" - смазывание. Не понимаю, почему это отключить нельзя. Я так понял padding - это зазор между тайлами. Какой программой можно добавить padding?

Добавлено (12 августа 2015, 16:42)
---------------------------------------------
У меня "Pixel Per Unit" = 1. Наверное, в этом проблема.

Добавлено (12 августа 2015, 17:21)
---------------------------------------------
Я нашёл решение этой проблемы. Я из общего тайлсета создаю более маленькие для каждого объекта в Tilled Map Editor, но с большим зазором в один тайл. Экспортирую в png и теперь Sprite Editor нормально разделяет:





Сообщение отредактировал 8Observer8 - Среда, 12 Августа 2015, 14:48
8Observer8Дата: Среда, 12 Августа 2015, 20:22 | Сообщение # 208 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Цитата KamiRonin ()
они предложили тайлсет разрезать и вставить по пикселю между всеми спрайтами

Я почти так и сделал, только вставляю по 16 пикселей между спрайтами. Так быстрее. Но есть другой вариант. Хотел в Paint'е сделать, но он прозрачность убирает. Тогда придётся потом фотошопом делать фон прозразный. Наверное, этот вариант лучше. Лучше пусть будет по одному пикселу. Столько времени придётся убить, чтобы добавить зазоры в тайлсет.

Добавлено (12 августа 2015, 20:22)
---------------------------------------------
Я нашёл решение здесь!

Сообщение отредактировал 8Observer8 - Среда, 12 Августа 2015, 17:33
8Observer8Дата: Четверг, 13 Августа 2015, 08:53 | Сообщение # 209 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
seaman, спасибо! То есть вот этот инструмент Cheetah Texture Packer

У вас в танчиках та же самая проблема, как у меня, на границе между тайлами. Как вы собираетесь её решать? Вы не могли бы решить проблему и обновить репозитарий?

Проблема:


Цитата dreenline ()
На самом деле, тут как-то сложно разобраться, я не смог, но может поможет.

Импортируйте скрипт 2D/CameraFollow. Киньте на камеру. Player'у поставьте тег "Player". Настройте минимальную и максимальную точки для камеры в инспекторе.

Цитата dreenline ()
Как у вас в Tiled получается выдерживать пропорции уровня?

Пропорции определяются опцией "Pixel Per Unit" на спрайтах. Я ставлю 1. Тогда и камере придётся ставить размер, например, 150.

Я так делают:
- открываю Tiled Map Editor
- добавляю фоновый рисунок уровня (который буду обводить тайлами)
- выставляю фоновому рисунку прозрачность 50%
- добавляю слой для тайловой карты
- кидаю TileSet на окно TileSet выставив 16x16 пикселей на тайл
- обвожу всёю карту
- экспортирую id тайлов и их положения через меню File->Export CVS
- теперь есть карта расположения тайлов и их ID
- открываю оригинальный TileSet в Unity. Разбивает на тайлы в "Sprite Editor"
- мы можем создать прифабы и вставлять их в цикле в положения которые мы получили от редактора Tiled


Сообщение отредактировал 8Observer8 - Четверг, 13 Августа 2015, 10:34
8Observer8Дата: Четверг, 13 Августа 2015, 12:51 | Сообщение # 210 | Тема: Видеоуроки по программированию на C# Unity для начинающих
заслуженный участник
Сейчас нет на сайте
seaman, у вас танк:
- не может одновременно ехать и стрелять,
- он останавливается и проглатывает первую пулю
- когда упирается в стену - он пружинит, а так не должно быть
- если ехать прямо и повернуть, то танк на секунду останавливается
- танки врагов не должны сдвигаться тараном
- между тайлами появляется зазор на разрешение 1024x768

Собрал в exe, чтобы желающие могли попробовать: seamanmur-battle-city.7z

Когда будет играбельная демка первого уровня?


Сообщение отредактировал 8Observer8 - Четверг, 13 Августа 2015, 18:41
8Observer8Дата: Четверг, 13 Августа 2015, 18:36 | Сообщение # 211 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Цитата seaman ()
У меня проблемы нет. Как я ее решил - я сказал в видео. Сделал зазор 1 пиксель.

Я показал за сполером выше. Там проблема не в один пиксел, гораздо меньше. Щель между тайлами. Я заметил, что в вашем клоне танчиков, проблему не видно на разрешении 800x600, а на 1024x728 её видно.

Добавлено (13 августа 2015, 13:00)
---------------------------------------------
Цитата seaman ()
Сделал зазор 1 пиксель.

Эту проблему "с засвечиванием соседнего тайла" я решил, тем, что тоже сделал зазор в один пиксел, но только с помощью этого плагина для GIMP'а

Добавлено (13 августа 2015, 13:10)
---------------------------------------------
seaman, проблема в том, что у вас между тайлами есть щели в некоторых местах. Вот я и спрашиваю, как её решить? У меня сейчас точно такая же проблема.



Добавлено (13 августа 2015, 18:36)
---------------------------------------------
Давайте пока проблему с щелями отложим. Искал я много в интернете, и пока ничего не нашёл.

Не нашёл я и решение следующей проблемы. Марио проваливается в предмет, то есть коллайдеры пересекаются и это здорово заметно:



Сообщение отредактировал 8Observer8 - Четверг, 13 Августа 2015, 22:00
8Observer8Дата: Пятница, 14 Августа 2015, 20:17 | Сообщение # 212 | Тема: Оптимизация
заслуженный участник
Сейчас нет на сайте
У меня такой же вопрос. Я делаю клон Марио. Там каждый кирпичный блок должен быть отдельным спрайтом, чтобы его можно было разбить или толкнуть. Первый уровень я генерирую сразу весь. А во втором очень много кирпичных блоков. Я думаю, будет тормозить. Сильно ли коллайдеры влияют на производительность? Так получилось, что у меня на каждом блоке их по четыре. В общем, посоветуйте как быть.

Ещё такой момент. Я срисовываю карту в Tile Map Editor, но экспортирую не картой, а в текстовый файл.
8Observer8Дата: Воскресенье, 16 Августа 2015, 21:21 | Сообщение # 213 | Тема: Реализация столкновений в 2D танчиках
заслуженный участник
Сейчас нет на сайте
Цитата system ()
ты не прав, если у танка масса больше то он вполне может столкнуть другой танк, да и на скоросте 50+ кмч хоть не много да сдвинешь танк, если масса танка в который врезаешься не на 5+ тонн больше... в общем возьми в wot поиграй и посмотри как ведут сеья танки

Не может столкнуть, так как речь идёт об игре Battle City.


Сообщение отредактировал 8Observer8 - Воскресенье, 16 Августа 2015, 21:22
8Observer8Дата: Понедельник, 17 Августа 2015, 15:49 | Сообщение # 214 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Делать в захлёст! А это идея! Посмотрю по ранее озвученным инструментам, так как это дело нужно максимально автоматизировать.

Добавлено (14 августа 2015, 18:04)
---------------------------------------------
Мне одному кажется, что игра немного подтормаживает или нормально? SuperMario_1.3.0 (win).7z

Добавлено (17 августа 2015, 15:49)
---------------------------------------------
Я проверил притормаживает ли Марио на более мощной машине. Оказывается, нет. Это всё из-за того, что я генерирую все префабы с тайлами сразу. Я вижу один простой выход. Раз уровень хранится в двумерном массиве, то я могу разбить его на минимальные куски. Подгружать постепенно новые куски карты и уничтожать те, что пройдены.

По поводу решения с просветом между тайлами, которое предложил seaman выше. Я не нашёл готовых программ, которые бы преобразовывали тайлсеты так, чтобы тайл увеличивался на два пикселя в каждую из 4-х сторон. Возможно у меня получится написать плагин для GIMP. Сначала рассматривал вариант на скриптах C# с помощью GIMP#, но проект с 2012 года не развивается и работает только с GIMP 2.4. Остаётся вариант Python-Fu. У меня есть небольшой опыт скриптинга на Python BGE. Тем более опыт написания плагинов для GIMP может пригодится.


Сообщение отредактировал 8Observer8 - Понедельник, 17 Августа 2015, 16:06
8Observer8Дата: Вторник, 18 Августа 2015, 13:37 | Сообщение # 215 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
А я смогу потом нарезать полученную текстуру с помощью "Sprite Editor"? Будет ли это сложнее, чем написать плагин для GIMP?

Пока что я понял, как работать с GIMP'ом через Python. Это довольно просто. Есть консоль, которую можно отрыть так: в меню выбрать "Filters" -> "Python-Fu" -> "Console"

В консоле есть кнопка "Browse...". При нажатии отрывается справка, где можно искать API функции, читать описания. Например, можно навести на кнопку с пипеткой и увидеть её название: "Color Picker". Ввести это название в поиске окна "Browse...". Найдётся функция: gimp-color-picker. Можно прочитать её описание и какие аргументы она принимает. Если выделить функцию и нажать кнопку "Apply", но в консоль скопируется следующее:
Цитата
color = pdb.gimp_color_picker(image, drawable, x, y, sample_merged, sample_average, average_radius)


У меня такая идея. Сначала применить этот скрипт, чтобы сделать расстояние между тайлами в 5 пикселей. А потом в своём скрипте брать пипеткой цвет на краю тайла и рисовать с помощью функции gimp.pencil рядом ещё два таких пиксела. И так для каждого крайнего пиксела.


Сообщение отредактировал 8Observer8 - Вторник, 18 Августа 2015, 13:39
8Observer8Дата: Вторник, 18 Августа 2015, 18:17 | Сообщение # 216 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Большое спасибо, что напомнил о Ocllusion Culling. Обрати внимание, что на видео, хотя и дата 2015 года, но используется старый подход, когда эта опция входила в Pro версию. Я прочитал в документации, что для включения опции нужно поставить для объектов "Occludee Static", потому что у меня объекты не перекрывают другие. Всё равно так же подтормаживает перемещение камеры, но что интересно FPS не просидает ниже 70. А ещё я попробовал убрать галочки "Occludee Static" и FPS остался на том же уровне.

Сообщение отредактировал 8Observer8 - Вторник, 18 Августа 2015, 18:19
8Observer8Дата: Вторник, 18 Августа 2015, 22:02 | Сообщение # 217 | Тема: Движок для реалтайм сцен с хорошим освещением
заслуженный участник
Сейчас нет на сайте
Unity5 будет оптимальным вариантом. В поиске: unity global illumination tutorial

Сообщение отредактировал 8Observer8 - Вторник, 18 Августа 2015, 22:08
8Observer8Дата: Вторник, 18 Августа 2015, 22:17 | Сообщение # 218 | Тема: UI script для начинающих
заслуженный участник
Сейчас нет на сайте
Цитата sixdemon ()
не могу из скрипта , привязанного к Button - поменять собственно текст на самой кнопке или значение текста в Text на панели....

А умеете ли вывести в консоль "Hello World!" при нажатии на кнопку?

Вот так:
Код

// ...

     void HelloButtonClicked()
     {
         Debug.Log("Hello World!");
     }

// ...
8Observer8Дата: Среда, 19 Августа 2015, 08:14 | Сообщение # 219 | Тема: UI script для начинающих
заслуженный участник
Сейчас нет на сайте
sixdemon, чтобы путаницы не было уточните какие кнопки вы используете: те что из меню создаются или те что программно, как выше показали.
8Observer8Дата: Среда, 19 Августа 2015, 08:21 | Сообщение # 220 | Тема: Реализация столкновений в 2D танчиках
заслуженный участник
Сейчас нет на сайте
За пример большое спасибо, но он не решает проблемы. Мне нужна физика (точнее её отсутствие), как в оригинальном Battle City, где нельзя двигать танки.
Поиск:

Все права сохранены. GcUp.ru © 2008-2025 Рейтинг