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

Камни в ряд онлайн!

Казуальные, Три в ряд, Мультиплеер

Играть

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

  • cristall75 cristall75 6 постов
  • 1506DyDyKa 1506DyDyKa 2 поста
  • Animalrescueed Animalrescueed 35 постов
Посмотреть весь топ

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

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

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

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

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

Концепт приложения DeadHead⁠⁠

14 дней назад
Перейти к видео

Общая идея

DeadHead — концептуальное приложение для социального взаимодействия, позволяющее в реальном времени наблюдать за цифровой активностью друзей.

Основная идея — просмотр чужих экранов как коротких видео (по аналогии с TikTok или Reels).

Ключевые механики

Стрим экранов друзей

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

Формат «как TikTok»

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

Режим присутствия

Показывает, кто из друзей сейчас онлайн и чем занят (например: «Аня смотрит YouTube», «Максим пишет сообщение»).

Временные сторис

Пользователи могут записывать 15‑секундные фрагменты своей активности и делиться ими как сторис.

Особенности интерфейса

Главная лента

Вертикальный скролл с экранами друзей. Каждый «кадр» — скриншот или мини‑стрим экрана длительностью 5–10 секунд.

Аватарки‑индикаторы

В углу каждого фрагмента — аватар друга и иконка приложения, которое он использует.

Интерактивные элементы

Под каждым фрагментом — кнопки: «Лайк», «Комментарий», «Поделиться», «Скрыть».

Фильтр активности

Возможность отсеивать определённые приложения (например, не показывать мессенджеры или банковские приложения).

Принципы приватности

Явное согласие

Друг должен подтвердить доступ к своему экрану.

Зоны исключения

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

Таймер трансляции

Автоматическое отключение стрима через 30 секунд, если пользователь не продлит сеанс.

Уведомления

Каждый раз, когда кто‑то смотрит ваш экран, вы получаете push‑уведомление.

Потенциальные сценарии использовании

Социальное сближение

Видеть, что друзья смотрят/читают, и обсуждать это в реальном времени.

Обмен рекомендациями

«О, ты смотришь этот сериал? Советую ещё вот этот!».

Совместный просмотр

Синхронно смотреть одно и то же видео и реагировать на него.

Игры и вызовы

Например: «Кто быстрее найдёт нужную информацию в браузере?» или «Угадай приложение по скриншоту».

Возможные монетизации:

Премиум‑подписка

Дополнительные фильтры, аналитика активности, кастомные аватары.

Брендированные эффекты

Партнёрские стикеры и рамки для сторис.

Виртуальные подарки

Отправка анимированных подарков друзьям во время стрима.


p.s как вам тулза ? 😂 юзали бы ?

Показать полностью
Приложение Android Программа Сайт Google Приложение на Android Openai Чат-бот Информационная безопасность Стартап Приложение на iOS Бот Короткие видео Вертикальное видео Технологии Тестирование Программирование Автоматизация Тренд Видео Длиннопост
5
Pluegou
Компьютер это просто

Если делали лого виндовс создатели были русскими⁠⁠

15 дней назад
1/19
Перейти к видео
Показать полностью 19 1
Windows Microsoft Компьютерная помощь Компьютерное железо Python Linux Россия Apple Видеокарта Игровой ПК Программа Информатика Тестирование Android Баг Компьютер Сборка компьютера Видео
2
15
TechSavvyZone
TechSavvyZone

Технологии: "Android" История эволюции⁠⁠

29 дней назад

Операционная система Android уже более 16 лет на рынке смартфонов. Ее версии каждый год сменяются одна за другой, и простому пользователю трудно уследить за ними и понять: а что нового добавили в этот раз? С чего все начиналось, и как продукт Google проходил свой тернистый путь от очередного конкурента Symbian до самой распространенной в мире мобильной ОС.

История появления

Еще в 2003 году, во время бурного развития кнопочных телефонов, программист Энди Рубин и его приятели зарегистрировали компанию Android Inc. Она занялась разработкой новой операционной системы для смартфонов. Но к тому времени стали широко распространяться смартфоны на ОС Symbian, поэтому выпустить что-то реально конкурирующее с ней было трудно. Спустя два года разработки у команды Энди попросту кончились средства, без которых продолжить дальнейшую работу было невозможно.

В 2005 компанией Android Inc. неожиданно заинтересовалась мегакорпорация Google, которая выкупила ее у владельцев за 50 миллионов долларов. 5 ноября 2007 года Google сообщила о создании мобильной платформы Android, обладающей открытым исходным кодом. Именно эту дату принято считать днем рождения Android, хотя первое устройство на данной ОС появились на год позже — лишь в конце 2008-го.

Чтобы обозначать версии системы не только цифрами, Google решила использовать последовательность букв латинского алфавита. Первые разработки получили кодовые названия Astro Boy и Bender — в честь роботов из аниме Астробой и мультсериала Футурама. Однако из-за проблем с авторскими правами компания вынуждена была отказаться от использования имен персонажей. С третьей версии системы, именованной Cupcake, пошла традиция использовать в качестве кодовых «сладкие» названия. Сохранилась она и до сих пор.

Изначально Android не поражал воображение своими возможностями. Особенно по сравнению с самой популярной мобильной ОС того времени — Symbian. Да и появившаяся чуть раньше iPhone OS (iOS в девичестве) выглядела во многом интереснее. Но разработчики не тратили время зря, и со временем вводили в систему все новые и новые возможности, попутно избавляя ее от багов и недоработок.

Android 1.x (2008-2009)

В сентябре 2008 года Google анонсировала первый смартфон на новой операционной системе — T-Mobile G1. Он предназначался для американского рынка и было разработано совместно с компанией HTC. Устройство с Android 1.0 предлагало пользователю магазин приложений Android Market, несколько домашних экранов, произвольное размещение папок и ярлыков на главном экране (которое у iOS появилось только недавно), уведомления, мультизадачность и поддержку графического API OpenGL ES 1.1.

Международная версия смартфона под названием HTC Dream изначально поставлялась с Android 1.1, выпущенной 9 февраля 2009 года. Она содержала в себе множество мелких улучшений и исправлений.

27 апреля, всего два месяца спустя, был выпущен Android 1.5. Именно с этой версии ОС стала доступна и другим производителям, помимо HTC. Она принесла с собой много привычных вещей, без которых и сегодня использование смартфона немыслимо: таких, как поворот экрана, запись видео, папки для ярлыков приложений и виджеты. И, что самое главное — поддержку виртуальных клавиатур. В первых версиях системы эта функция отсутствовала, и в обязательном порядке нужно было использовать физическую клавиатуру устройства.

Через полгода, 15 сентября, свет увидела новая версия Android — 1.6. В ней сняли ограничение экрана в 320 точек по ширине и 480 по высоте. Теперь устройства могли оснащаться качественными панелями с разрешением до 800х480. Была улучшена работа с Play Market, где стало появляться все больше и больше разнообразных сторонних приложений. Система получила доработки для галереи и интерфейса камеры, позволяя более удобно и интуитивно управлять ими.

Android 2.x (2009-2010)

Первое «большое» обновление Android 2.0 было выпущено 26 октября 2009 года. Оно принесло поддержку HTML5 в браузере, новые функции графического ускорения интерфейса и большое количество мелких доработок. Именно распространение «второго» Андроида в начале 2010 года ознаменовало собой начало заката устройств на конкурентных Symbian и Windows Mobile. С этого момента началось постепенное становление «зеленого робота» в качестве самой распространенной мобильной операционной системы.

В Android 2.1, выпущенный 12 января 2010 года, была внедрена поддержка «живых» обоев. Это было красиво и необычно для мобильных устройств того времени. Однако такие обои значительно сокращали время работы из-за усиленного расхода аккумулятора.

Android 2.2 увидел свет 20 мая того же года. Несмотря на «некруглую» цифру, он стал достаточно крупным обновлением. Разработчиками была произведена большая оптимизация производительности и потребляемой ОС памяти, вследствие чего была ускорена работа программ и повышена плавность интерфейса. Добавилась поддержка HD-экранов с разрешением до 1280 точек по большей стороне, а также возможность использовать смартфон как точку доступа Wi-Fi или USB-модем. Система получила поддержку API OpenGL ES 2.0, что значительно расширило возможности графики для новых игр.

6 декабря 2010 года был представлен Android 2.3. Если в прошлом обновлении сосредоточились на повышении производительности, то в этом — на оптимизации расхода батареи и улучшении времени автономной работы. Появилась поддержка модулей NFC, нескольких камер, интернет-телефонии, а также новых датчиков — барометра и гироскопа.

Android 3.x–4.x (2011–2013)

Android 3.0, представленный 22 февраля 2011 года, стал специальным ответвлением ОС для планшетов. Исходный код системы Google, впервые за всю ее историю, решила не публиковать. В числе изменений была оптимизация работы с экранами высокого разрешения, улучшенная многозадачность, поддержка внешних устройств ввода — клавиатур и мышей.

Все эти новшества перекочевали в Android 4.0, который появился уже через несколько месяцев — 19 октября. С его выходом в свет Google признала эксперимент с делением ОС на категории устройств неудачным, вновь вернувшись к универсальному решению, подходящему и для смартфонов, и для планшетов.

Четвертая версия системы стала новой во всех смыслах этого слова. Изменения коснулись как ее внешнего вида, так и внутреннего устройства. Новый доработанный интерфейс стал более интуитивным, предлагая заметно больше возможностей. Внутренние улучшения коснулись переработанной многозадачности, новых функций для работы с камерой, поддержки Wi-Fi Direct и множества других мелких доработок.

27 июня 2012 года был выпущен Android 4.1. Так с четвертой версии система стала требовательнее к оборудованию, в обновлении внедрили новую технологию интерфейса под названием Project Butter. Она основана на работе вертикальной синхронизации с тройной буферизацией, благодаря которой ОС стала работать намного плавнее. Для планшетов были внедрен новый интерфейс, более соответствующий концепции единой версии ОС для всех устройств.

С Android 4.2, увидевшего свет 29 октября, стало доступно новое удобство — использование профилей пользователей. Теперь можно было отдать устройство в пользование другому человеку, просто сменив учетную запись профиля — аналогично системе пользователей у десктопной ОС Windows.

24 июля 2013 года был представлен Android 4.3. Его главным новшеством стала поддержка API OpenGL ES 3.0, благодаря которому на ОС теперь могли появиться более красивые и графически продвинутые игры.

Завершающим этапом для четвертой версии системы стал Android 4.4, отмечающий день рождения 31 октября того же года. Именно в этой ОС появилась знаменитая голосовая команда «ОК, Google», позволяющая задать смартфону выполнение каких-то несложных действий — например, поиск информации в интернете, воспроизведение музыки или отправку электронной почты.

Android 5.x–7.x (2014–2016)

Очередная страница в истории системы открылась 3 ноября 2014 года. Android 5 принес с собой новый переработанный интерфейс Material Design, целью которого стало сделать взаимодействия пользователя с устройством более простым и удобным. Несмотря на то, что на момент появления пятой версии ОС большинство смартфонных процессоров были 32-битными, в ней впервые появилась поддержка 64-битных вычислений.

Запуск приложений и переключение между ними ускорилось, а потребление оперативной памяти снизилось. Все это — благодаря новой среде выполнения Android Runtime (ART). Она появилась в Android 4.4 в качестве опциональной, но лишь в пятой версии ОС стала основной. С ART приложения во время установки распаковываются единожды, тогда как с ее предшественницей Dalvik приходилось делать это при каждом их запуске.

28 мая 2015 года был выпущен Android 6. Впервые за историю ОС новый номер означал не основательно переработанную версию системы, а всего лишь небольшой апдейт. Такая схема сохранилась и по сегодняшний день.

Шестая версия получила расширенный контроль над правами приложений. Она могла обеспечить дополнительную экономию энергии благодаря функции Doze — активации глубокого спящего режима при отсутствии движения устройства. Появилась поддержка системы электронных платежей Android Pay (сейчас она называется Google Pay) и поддержка сканеров отпечатков пальцев на уровне платформы — ранее она ложилась на плечи производителей устройств.

Android 7 увидел свет 22 августа 2016 года. В числе новшеств — разделение экрана для одновременной работы с двумя приложениями, фоновое переключение задач, поддержка режима «картинка в картинке, функций виртуальной реальности и ярлыков действий для приложений. Также появилась поддержка графического API Vulkan 1.0 — преемника «взрослого» OpenGL и мобильного OpenGL ES, способного расширить возможности графики для смартфонов до уровня компьютеров и консолей.

Android 8.x–11.x (2017–2020)

В Android 8, который был представлен ровно через год, Google заметно обновила интерфейс. Изменился дизайн уведомлений, появились динамические иконки и значки событий на них. В систему был добавлен API нейронных сетей, который позволяет использовать вычислительные мощности смартфонных процессоров для улучшения фото- и видеосъемки. Одновременно появилось и ответвление Android Go — упрощенная оптимизированная версия ОС, предназначенная для бюджетных смартфонов с малым объемом оперативной памяти.

Android 9 появился 6 августа 2018 года. В нем добавили адаптацию интерфейса под экраны с различными вырезами, оптимизировали производительность системы, а также научили ОС распознавать редко используемые приложения и отзывать у них разрешения. Обновленная система научилась работать с Vulkan 1.1.

Юбилейная десятая версия Android была выпущена 3 сентября 2019 года. Для нее добавили поддержку смартфонов-раскладушек, переработали систему уведомлений и расширили поддержку кастомизации интерфейса с помощью тем, значков и шрифтов.

Очередным небольшим обновлением 8 сентября 2020 года стал Android 11. Ключевое изменение –совместимость с мобильными сетями 5G. Также была улучшена поддержка «раскладушек» и нейронных сетей.

Android 12.x–15.x (2021–2024)

4 октября 2021 года Google запускает очередную версию ОС Android — 12. Система заметно «похорошела» благодаря новой концепции интерфейса Material You. Теперь цветовая гамма для системных меню и приложений создается с учетом цветов обоев, что позволяет организовать единое пользовательское пространство без резких перепадов цветов. Вдобавок к этому были доработаны значки и внесены изменения в системную анимацию, благодаря чему она стала более плавной и естественной. Также был усилен контроль за фоновыми приложениями – теперь заряд должен расходоваться чуть экономнее.

Финальная версия Android 13 появилась уже через несколько месяцев, 15 августа 2022 года. Отправка уведомлений стала одним из разрешений, которое теперь выключено по умолчанию. Благодаря этому избавиться от назойливых уведомлений стало намного проще. Появилась возможность ограничивать взаимодействие приложений и файловой системы: вместо доступа ко всему накопителю теперь можно выбрать только определенные файлы. А языковые настройки теперь можно менять для каждого приложения отдельно.

4 октября 2023 года миру был представлен Android 14. В нем была улучшена персонализация экрана блокировки, расширены возможности использования нескольких профилей, а также в очередной раз проделана работа по оптимизации энергопотребления приложений в фоне. С этой версии Google отказалась от нативной поддержки 32-битных вычислений: теперь любая программа для работы должна иметь 64-разрядную версию, а установка приложений для Android 5.1 и более старых запрещена.

Android 15 был выпущен 3 сентября 2024 года. Появился мониторинг износа аккумулятора — теперь его состояние можно узнать, не прибегая к специальным программам. Новая функция «Private Space» позволяет создать секретный профиль, приложения и данные из которого надежно «спрятаны» и не попадут в основной аккаунт. Для экономии места можно задействовать архивацию приложений — для этого они будут удалены, но при повторном скачивании все их данные будут восстановлены до состояния при последнем запуске. К тому же, появилась возможность менять голосовой помощник по умолчанию: заметное удобство для тех, кому не нравится Google Ассистент.

Заключение

Опытные пользователи, пользующиеся смартфонами Android с ее первых выпусков, насчет списка новшеств в современных версиях ОС наверняка скажут «Да разве это изменения!». И будут правы. Действительно, в последние годы почти все нововведения в системе сосредоточены вокруг внешнего вида и мелких доработок. Но это говорит в первую очередь о том, что Android достиг своей зрелости. Его первые версии обрастали необходимым функционалом и внутренними изменениями с каждым новым выпуском. Однако уже после Android 5 бурный рост закончился, и в ход пошла более тонкая работа по мелким улучшениям и ежегодной актуализации системы.

С одной стороны, медленный «рост» системе сейчас даже в плюс. До сих пор можно пользоваться старыми версиями от Android 6 и выше — большинство приложений пишется с учетом именно шестой версии как минимальной. С другой стороны, в последнее время Google все настоятельнее рекомендует разработчиками создавать их как минимум для Android 8.

Компания начала «закручивать гайки» с появлением Android 14. Конечно же в первую очередь для того, чтобы сократить актуальный парк версий ОС и стимулировать пользователей покупать новые смартфоны. Но, если посмотреть на календарь, то поддержку восьмой версии системы получили многие смартфоны даже 2016 года выпуска — а это целых восемь лет назад. При этом Android, в отличие от конкурентной iOS, не ограничен единственным источником приложений в виде встроенного магазина. Поэтому даже устройствами на Android 5 вполне можно пользоваться — если, конечно, они до сих пор «живы» и для плавной работы им хватает производительности.

Чего ждать от обновленной версии популярной мобильной системы в 2025 году? Android 16 обещает принести с собой доработанную функцию изменения частоты экрана, которая будет подстраиваться под приложения, расширенные возможности вибрации для различных игр и приложений, а также одновременную передачу звука по Bluetooth на несколько устройств.

Утечки говорят, что новая ОС в этот раз появится уже в мае. Но до этого времени Google еще не раз доработает свое детище, добавив в него очередные улучшения — пусть не фундаментальные, но все-таки полезные и приятные. Система старается не отставать от современности, и постоянно предлагает пользователям что-то новое, при этом оставаясь открытой, гибкой и настраиваемой с учетом пожеланий владельца гаджета. Именно благодаря этому Android год за годом остается выбором миллионов пользователей во всем мире и самой популярной мобильной ОС.

Показать полностью 9
IT Технологии Программист Программа Инженер Android Приложение на Android Тестирование История развития Длиннопост
0
5
user11249120
user11249120
Лига программистов

Apple выпустила Swift SDK для написания Android-приложений⁠⁠

1 месяц назад
Apple выпустила Swift SDK для написания Android-приложений

Apple неожиданно открыла новую страницу в истории Swift.

Компания представила официальный Swift SDK для Android, позволяющий писать нативные Android-приложения на фирменном языке, изначально созданном для iOS и macOS.Как это работает

Новый SDK — результат многомесячной работы Swift Android Workgroup, открытого сообщества, куда может присоединиться любой разработчик. С его помощью можно:

  • собирать нативные Android-приложения на Swift;

  • переносить существующие Swift-пакеты — более 25% уже совместимы с Android;

  • интегрировать Swift-код с Java через проект swift-java, автоматически генерирующий безопасные биндинги между языками.

Apple опубликовала подробное руководство «Getting Started» и примеры кода, демонстрирующие полный цикл разработки Android-приложений на Swift.

Что это значит для экосистемы?

Релиз открывает дорогу к кроссплатформенным приложениям без использования Flutter, Kotlin Multiplatform или React Native.

Теперь компании смогут писать бизнес-логику один раз на Swift и использовать ее и в iOS-, и в Android-версиях.
Эксперты отмечают, что шаг Apple может снизить барьеры между мобильными экосистемами и ускорить развитие open-source сообщества Swift.

Что дальше?

По словам участников проекта, впереди — создание полноценного Android-Toolchain, улучшение совместимости со средами разработки и официальное внедрение CI-сборок.

Разработчики уже готовят документ с видением будущего Swift на Android, который определит приоритеты и стратегию развития.

Больше интересного в моем телеграмм канале EasyProgers - https://t.me/easyprogers

Показать полностью
[моё] Swift Android iPhone Apple Программа Тестирование Python Программирование Приложение
3
4
Pazitron
Pazitron
Видео

Пивной детокс⁠⁠

2 месяца назад
Перейти к видео
[моё] Вертикальное видео Короткие видео Игры Python Android Тестирование Игры на Android Видео Без звука
1
15
Mr.Rad
Mr.Rad

Как говорится олды поймут⁠⁠

2 месяца назад
Перейти к видео

Google придумала клавиатуру она выглядит и работает как старый дисковой телефон

Представьте сколько раз придётся backspace крутить, чтобы что-то удалить 😂😅 не для самых терпеливых

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

Показать полностью
Компьютерная помощь Google Технологии Клавиатура Япония Тестирование Программа Телефон Компьютер Инновации Сборка компьютера Компьютерное железо Windows Apple Android Видео Короткие видео
6
2
Pazitron
Pazitron
Видео

Гонки от нейросети Qwen⁠⁠

3 месяца назад
Перейти к видео

Попросил нейросеть написать игру "Гонки" с максимально реалистичными машинками вид сверху, результат насмешил.

Вот код игры для запуска через Pydroid 3 с комментариями от нейросети.

import pygame
import random
import sys

# Инициализация Pygame
pygame.init()

# Автоопределение размера экрана
info = pygame.display.Info()
SCREEN_WIDTH = info.current_w
SCREEN_HEIGHT = info.current_h

# Создание экрана
screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
pygame.display.set_caption("Гонка")

# Цвета
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (220, 30, 30)
GREEN = (30, 180, 30)
BLUE = (30, 100, 220)
YELLOW = (255, 220, 0)
GRAY = (100, 100, 100)
DARK_GRAY = (50, 50, 50)
LIGHT_BLUE = (170, 220, 255)
ORANGE = (255, 140, 0)

# Часы для управления FPS
clock = pygame.time.Clock()
FPS = 60

# Функция для рисования машины игрока (реалистичные пропорции)
def draw_player_car(x, y, width, height):
# Основной корпус автомобиля (горизонтальный прямоугольник)
pygame.draw.rect(screen, GREEN, (x, y, width, height))

# Крыша (меньше по размеру)
pygame.draw.rect(screen, LIGHT_BLUE, (x + width//6, y - 8, width * 2//3, 12))

# Капот
pygame.draw.rect(screen, (20, 150, 20), (x, y, width, height//4))

# Фары спереди
pygame.draw.circle(screen, YELLOW, (x + 8, y + height//2), 6)
pygame.draw.circle(screen, YELLOW, (x + width - 8, y + height//2), 6)

# Задние фары
pygame.draw.circle(screen, RED, (x + 8, y + height//4), 5)
pygame.draw.circle(screen, RED, (x + width - 8, y + height//4), 5)

# Колеса
pygame.draw.rect(screen, BLACK, (x + width//6, y - 3, 12, 6))
pygame.draw.rect(screen, BLACK, (x + width - width//6 - 12, y - 3, 12, 6))
pygame.draw.rect(screen, BLACK, (x + width//6, y + height - 3, 12, 6))
pygame.draw.rect(screen, BLACK, (x + width - width//6 - 12, y + height - 3, 12, 6))

# Функция для рисования машины противника
def draw_enemy_car(x, y, width, height):
# Основной корпус автомобиля
pygame.draw.rect(screen, RED, (x, y, width, height))

# Крыша
pygame.draw.rect(screen, (150, 0, 0), (x + width//6, y - 8, width * 2//3, 12))

# Капот
pygame.draw.rect(screen, (180, 20, 20), (x, y, width, height//4))

# Фары спереди
pygame.draw.circle(screen, YELLOW, (x + 8, y + height//2), 6)
pygame.draw.circle(screen, YELLOW, (x + width - 8, y + height//2), 6)

# Задние фары
pygame.draw.circle(screen, ORANGE, (x + 8, y + height//4), 5)
pygame.draw.circle(screen, ORANGE, (x + width - 8, y + height//4), 5)

# Колеса
pygame.draw.rect(screen, BLACK, (x + width//6, y - 3, 12, 6))
pygame.draw.rect(screen, BLACK, (x + width - width//6 - 12, y - 3, 12, 6))
pygame.draw.rect(screen, BLACK, (x + width//6, y + height - 3, 12, 6))
pygame.draw.rect(screen, BLACK, (x + width - width//6 - 12, y + height - 3, 12, 6))

# Класс игрока (машина)
class Player:
def __init__(self):
self.width = SCREEN_WIDTH // 10
self.height = SCREEN_HEIGHT // 12
# Позиционируем машину игрока в середине экрана
self.x = SCREEN_WIDTH // 2 - self.width // 2
self.y = SCREEN_HEIGHT // 2 # Середина экрана
self.speed = SCREEN_WIDTH // 80
self.road_width = SCREEN_WIDTH // 2
self.road_x = SCREEN_WIDTH // 4

def draw(self):
draw_player_car(self.x, self.y, self.width, self.height)

def move_left(self):
# Ограничиваем движение дорогой
if self.x > self.road_x + 5:
self.x -= self.speed

def move_right(self):
# Ограничиваем движение дорогой
if self.x < self.road_x + self.road_width - self.width - 5:
self.x += self.speed

def get_rect(self):
return pygame.Rect(self.x + 5, self.y + 2, self.width - 10, self.height - 4)

# Класс препятствия
class Obstacle:
def __init__(self):
self.width = SCREEN_WIDTH // 10
self.height = SCREEN_HEIGHT // 12
# Спавним только на дороге
road_width = SCREEN_WIDTH // 2
road_x = SCREEN_WIDTH // 4
self.x = random.randint(road_x + 10, road_x + road_width - self.width - 10)
self.y = -self.height
self.speed = SCREEN_HEIGHT // 120 + random.randint(0, 3)

def draw(self):
draw_enemy_car(self.x, self.y, self.width, self.height)

def move(self):
self.y += self.speed

def is_off_screen(self):
return self.y > SCREEN_HEIGHT

def get_rect(self):
return pygame.Rect(self.x + 5, self.y + 2, self.width - 10, self.height - 4)

# Класс дороги
class Road:
def __init__(self):
self.road_width = SCREEN_WIDTH // 2
self.road_x = SCREEN_WIDTH // 4
self.line_width = 10
self.line_height = SCREEN_HEIGHT // 15
self.line_speed = SCREEN_HEIGHT // 80
self.lines = []
# Инициализируем линии разметки
for i in range(25):
self.lines.append([self.road_x + self.road_width // 2 - self.line_width // 2,
i * (self.line_height + SCREEN_HEIGHT // 18)])

def draw(self):
# Рисуем дорогу
pygame.draw.rect(screen, DARK_GRAY, (self.road_x, 0, self.road_width, SCREEN_HEIGHT))

# Рисуем края дороги
pygame.draw.rect(screen, WHITE, (self.road_x - 2, 0, 2, SCREEN_HEIGHT))
pygame.draw.rect(screen, WHITE, (self.road_x + self.road_width, 0, 2, SCREEN_HEIGHT))

# Рисуем разметку
for line in self.lines:
pygame.draw.rect(screen, YELLOW, (line[0], line[1], self.line_width, self.line_height))

def move(self):
# Двигаем линии разметки
for line in self.lines:
line[1] += self.line_speed
# Если линия ушла за экран, возвращаем её наверх
if line[1] > SCREEN_HEIGHT:
line[1] = -self.line_height

# Класс кнопки
class Button:
def __init__(self, x, y, width, height, text, color=GREEN):
self.rect = pygame.Rect(x, y, width, height)
self.text = text
self.color = color
self.font = pygame.font.Font(None, 36)

def draw(self):
pygame.draw.rect(screen, self.color, self.rect)
pygame.draw.rect(screen, BLACK, self.rect, 2)
text_surf = self.font.render(self.text, True, BLACK)
text_rect = text_surf.get_rect(center=self.rect.center)
screen.blit(text_surf, text_rect)

def is_clicked(self, pos):
return self.rect.collidepoint(pos)

# Основная функция игры
def main():
player = Player()
road = Road()
obstacles = []
score = 0
game_over = False
game_started = False

# Таймер для создания препятствий
obstacle_timer = 0
obstacle_frequency = 100 # каждые 100 кадров

font_large = pygame.font.Font(None, 48)
font_medium = pygame.font.Font(None, 36)
font_small = pygame.font.Font(None, 28)

# Кнопки
start_button = Button(SCREEN_WIDTH//2 - 100, SCREEN_HEIGHT//2, 200, 60, "Начать игру")
restart_button = Button(SCREEN_WIDTH//2 - 100, SCREEN_HEIGHT//2 + 50, 200, 60, "Играть снова")
quit_button = Button(SCREEN_WIDTH//2 - 100, SCREEN_HEIGHT//2 + 120, 200, 60, "Выйти")

while True:
mouse_pos = pygame.mouse.get_pos()
mouse_clicked = False

# Обработка событий
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type == pygame.MOUSEBUTTONDOWN:
if event.button == 1: # Левая кнопка мыши
mouse_clicked = True

# Очистка экрана
screen.fill((80, 180, 80)) # Зеленый фон (трава)

if not game_started:
# Экран приветствия
title_text = font_large.render("ГОНКИ", True, WHITE)
screen.blit(title_text, (SCREEN_WIDTH//2 - title_text.get_width()//2, SCREEN_HEIGHT//4))

instruction_text = font_medium.render("Касайтесь левой/правой части экрана", True, WHITE)
screen.blit(instruction_text, (SCREEN_WIDTH//2 - instruction_text.get_width()//2, SCREEN_HEIGHT//3))

# Демонстрационная машина
draw_player_car(SCREEN_WIDTH//2 - 60, SCREEN_HEIGHT//2.5, 120, 40)

start_button.draw()
quit_button.draw()

if mouse_clicked:
if start_button.is_clicked(mouse_pos):
game_started = True
elif quit_button.is_clicked(mouse_pos):
pygame.quit()
sys.exit()

elif game_over:
# Экран окончания игры
road.draw()
player.draw()
for obstacle in obstacles:
obstacle.draw()

overlay = pygame.Surface((SCREEN_WIDTH, SCREEN_HEIGHT))
overlay.set_alpha(128)
overlay.fill(BLACK)
screen.blit(overlay, (0, 0))

game_over_text = font_large.render("ИГРА ОКОНЧЕНА!", True, RED)
screen.blit(game_over_text, (SCREEN_WIDTH//2 - game_over_text.get_width()//2, SCREEN_HEIGHT//4))

score_text = font_medium.render(f"Ваш счет: {score}", True, WHITE)
screen.blit(score_text, (SCREEN_WIDTH//2 - score_text.get_width()//2, SCREEN_HEIGHT//2.5))

restart_button.draw()
quit_button.draw()

if mouse_clicked:
if restart_button.is_clicked(mouse_pos):
return main() # Перезапуск игры
elif quit_button.is_clicked(mouse_pos):
pygame.quit()
sys.exit()

else:
# Игровой процесс
# Сенсорное управление
if pygame.mouse.get_pressed()[0]: # Левая кнопка мыши (или касание)
mouse_x, mouse_y = pygame.mouse.get_pos()
if mouse_x < SCREEN_WIDTH // 2:
player.move_left()
else:
player.move_right()

# Создание препятствий
obstacle_timer += 1
if obstacle_timer >= obstacle_frequency:
obstacles.append(Obstacle())
obstacle_timer = 0
# Увеличиваем частоту появления препятствий со временем
if obstacle_frequency > 40:
obstacle_frequency -= 0.3

# Движение объектов
road.move()
for obstacle in obstacles[:]:
obstacle.move()
# Удаление препятствий, ушедших за экран
if obstacle.is_off_screen():
obstacles.remove(obstacle)
score += 1

# Проверка столкновений
player_rect = player.get_rect()
for obstacle in obstacles:
if player_rect.colliderect(obstacle.get_rect()):
game_over = True

# Отрисовка игровых объектов
road.draw()
player.draw()
for obstacle in obstacles:
obstacle.draw()

# Отображение счета
score_text = font_medium.render(f"Счет: {score}", True, WHITE)
screen.blit(score_text, (20, 20))

# Отображение инструкции управления
control_text = font_small.render("← Лево / Право →", True, WHITE)
screen.blit(control_text, (SCREEN_WIDTH//2 - control_text.get_width()//2, SCREEN_HEIGHT - 40))

# Индикаторы управления
pygame.draw.rect(screen, (200, 200, 200, 100), (0, SCREEN_HEIGHT - 60, SCREEN_WIDTH//2, 30))
pygame.draw.rect(screen, (200, 200, 200, 100), (SCREEN_WIDTH//2, SCREEN_HEIGHT - 60, SCREEN_WIDTH//2, 30))

pygame.display.flip()
clock.tick(FPS)

# Запуск игры
if __name__ == "__main__":
try:
main()
except Exception as e:
print(f"Ошибка: {e}")
pygame.quit()




Показать полностью
[моё] Python IT Android Игры Программирование Программист Тестирование Видео Без звука Вертикальное видео Короткие видео Длиннопост
6
2
Pazitron
Pazitron
Видео

Круглибёрдс. От нейросети Qwen⁠⁠

3 месяца назад
Перейти к видео

Вспомнил игру, которая могла вызвать психические расстройства, Flappy Bird. Решил с помощью нейросети попробовать сделать аналог этой игры, но с небольшой доработкой, в виде встречного движения. Можно теперь позалипать и побеситься в два раза больше.

[моё] IT Программирование Python Тестирование Программист Android Игры Видео Без звука Вертикальное видео Короткие видео DeepSeek Openai Qwen
1
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии