Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Веселая аркада с Печенькой для новогоднего настроения. Объезжайте препятствия, а подарки, варежки, конфеты и прочие приятности не объезжайте: они помогут набрать очки и установить новый рекорд.

Сноуборд

Спорт, Аркады, На ловкость

Играть

Топ прошлой недели

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
52
Kaketotochat
Kaketotochat
23 дня назад
Мото

Свап мотора⁠⁠

Свап мотора.

Привезли данный двигатель (дизельный), для изготовления переходных плит для КПП Днепра.

Клиент хочет поставить этот мотор в мотоцикл «Днепр».

В плитах нужно просверлить отверстия для прокручивания к двигателю.
Корпус коробки нужно будет обнищать внутри и тоже сверлить отверстия.
Сделать в маховике посадку для конусной муфты.

Позже буду показывать процесс работ и готовый вариант.

Источник - https://t.me/+YYj_6EHqVZA0MDEy

#днепр #свап #двигатель

Свап мотора Днепр, Свап, Двигатель, Ремонт, Мотоциклы, Установка, Движок, КПП, Коробка, Авто, Токарка, Токарь, Станок, Дизель, Мото, Ремонт авто, Длиннопост
Свап мотора Днепр, Свап, Двигатель, Ремонт, Мотоциклы, Установка, Движок, КПП, Коробка, Авто, Токарка, Токарь, Станок, Дизель, Мото, Ремонт авто, Длиннопост
Свап мотора Днепр, Свап, Двигатель, Ремонт, Мотоциклы, Установка, Движок, КПП, Коробка, Авто, Токарка, Токарь, Станок, Дизель, Мото, Ремонт авто, Длиннопост
Показать полностью 3
[моё] Днепр Свап Двигатель Ремонт Мотоциклы Установка Движок КПП Коробка Авто Токарка Токарь Станок Дизель Мото Ремонт авто Длиннопост
7
8
Kaketotochat
Kaketotochat
26 дней назад
Автомобильное сообщество

Вопрос⁠⁠

⁉️Вопрос⁉️

Привезли вот такой блок на гильзовку.
Гильза на фото, блок тоже.
Поршни кованые.

Теперь вам вопросы;

Что это за гильзы?
Как это нужно делать?
Какой зазор на ковку?


Жду ответу в комментарии!!

И хороших всем выходных🎉

Больше интересного в источнике:

https://t.me/+YYj_6EHqVZA0MDEy

#гильзы #вопросы #поршни

Вопрос Вопрос, Поршень, Оружейные гильзы, Блок, Бц, Двигатель, Движок, Ремонт, Капитальный ремонт, Авто, Автомобилисты, Запчасти, Ремонт авто, Telegram, Канал, Автосервис, Гараж, Длиннопост
Вопрос Вопрос, Поршень, Оружейные гильзы, Блок, Бц, Двигатель, Движок, Ремонт, Капитальный ремонт, Авто, Автомобилисты, Запчасти, Ремонт авто, Telegram, Канал, Автосервис, Гараж, Длиннопост
Вопрос Вопрос, Поршень, Оружейные гильзы, Блок, Бц, Двигатель, Движок, Ремонт, Капитальный ремонт, Авто, Автомобилисты, Запчасти, Ремонт авто, Telegram, Канал, Автосервис, Гараж, Длиннопост
Вопрос Вопрос, Поршень, Оружейные гильзы, Блок, Бц, Двигатель, Движок, Ремонт, Капитальный ремонт, Авто, Автомобилисты, Запчасти, Ремонт авто, Telegram, Канал, Автосервис, Гараж, Длиннопост
Показать полностью 4
[моё] Вопрос Поршень Оружейные гильзы Блок Бц Двигатель Движок Ремонт Капитальный ремонт Авто Автомобилисты Запчасти Ремонт авто Telegram Канал Автосервис Гараж Длиннопост
13
12
Kaketotochat
Kaketotochat
28 дней назад

Расточка ВАЗ ф76 - ф79⁠⁠

Расточка ВАЗ ф76 - ф79

Привезли блок от ВАЗ 2101, в размере ф76,8 (последний ремонт).
Решили точить в ф79,0 (это даст еще 3 жизни мотору).
А потом уже можно и будет в ф82,0 (еще 3 жизни).
Источник - https://t.me/+YYj_6EHqVZA0MDEy
#ваз #жига #расточка

Расточка ВАЗ ф76 - ф79 АвтоВАЗ, Жигули, Расточка, Тюнинг, Дрифт, Авто, Машина, Блок, Двигатель, Движок, Поршень, Запчасти, Ремонт, Токарь, Токарка, Длиннопост
Расточка ВАЗ ф76 - ф79 АвтоВАЗ, Жигули, Расточка, Тюнинг, Дрифт, Авто, Машина, Блок, Двигатель, Движок, Поршень, Запчасти, Ремонт, Токарь, Токарка, Длиннопост
Расточка ВАЗ ф76 - ф79 АвтоВАЗ, Жигули, Расточка, Тюнинг, Дрифт, Авто, Машина, Блок, Двигатель, Движок, Поршень, Запчасти, Ремонт, Токарь, Токарка, Длиннопост
Показать полностью 3
[моё] АвтоВАЗ Жигули Расточка Тюнинг Дрифт Авто Машина Блок Двигатель Движок Поршень Запчасти Ремонт Токарь Токарка Длиннопост
3
41
Kaketotochat
Kaketotochat
30 дней назад
Автомобильное сообщество

Промер нижней головки шатуна⁠⁠

Промер нижней головки шатуна👍

Клиент привез шатуны на промер НГШ (нижняя головка шатуна), место куда ставятся вкладыши. (Фото 1).

Для чего это делать? Для просера геометрии шатуна на эллипс, перегрев, задиры и так далее. Короче пригодны они для использования или нет.

Этап 1. Визуальный осмотр.
В большинстве случаев я сразу вижу труп шатун или нет, которые визуально не понятно, те мерю.

Этап 2. Подготовка.
Разбираю шатун, выкидываю старые вкладыши и все чищу, плоскости соприкосновения шатуна и крышки чищу напильником мелким, сами посадки под вкладыши мелкой наждачкой «нулевкой». (Фото 2, 3).

Этап 3. Протяжка.
Закрепляю шатун на станке, чтобы удобнее было протягивать, узнаю моменты затяжки болтов (либо гаек), и протягиваю динамометрическим ключом (этот момент не заснял к сожалению). Повторяем эти операции со всеми шатунами. (Фото 4).

Этап 4. Промер.
Замеряем их диаметр, настраиваем на микрометре и переносим на нутромер. И начинаем замеры. Я мерю в 3 диагоналях (вертикально, первая диагональ и вторая диагональ (по замкам) (Фото 6, 7, 8).
По показаниям видим, вертикаль 0, диагонали обе +0,01.
Это идеальный шатун.
Диагонали всегда в основном должны быть на сотку-две в плюсе от вертикали, это нормально.

Замеряю все оставшиеся и сообщаю клиенту, что все супер!

Это были шатуны с Лансера 9.
Диаметр НГШ Ф45,00мм.

И приложил еще пару фото для наглядности, где видно визуально, что шатун труп. (Фото 9, 10).
Там есть такие потертые задиры, как будто металл немного наматывало. Там провернуло вкладыш, но по опыту я знаю, что он труп.
На 10 фотке два шатуна, один труп (ближний) а один живой (дальний), можете сравнить визуально.

Это шатуны с Ауди Q5.
Диаметр НГШ Ф50,60мм.
2 трупа, 2 живых. Также это было видео и по коленвалу, две этих шатунных шейки задраны.
Кстати, эти шатуны от блока с предыдущего поста)

Спасибо за внимание)

Источник - https://t.me/+YYj_6EHqVZA0MDEy

Оцените плюсами пожалуйста 🙏🏻)))

#шатуны #промер #ауди

Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Промер нижней головки шатуна Кросспостинг, Pikabu Publish Bot, Шатуны, Audi, Шатун, Двигатель, Движок, Измерения, Telegram, Поршень, Зазор, Станок, Авто, Блок, Тюнинг, Чистка, Длиннопост
Показать полностью 10
[моё] Кросспостинг Pikabu Publish Bot Шатуны Audi Шатун Двигатель Движок Измерения Telegram Поршень Зазор Станок Авто Блок Тюнинг Чистка Длиннопост
8
847
kotvasil
kotvasil
1 месяц назад
Мото

Honda Aist. Cкладной мотовелосипед⁠⁠

Сделан на базе четырехтактного 30-ти кубового триммерного двигателя Honda GX31. Общий вес - 34 кг. Расход топлива - 1.2 л / 100 км. Независимый передний привод. Сохранен свободный накат, можно ездить как на педалях, так и на моторе. Выдерживает загрузку до 120 кг. Плюс дополнительно 40 кг можно разместить на багажнике. Идеален для дальних путешествий в любую точку планеты. Также может быть использован для работы в доставке. В любой стране мира. Его легко можно сложить пополам и поместить в багажник автомобиля, автобуса или закинуть на верхнюю полку поезда. Сцепление автоматическое. Не нужно ничего нажимать, плавно отпускать, бояться что аппарат дернется и заглохнет. Просто окручиваем ручку газа и едем :) Лёгок в управлении, сел и поехал.

+нет штрафов

+нет налогов

+не нужна  категория «А»

+не нужна регистрация в ГИБДД

Главное его отличие от китайских аналогов - он не перегревается. Вообще. Даже при движении в горной местности. (Например по кавказским дорогам вокруг Чёрного моря). И не ломается. Совсем. Это - HONDA! С ходовкой на советских, закаленных подшипниках. Фактически неубиваемый.

Если закончится бензин - не проблема. Легко и просто едем на педалях, без какой-либо дополнительной нагрузки. Можно кататься в парках, скверах, на тротуарах, зеленых и заповедных зонах. А также проезжать таможенный и пограничный контроль вне автомобильной общей очереди ;)

Ну а надежный железный ящик не позволит просто так похитить ваши личные вещи :))

И да – ведомая звезда здесь крепится не на болтиках к спицам, как на веломоторе типа F-80 и иже с ним… )) А сами звезды и цепи – мопедные. Производства РФ. Сделаны НЕ из пластилина и прессованного риса )))

На создание этого велосипеда с мотором у меня ушло 5 (пять) лет.

Причем по ходу этого времени он переделывался примерно 7 или 8 раз. Так как первоначальные варианты не устраивали меня по надёжности, удобству и прочим техническо-эксплуатационным характеристикам. На данный момент  этот экземпляр, перебран по болтику (это не шутка!) и доведенный практически до совершенства. (Настолько, насколько это было вообще возможно, конечно).

Чтож, спасибо за внимание всем, кто дочитал до конца! И не забудьте оценить видео! Я старался :))

Показать полностью
[моё] Мопед Триммер Самоделки Транспорт Внедорожник Ашанбайк Своими руками Мото Велосипед Движок Honda Видео
429
8
NoName5555
NoName5555
2 месяца назад
Серия Контент по Ведьмаку

Игра "Ведьмак" (2007) ремейк UE 5 и кое - какие подробности⁠⁠

1/3

Ремейк игры - это обновлённая версия проекта, созданная на основе оригинальной игры. Обычно ремейк имеет такое же название, сюжет и игровой процесс, но часто содержит более современную графику, звуковые эффекты, изменённую внешность персонажей, интерфейс пользователя, дизайн и строение локаций. В некоторых случаях разработчики вносят изменения в сюжетную линию.

Что известно про ремейк первой части игры "Ведьмак":

Начнём:

1) Ремейк будет значительно отличаться от оригинала 17-летней давности, где была предусмотрена лишь линейная система прохождения.

2) Проект под кодовым названием Canis Majoris.

3) Запланирован на релиз после игры "Ведьмак 4".

4) Создать игру с максимальным вниманием к деталям и уважением к оригиналу.

5) Сюжет игры где-то изменят, а где-то оставят как есть.

6) Движок игры будет на Unreal Engine 5.

7) Ремейк первого «Ведьмака» разрабатывает польская студия Fool’s Theory.

В марте 2024 года сообщалось, что польская студия Fool's Theory опубликовала вакансию, в которой раскрыла стадию производства The Witcher Remake на движке Unreal Engine 5. Тогда говорилось, что разработка находится на одном из самых ранних этапов, и команде нужны квалифицированные специалисты для начала активной работы над переизданием культовой игры.

польская студия Fool's Theory работает над двумя проектами: это The Witcher Remake и нового DLC к игре "Ведьмак 3".

Насчёт нового DLC к игре "Ведьмак 3": информация не подтверждена от разработчика.так что относитесь как к слухам.

Что произошло с игрой "Ведьмак" (2007):

1) Игра "Ведьмак" (2007) отпраздновала 17-летие.

Игра "Ведьмак" (2007) ремейк UE 5 и кое - какие подробности Ведьмак, Ведьмак 1, Cd projekt Red, Ведьмак 4, Ремейк, Геймеры, Ознакомление, Движок, Ведьмак 3: Дикая охота, Видео, YouTube, Длиннопост

2) The Witcher и The Witcher 2: Assasins of Kings официально включены в программу сохранения GOG:

https://www.playground.ru/witcher/news/the_witcher_i_the_wit...

Игра "Ведьмак" (2007) ремейк UE 5 и кое - какие подробности Ведьмак, Ведьмак 1, Cd projekt Red, Ведьмак 4, Ремейк, Геймеры, Ознакомление, Движок, Ведьмак 3: Дикая охота, Видео, YouTube, Длиннопост

Вот ссылка:

https://youtu.be/2ko5qFPIYIc?si=5YOIaI6VJIVtfKDt

Игры которые планирует выпустить CD Project RED:

Игра "Ведьмак" (2007) ремейк UE 5 и кое - какие подробности Ведьмак, Ведьмак 1, Cd projekt Red, Ведьмак 4, Ремейк, Геймеры, Ознакомление, Движок, Ведьмак 3: Дикая охота, Видео, YouTube, Длиннопост

Некоторые игры под кодовыми именами.Это не релизная версия игр.Со временем название игр изменятся.

Игра "Ведьмак" (2007) ремейк UE 5 и кое - какие подробности Ведьмак, Ведьмак 1, Cd projekt Red, Ведьмак 4, Ремейк, Геймеры, Ознакомление, Движок, Ведьмак 3: Дикая охота, Видео, YouTube, Длиннопост
Игра "Ведьмак" (2007) ремейк UE 5 и кое - какие подробности Ведьмак, Ведьмак 1, Cd projekt Red, Ведьмак 4, Ремейк, Геймеры, Ознакомление, Движок, Ведьмак 3: Дикая охота, Видео, YouTube, Длиннопост

UPD:

Если хотите узнать про скрытые квесты,то вот ссылка :

Скрытые квесты в игре "Ведьмак 3" в Белом Саду

Если хотите узнать про пасхалки и отсылки из игр "Ведьмак 3" и "Ведьмак"(2007),то вот ссылка:

Пасхалки и отсылки в игре "Ведьмак 3" и "Ведьмак".(часть 1)

Если хотите узнать про пасхалки и отсылки из игр "Ведьмак 3" и "Ведьмак 2",то вот ссылка:

Пасхалки и отсылки в игре "Ведьмак 3" и "Ведьмак 2".(часть 1)

Показать полностью 8 1
[моё] Ведьмак Ведьмак 1 Cd projekt Red Ведьмак 4 Ремейк Геймеры Ознакомление Движок Ведьмак 3: Дикая охота Видео YouTube Длиннопост
13
9
Xatari
3 месяца назад

Пишем игру "Змейка"⁠⁠

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

О движке

Пишу я его на с++ с использованием графической библиотеке SDL, в качестве скриптового языка использую Питон.

Прошу прощения за скриншоты, но не понял как вставлять "правильный код", а вставлять цитатами было очень страшно и не красиво.

Для лиги лени сразу прикрепляю ссылку с готовым архивом:

Скачать архив

И демонстрация игры

Заранее спасибо. И так начнем.

Создаем пустой проект

Структура каталогов пустого проекта:

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Редактируем config.xml

config.xml - это файл который читается в движке первым.

имеет структуру xml

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Основная строка которая нас интересует

<AppMain value = "..\Assets\ScriptsP\AppMain.py" />

Application.Script.AppMain - это путь к скрипту с которого стартует приложение

Все конфиг нам больше не нужен.

Создаем Тайлы

В каталог /Assets/Tiles/ - добавляем следующие картинки (все имеют формат 120 на 120)

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост
  1. snakeApple.png - яблоко

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

2. snakeBody.png - часть тела змеи (кружочек зеленый)

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

3. snakeGrid.png - квадратик с полупрозрачными черными линиями(из него мы будем делать сетку)

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

4. snakeHeadDown.png - голова которая смотри вниз

5. snakeHeadLeft.png - голова которая смотри влево

6. snakeHeadRight.png - голова которая смотри вправо

7. snakeHeadUp.png - голова которая смотри вверх

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост
Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост
Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Создаем UI

Элементы ГУИ можно создавать как програмно так и задавать расположение в xml файлах.

Получается что то типа "Окна" - к которому прикреплены все элементы как дочерние.

создаем файл UISnake.xml

К основному объекту типа xdCanvas прикрепляем

Объект типа xdText с именем tFPS который будет счетчиком фпс

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Аналогично добавляем

Объект типа xdText с именем tObjects который будет счетчиком количества объектов на экране

Объект типа xdText с именем tScore который будет отображать текущий счет.

Ниже полный текст файла UISnake.xml

<?xml version="1.0"?>

<object type="xdCanvas">

<position x="0" y="0" />

<scale value="1" />

<order value="999998" />

<name value="UISnake" />

<relative value="XD_UI" />

<alignment value="XD_UI_ALI_NONE" />

<anchorVertical value="XD_UI_ANC_V_TOP" />

<anchorHorizontal value="XD_UI_ANC_H_LEFT" />

<childs>

<object type="xdText">

<position x="-100" y="-20" />

<text value="FPS:" />

<font name="..\Assets\Fonts\Comfortaa.ttf" size = "10" style = "1" colorR = "93" colorG = "86" colorB = "79" />

<name value="tFPS" />

<anchorVertical value="XD_UI_ANC_V_DOWN" />

<anchorHorizontal value="XD_UI_ANC_H_RIGHT" />

</object>

<object type="xdText">

<position x="-100" y="-10" />

<text value="Objects:" />

<font name="..\Assets\Fonts\Comfortaa.ttf" size = "10" style = "1" colorR = "93" colorG = "86" colorB = "79" />

<name value="tObjects" />

<anchorVertical value="XD_UI_ANC_V_DOWN" />

<anchorHorizontal value="XD_UI_ANC_H_RIGHT" />

</object>

<object type="xdText">

<position x="20" y="20" />

<text value="Счет:" />

<font name="..\Assets\Fonts\Comfortaa.ttf" size = "30" style = "1" colorR = "100" colorG = "50" colorB = "50" />

<name value="tScore" />

<anchorVertical value="XD_UI_ANC_V_TOP" />

<anchorHorizontal value="XD_UI_ANC_H_LEFT" />

</object>

</childs>

</object>

Создаем файл UISnakeMenu.xml

Который будет отвечать за меню начала игры и отображения результатов

Иерархия нашей меню будет следующая

  1. UISnakeMenu(xdCanvas) - основной канвас окна

    1. uiPanelCenterMenu(xdPanel) - панелька на которой все нарисуем

    2. tCaption(xdText) - Заголовок "Пиратская Змейка"

    3. tGameOver(xdText) - Надпись "Начните новую игру", или "Game over" (значение будем задавать скриптом)

    4. tScoreEnd(xdText) - Счет, если был проигрыш (значение будем задавать скриптом)

    5. btnNewGame(xdButton) - Кнопка новая игра (при нажатии которой игра начинается сначала)

    6. btnExit(xdButton) - Кнопка выход из игры

Из непонятного у нас только xdPanel и xdButton

это по сути те-же элементы UI, что и xdText - описанные выше, только с небольшими отличиями

xdPanel - элемент интерфейса отражает физическую панельку, на которой мы можем что то рисовать.

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

xdButton - это кнопка с текстом(есть разные варианты можно картинками задать статусы, но у нас кнопка простая по умолчанию)

Принципиально не отличается от текста вся логика будет задаваться на стороне скрипта.

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Ниже полный текст файла UISnakeMenu.xml

<?xml version="1.0"?>

<object type="xdCanvas">

<position x="0" y="0" />

<scale value="1" />

<order value="999998" />

<name value="UISnakeMenu" />

<relative value="XD_UI" />

<alignment value="XD_UI_ALI_NONE" />

<anchorVertical value="XD_UI_ANC_V_TOP" />

<anchorHorizontal value="XD_UI_ANC_H_LEFT" />

<childs>

<object type="xdPanel">

<position x="0" y="0" />

<sizePrecent x="20" y="50" />

<name value="uiPanelCenterMenu" />

<anchorVertical value="XD_UI_ANC_V_CENTER" />

<anchorHorizontal value="XD_UI_ANC_H_CENTER" />

<childs>

<object type="xdText">

<position x="0" y="+30" />

<text value="Пиратская Змейка" />

<font name="..\\Assets\\Fonts\\Comfortaa.ttf" size = "20" style = "1" colorR = "93" colorG = "86" colorB = "79" />

<name value="tCaption" />

<anchorVertical value="XD_UI_ANC_V_TOP" />

<anchorHorizontal value="XD_UI_ANC_H_CENTER" />

</object>

<object type="xdText">

<position x="0" y="80" />

<text value="Начните новую игру" />

<font name="..\\Assets\\Fonts\\Comfortaa.ttf" size = "18" style = "1" colorR = "190" colorG = "86" colorB = "79" />

<name value="tGameOver" />

<anchorVertical value="XD_UI_ANC_V_TOP" />

<anchorHorizontal value="XD_UI_ANC_H_CENTER" />

</object>

<object type="xdText">

<position x="0" y="100" />

<text value="Счет:" />

<font name="..\\Assets\\Fonts\\Comfortaa.ttf" size = "18" style = "1" colorR = "93" colorG = "86" colorB = "79" />

<name value="tScoreEnd" />

<anchorVertical value="XD_UI_ANC_V_TOP" />

<anchorHorizontal value="XD_UI_ANC_H_CENTER" />

</object>

<object type="xdButton">

<position x="0" y="0" />

<size x="130" y="50" />

<name value="btnNewGame" />

<text value="Новая Игра" />

<anchorVertical value="XD_UI_ANC_V_CENTER" />

<anchorHorizontal value="XD_UI_ANC_H_CENTER" />

</object>

<object type="xdButton">

<position x="0" y="70" />

<size x="130" y="50" />

<name value="btnExit" />

<text value="Выход" />

<anchorVertical value="XD_UI_ANC_V_CENTER" />

<anchorHorizontal value="XD_UI_ANC_H_CENTER" />

</object>

</childs>

</object>

</childs>

</object>

```

Скрипты

Теперь переходим к самому интересному к логике.

Файл globals.py - вспомогательный скрипт который в данной игре не имеет смысла большого, можно обойтись без него.

но по замыслу тут находятся какие-то глобальные константы и методы

например есть метод Debug который позволяет отлаживать скрипты в режиме реального времени в Visual Studio Code ооооочень удобно, но об этом в другой раз.

Создаем файл AppMain.py

Импортируем пространство имен xd

import xd # Импорт в питон методов движка. почти все находится в пространстве имен xd

добавляем самый первый метод OnStart

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

После чего делаем обертку в виде класса Application это не обязательно , но автору это кажется красивым

Application.OnStart - будет вызываться при старте сцены.

application - экземпляр класса приложение.

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

в глобальный метод **OnStart** добавляем вызов:

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Минимальный скрипт готов.

Далее создаем пустую сцену, а именно файл SceneGame.py

Сцена это объект порождённый от объекта xd.GameScene со следующими методами:

OnLoad - вызывается после загрузки сцены

OnStart - вызывается при старте сцены

OnFrame - вызывается каждый кадр.

Unload - метод где будем удалять все, что создали.

Текст файла SceneGame.py с минимальной сценой.

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Далее в файле AppMain.py добавляем следующие строки

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

где в

xd.GameScene.LoadScene("SceneGame.SceneGame", self.OnLoadScene)

Вызываем метод движка xd.GameScene.LoadScene для загрузки сцены.

1. "SceneGame.SceneGame" - строка с указанием класса сцены в питон скрипте. В формате [Имя файла скрипта].[Имя класса в файле]

2. self.OnLoadScene - обработчик вызываемый после загрузки сцены.

Реализация метода SceneGame.OnLoadScene

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

На данный момент полный текст файла AppMain.py:

```python

import xd # type: ignore

import globals

globals.Debug(False)

class Application:

""" Глобальный класс сцена"""

def OnStart(self):

xd.GameScene.LoadScene("SceneGame.SceneGame", self.OnLoadScene)

def OnLoadScene(self, scene):

self.scene = scene

xd.App.SetGame(scene)

pass

#Экземпляр класса сцены

application = Application()

def OnStart():

"""Обработчик при старте сцены (вызывается движком)"""

application.OnStart()

return 1

После запуска должно быть пустое окно с синеватым фоном. Если это так, от значит мы все делаем правильно.

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Файл AppMain.py - мы больше не меняем. Он принял конечный вид.

В методе SceneGame.OnStart добавляем следующий код

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

На любой сцене есть корневой объект с именем rootObject куда можно прикреплять объекты. Не прикрепленные объекты не отображаются на сцене (игнорируются циклом рендера)

Метод xd.BaseObject.FindByNameS это метод FindByNameS - ищет игровой объект на сцене с по имени. и возвращает ссылку на объект.

Метод xd.Panel.to - преобразовывает ссылку в Объект типа xdPanel есть аналогичные методы для любых предопределенных объектов xd.Text.to , xd.Button.to и др.

После запуска мы увидим Окно игровое с отображаемой меню.

Далее добавляем на сцену окно из файла UISnake.xml для отображения текущих игровых данных а запоминаем ссылки на элементы интерфейса см которыми после будем работать

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Первый обработчик событий. Начнем с простого, сделаем обработчик, который выходит из игры.

У нас есть кнопка для выходи из игры с именем btnExit

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Первая сцена и обработчик готовы

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

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Далее добавим в проект вспомогательный класс GameData

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

С высоты птичьего полета класс GameData выглядит так:

Пишем игру "Змейка" Gamedev, Движок, Разработка, Видео, RUTUBE, Короткие видео, Длиннопост

Методы:

  1. GameData.Unload - метод где описываются удаления элементов аля деструктор

  2. GameData.OnStart - обработчик который вызываем при старте приложения

  3. GameData.OnTick - обработчик таймера (обсудим позже)

  4. GameData.OnKeyPressed - обработчик нажатия клавиши

  5. GameData.GameOver - Метод проигрыша

  6. GameData.NewGame - метод новая игра

  7. GameData.IsPause - проверить на паузе ли игра

  8. GameData.NewApple - добавить новое яблоко на сцену

  9. GameData.DrawGrid - нарисовать сетку

Реализация этих методов будет позже и постепенно. Сейчас сосредоточимся на следующем.

....

Часть первая закончена (лимит картинок в посте закончился)

Спасибо, кто дочитал, и прокомментировал.

Показать полностью 24
[моё] Gamedev Движок Разработка Видео RUTUBE Короткие видео Длиннопост
6
88
lisemeb594
4 месяца назад
Лига Политики

Ответ на пост «Толстенькое депутатство в 21 год...»⁠⁠3

Для пикабушников вот вам материалы про него.

Интервью с ним - топит за экологию.

Вот новость от него:

Иронично, но он хочет ввести утреннюю зарядку для школьников.

И да, он против бродячих собак.

https://www.youtube.com/watch?v=dJsca6ndTaQ

https://ria.ru/20250418/predlozhenie-2012054241.html

И да, он нормально говорит на русском

Ответ на пост «Толстенькое депутатство в 21 год...» Политика, Студенты, Армяне, Госдума, Абсурд, Движок, Видео, YouTube, Ответ на пост, YouTube (ссылка), Длиннопост
Показать полностью 1 2
Политика Студенты Армяне Госдума Абсурд Движок Видео YouTube Ответ на пост YouTube (ссылка) Длиннопост
50
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии