Сколько строк кода linux

Почему в ядре Linux более 15 миллионов строк кода? [закрыто]

Каково содержание этой монолитной кодовой базы?

Я понимаю поддержку архитектуры процессора, безопасность и виртуализацию, но не могу представить, что это более 600 000 строк или около того.

Какие исторические и текущие причины драйверы включены в базу кода ядра?

Включают ли эти 15 с лишним миллионов строк каждый драйвер для каждого компонента оборудования? Если это так, то возникает вопрос, почему драйверы встроены в ядро, а не в отдельные пакеты, которые автоматически определяются и устанавливаются из идентификаторов оборудования?

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

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

Есть ли доказательства того, что размер будет проблемой через 50 с лишним лет из-за его, казалось бы, постоянно растущей природы?

Включение драйверов означает, что оно будет расти по мере изготовления оборудования.

РЕДАКТИРОВАТЬ : Для тех, кто думает, что это природа ядер, после некоторых исследований я понял, что это не всегда. Ядро не обязательно должно быть таким большим, так как микроядро Карнеги-Меллона было приведено в качестве примера «обычно под 10000 строк кода».

Драйверы поддерживаются в ядре, поэтому, когда изменение ядра требует глобального поиска и замены (или поиска и изменения вручную) для всех пользователей функции, это делает человек, который вносит изменения. Обновление вашего драйвера людьми, вносящими изменения в API, является очень хорошим преимуществом, вместо того, чтобы делать это самостоятельно, когда он не компилируется в более новом ядре.

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

Быстрый поиск вызвал дискуссию по поводу разработки драйверов внутри дерева и вне дерева .

Поддержание Linux в основном заключается в сохранении всего в основном репо. Сборка небольших урезанных ядер поддерживается параметрами конфигурации для управления #ifdef s. Таким образом, вы можете создавать крошечные урезанные ядра, которые компилируют только крошечную часть кода во всем репо.

Широкое использование Linux во встраиваемых системах привело к лучшей поддержке отказа от вещей, чем Linux имел годы назад, когда дерево исходных текстов ядра было меньше. Супер-минимальное ядро ​​4.0, вероятно, меньше супер-минимального ядра 2.4.0.

Согласно Cloc, работающему против 3.13, Linux содержит около 12 миллионов строк кода.

  • 7 миллионов LOC в драйверах /
  • 2 миллиона LOC в арке /
  • всего 139 тыс. LOC в ядре /

lsmod | wc на моем ноутбуке Debian показано 158 модулей, загруженных во время выполнения, поэтому динамическая загрузка модулей — это популярный способ поддержки аппаратного обеспечения.

Надежная система конфигурации (например make menuconfig ) используется для выбора кода для компиляции (и, более того, какой код не компилировать). Встраиваемые системы определяют свои собственные .config файлы только с помощью аппаратной поддержки, которая им нужна (включая поддержку аппаратного обеспечения, встроенного в ядро ​​или в виде загружаемых модулей).

Для любого любопытного, вот разбивка строки счета для зеркала GitHub:

drivers вносит большой вклад в количество строк.

Пока что ответы кажутся «да, кода много», и никто не решает вопрос с наиболее логичным ответом: 15M +? И ЧТО? Какое отношение имеет 15 миллионов строк исходного кода к цене рыбы? Что делает это таким невообразимым?

Linux явно многое делает. Гораздо больше, чем что-либо еще . Но некоторые ваши очки показывают, что вы не уважаете то, что происходит, когда он построен и используется.

Не все скомпилировано. Система сборки Kernel позволяет быстро определять конфигурации, которые выбирают наборы исходного кода. Некоторые экспериментальные, некоторые старые, некоторые просто не нужны для каждой системы. Посмотрите на /boot/config-$(uname -r) (на Ubuntu), make menuconfig и вы увидите, сколько исключено.

И это настольный дистрибутив с переменной целью. Конфигурация для встроенной системы будет включать только то, что ей нужно.

Не все встроено. В моей конфигурации большинство функций ядра построены в виде модулей:

Чтобы было ясно, они все могли быть встроены . Так же, как они могли быть распечатаны и превращены в гигантский бумажный бутерброд. Это просто не имело бы смысла, если бы вы не выполняли пользовательскую сборку для отдельной аппаратной работы (в этом случае вы бы уже сократили количество этих элементов).

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

Почти ничего не загружается.

Микроядра не одно и то же. Всего 10 секунд просмотра ведущего изображения на странице Википедии, на которую вы ссылаетесь , покажут, что они созданы совершенно по-другому.

Драйверы Linux являются внутренними (в основном динамически загружаемыми модулями), а не пользовательским пространством, и файловые системы также являются внутренними. Почему это хуже, чем использование внешних драйверов? Почему микро лучше для вычислений общего назначения?

Комментарии снова подчеркивают, что вы не получаете это. Если вы хотите развернуть Linux на дискретном оборудовании (например, в аэрокосмическом пространстве, TiVo, планшете и т. Д.), Вы конфигурируете его для сборки только необходимых вам драйверов . Вы можете сделать то же самое на вашем рабочем столе с make localmodconfig . В итоге вы получите крошечную сборку ядра с нулевой гибкостью.

Для таких дистрибутивов, как Ubuntu, допустим один пакет ядра размером 40 МБ. Нет, откажитесь от этого, на самом деле, это предпочтительнее сценария массового архивирования и загрузки, в котором хранится более 4000 плавающих модулей в виде пакетов. Он использует меньше дискового пространства для них, легче упаковывать во время компиляции, легче хранить и лучше для своих пользователей (у которых есть система, которая просто работает).

Будущее тоже не проблема. Скорость процессора, плотность диска / цены и пропускная способность кажутся намного быстрее, чем рост ядра. Пакет Kernel 200 МБ за 10 лет не станет концом для мира.

Это также не улица с односторонним движением. Код выгоняется, если он не поддерживается.

Источник

Количество строк кода в разных приложениях, системах

А вы задумывались из чего состоят системы которыми вы пользуетесь? Ответ на этот вопрос с вашей стороны меня не волнует (извините за возможную грубость). Сегодня, именно сегодня, я в любом случае расскажу вам о количестве строчек кода в разных проектах.

Начинаем с разных «операционок» — без них никуда.

1. Windows NT 3.1 — появилась на свет в далеком 1993, уже тогда содержала в себе больше 4 млн. строчек на С и С++.

2. Windows NT 3.5 — родилась на год позже своего брата на С++ о котором мы говорили ранее.

Количество строк кода достигало 8 млн. Умный читатель может вычесть из этого количества 4 млн. — получить число на которое выросло число строчек кода за год.

3. А теперь вышедшая в 1996 году Windows NT 4.0, содержащая в себе 11-12 млн. строк.

4. Windows 2000. Просто молчу. целых 30 млн строк.

Стоит признать, это не предел, ведь дальше у нас Windows XP.

5. Windows XP — около 45 млн. строчек. Если я сказал, что предыдущие ОС содержали в себе много кода — прошу простить.

6. Windows 10 — более 60 млн. строк. По настоящему сложная сборка.

Что-то мы застряли на «Винде». Давайте перейдем к Linux.

1. Linux 0.1 — 10 239 строчек. Не стоит забывать, что выпуск этой версии состоялся в 1991 году.

2. Linux 1.0.0 вышедший спустя 3 года состоял из более чем 170к строк.

3. Linux 1.2.0 появившийся на свет в 1995 был создан при помощь 300к строчек.

4. Linux 2.0.0 — 777 956 строк.

5. Linux 2.2.0 — 1 800 847 строк.

6. 2001 год — рождается Linux 2.4.0 состоящий из 3 377 902 строк кода.

7. Linux 2.6.0 — 5 929 913 строк.

8. Linux 2.6.32 — 12 606 910 строк.

9. 2017 год на дворе — выходит Linux 4.11.7 основанный на 18 млн. строчках.

Android? 12 млн. строк.

Переходим к браузерам.

1. Google Chrome — 7 млн. строчек кода на C++.

2. Firefox — 18 млн. строк. В создании Firefox замешаны C++, C, Javascript, Rust, HTML, CSS, XUL.

Переход к обсуждению приложений, программ, фреймворков.

1. Photoshop CS 6 — 10 млн. строк кода. Величайшее изобретение, ежедневно помогающее дизайнерам, верстальщикам, разработчикам, блогерам.

2. 1C — 3 млн. строк.

Читайте также:  Linux автоматическое подключение разделов диска

3. MySql — 12 млн. строчек кода.

4. Unreal Engine 3 — около 2 млн. строк на C++. Движок для создания игр.

5. Bootstrap — популярный фреймворк для создания сайтов и веб-приложений. Состоит из 70к строчек.

6. React — популярный фреймворк от Facebook. Чуть меньше 160к строк.

7. Vue.js — популярный фреймворк для создания пользовательских интерфейсов.

Надеюсь вам понравилось!

Найдены дубликаты

На счет линукса — некорректно.

Когда вы приводилиипримеры винды, вы брали операционную систему. А линукс — это не операционная система — это ядро операционной системы. А операционная система с ядром линукс будет, например: linux mint, ubuntu, cent os, debian, fedora и много других. Поэтому количество строк в линукс-дистрибубутивах будет больше. Например в линукс минте браузером по умолчанию является фаерфокс, а это значит, что там в ядре линукса 18млн. строк + в фаерфоксе тоже 18млн. строк и еще много всякой хрени.

Для unreal engine взяли скриншот окна cinema 4d. Автор «потрудился» над статьёй как надо.

Игра «Посадка на Луну» на калькуляторе МК60: 1 (одна) строка кода.

Полный бред полного чайника.

Почти все сравнения некорректны типа кода в ЯДРЕ LINUX коим явлется Linux и ПОЛНОЙ СИСТЕМЕ где в 10 раз больше в GNU окружении даже уровня IceWM, а в полноценном DE ещё процентов 20 накинет как в ядре. А винда это полная система, ядро у неё к слову, достаточно простое и рядом с NET не стояло, так же начиная с 2000/xp винды не особо росло.

И каков, интересно, процент строк, состоящих из одной только фигурной скобочки?

Умный читатель может вычесть из этого количества 4 млн. — получить число на которое выросло число строчек кода за год.

Люблю, когда мне льстят.

Винда это количество строк во всем проекте или только в ядре ? Тогда как то глупо сравнивать с сухим ядром линя.

Какой-то бред написан.

Про линукс — особенно.

Приводится количество строк кода. чего? Ядра и модулей?

Вспоминается количество матерных слов в комментариях к коду разных версий Linux

Некоторые кодят так, как Маяковский стихи писал, так что количество строк имхо далеко не показатель

Спасите — помогите!!

Ситуация такова: сегодня 1 октября с утра, как всегда, решил зайти на Пикабу и меня встретила вот такая картинка:

Так же при обращении к другим, некоторым сайтам появляется она.

Если захожу с другово (нового) компа или с телефона — всё нормально работает, понятно что дело именно в моей технике.

Поискал решение в интернете — опробовал практически всё что там описано (снижение уровня безопастности, отключение антивируса. там много чего понаписали) но ничего не помогло. Сейчас зашел на сайт (со старой техники) из под ТОР, но опять — таки не всегда пускает. смена цепочек неоднократная и не всегда помогает.

Браузер — Хром — на старой машине не пускает, на новой — без проблем.

Старый ноут (где проблема) — Вин7.

Другая, беспроблемная техника (чужая) — Вин10 и Андроид.

Вот теперь сижу, думаю — может это они там у себя что-то обновили в тихаря и это уже проблема «железа» на моем старом ноуте?

Пожалуйста, если кто знает — подскажите как это «починить».

Пс картинку поправил

Вон в чем дело, ахренеть. (((

Решение проблемы найдено. Большое спасибо Пикабушнику @Denis.NN — он «легким движением руки» помог мне разобраться с этой проблемой.))

Вот ветка с решением, таким «чайникам» как я может пригодится:

С чего начать делать игру? Твои первые шаги!

Это статья для тех, кто хочет сделать игру, но не знает с чего начать.

Я постараюсь, по шагам, объяснить весь процесс от желания до релиза. Погнали!

Меня зовут Александр Дударев. Я гейм-дизайнер с 10-летним стажем. Работал в многих компаниях, например в Playgendary. Делал разное: и казуалки для мобилок, и танковый шутер для PC.

Теперь я инди-разработчик. Живу за счёт продажи своих игр. Выпустили 4 игры для PC и Консолей. Сейчас разрабатываю игру They Are Here: Alien Abduction Horror — хоррор от 1-го лица, про похищение пришельцами.

Шаг 1. Запасись энтузиазмом

Энтузиазм — это топливо, которое ты сжигаешь при разработке. Оно позволит тебе делать игру после работы, когда устал, когда хочется отдохнуть.

Как пополнять запас энтузиазма? Смотри документалки, читай истории успеха разработчиков. Это мотивирует!

Например, вот классная документалка о инди-играх Indie Game: The Movie

Смотри по сторонам: на другие игры, фильмы, кино, на новые технологии. Желание изучить что-то новое или сделать что-то похожее — это то, что нужно.

Шаг 2. Собери команду или сделай всё сам!

Одному — проще. Проще придумать идею и принимать решения. Не надо спорить и описывать задачи. Сделать игру одному — возможно. Я например сделал 4 игры один.

С командой — лучше. Лучше получается качество. Твои решения критикуются, и результат улучшается. Можно распределить обязанности и сделать игру быстрее. Последнюю игру я делаю в команде со своей женой. Она отвечает за историю, критикует мои решения, помогает с артом, ищет стримеров.

Короче — есть команда, круто! Нет команды — делай всё сам, это не трудно.

Шаг 3. Сформулируй цель разработки

Очень важно понять — для чего тебе всё это?

1. Трудоустройство в геймдев компанию.

Продукт — портфолио. Приоритет — качество исполнения.

Вопросы: На какую должность хотим устроиться? В какую компанию(и)? Какими играми занимается компания(и)? Чему нужно научиться?

2. Научиться делать игры, освоить навык.

Продукт — опытный образец. Приоритет- новые знания.

Вопросы: Какой навык освоить? Как сделать какую-то конкретную штуку?

3. Рассказать о чём то важном.

Продукт — манифест. Приоритет — донести идею до масс.

Вопросы: Поймут ли мою идею? Как сделать продукт более массовым?

4. Сделать игру о которой мечтал.

Продукт — мечта. Приоритет — воплотить своё видение.

Вопросы: Что я хочу видеть? Чем можно пренебречь? Как закончить проект?

5. Построить свой бизнес.

Продукт — актив. Приоритет — получить доход.

Вопросы: Какие игры лучше продаются? Сколько времени займет разработка? Как сократить это время?

Цель может быть не одна. Цели могут меняться от игры к игре.

Короче — ты должен ответить на вопрос — зачем я делаю эту игру?

Шаг 4. Вспомни, что ты умеешь или любишь

Например, я и моя жена — фанаты фильмов ужасов про пришельцев. Типа «Знаки», «Мрачные небеса», «Секретные материалы». Поэтому нам проще работать над идеями и сценарием для They Are Here

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

Короче — твои умения и увлечения — это твои преимущества. Учитывай их при выборе платформы, движка, жанра игры. А пока, просто подумай над этим.

Шаг 5. Выбери платформу

Если просто, то есть 2 пути: Мобилки или ПК + Консоли.

Исходя из целей и умений нужно будет выбрать что-то одно. Это разные платформы, с разными играми, аудиторией и монетизацией.

— Массовая аудитория. Дети, пенсионеры, скучающие продавщицы. Это не геймеры. Всё должно быть очень понятно и просто.

— Играют по 1 — 5 минут. В перерывах, в очередях, на работе. Чтобы «убить время».

— Ценится простая яркая графика.

— Упор на простой, но залипательный кор-геймплей.

— Некоторые жанры (головоломки, аркады) — наиболее просты в разработке. Можно сделать небольшой прототип (1-5 уровней) и показать его работодателю, например.

— Не требуется красивая или сложная графика. Главное — чтобы было понятно.

— Простой геймплей и гейм-дизайн.

— Будет плюсом, если сам привык к мобильным девайсам и играм.

— Очень. Высокая. Конкуренция. Игр миллионы и почти все они — бесплатные. Игроки приходят только с рекламы. Нет рекламы — нет игроков. Нет денег.

— Монетизация. Нужно встраивать рекламу или внутри-игровые покупки в игру. Знать куда и как. Тестировать чтобы всё это работало.

— Аналитика. Нужно понимать что такое LTV. Почему он должен быть > чем CPI. Встраивать аналитику в игру.

— Будь готов делать по 20 прототипов или улучшать продукт, пока LTV не станет > CPI.

— Заработать денег небольшой команде, можно только с издателем. Я лично не знаю других путей.

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

Если решишься, узнай подробнее про:

— Гипер-казуальные игры (всё по теме гейм-дизайна и производства).

— Как найти издателя гипер-казуальных игр.

— Казуальные игроки (сложность казуальных игр и туториалы).

— Аналитика мобильных игр (CPI, LTV, Retention).

— Монетизация мобильных игр.

— Оптимизация мобильных игр.

— Google Play и App Store. Регистрация аккаунта разработчика. Правила и рекомендации. SEO.

— Рекламные медиаторы и сети (Iron Source, AdMob и т.п.).

— Сервисы рыночной аналитики мобильных игр (Sensor Tower, App Annie).

Читайте также:  Не могу сохранить файл hosts windows 10

Путь 2. ПК + Консоли

— Играют по несколько часов. Дома. Чтобы погрузиться в игру.

— Ценится реалистичная или стильная графика.

— Упор на интересную историю или глубокий геймплей.

— Меньше конкуренция, чем на мобилках. Особенно на консолях.

— Легче получить игроков и отзывы.

— Можно хорошо заработать портировав игру на консоли, с помощью издателя.

— Не надо возится с аналитикой и монетизацией.

— С детства понятная платформа (ПК / Консоль) и аудитория (Геймеры).

— Аудитория любит авторские, творческие, интересные игры.

— Будет плюсом, если сам играешь на компе или приставке.

— Плохо заходят простенькие игры (головоломки, аркады). Геймеры хотят получить опыт, вжиться в роль. Залипнуть надолго. Игра не должна выглядеть как что-то на пару минут.

— Игры дольше в производстве. Но можно хитрить — делать маленькие игры, которые выглядят как большие, а также использовать готовые ассеты.

— Нужно поработать над интересной идеей. Найти отличительные черты (USP), которые выделят проект.

— Нужно продумать интересную историю или геймплей.

— Более сложный геймдизайн.

— Большая требовательность к качеству графики.

Короче — ПК, а особенно Консоли это элитный бутик. На полке лежит то, что хорошо сделано. Это конкуренция качества. Если хочешь заработать, то сделай интересную игру, и обязательно портируй её на консоли (через издателя). Подумай как сэкономить на производстве!

Если решишься, узнай подробнее про:

— Геймдизайн компьютерных игр.

— Как питчить игры.

— Что такое вертикальный срез.

— Steam. Регистрация аккаунта разработчика. Оформление страницы. Тэги. Правила и рекомендации.

— Маркетинг и продвижение инди-игр на Steam (рекомендую http://howtomarketagame.com/ ) Как сделать крутой постер, трейлер, скриншоты, ГИФки.

— Портирование игр на консоли.

— Издатели игр на консолях.

— Конкурсы и фестивали инди-игр.

— Работа с инфлюенсерами (ютуберами, стримерами).

— Сервисы аналитики тэгов и жанров (SteamDB, Steamspy, SteamCharts, Game Data Crunch).

— Сервисы рассылки ключей (Keymailer, Woovit)

Шаг 6. Узнай про производство игр в целом

Не важно какую платформу ты выберешь. Интересуйся тем Как Делают Игры

Рекомендую погуглить про:

— Игровые механики, жанры и сеттинги.

— Геймдизайн. Есть книга Джесси Шелла, она хорошая, но большая. Можешь гуглить про конкретный жанр.

— Кор-геймплей и Мета-геймплей.

— Левел-дизайн. Лучше гуглить про отдельный жанр.

— Пользовательский интерфейс (UI) в играх.

— Ассеты и маркетплейсы.

Короче — сперва узнай поверхностно о всех непонятных терминах. Глубже изучай только то, что нужно будет для разработки конкретно твоей игры.

Шаг 7. Выбери движок и глянь уроки

Движок — это программа, в которой собирается игра. Это большой кухонный комбайн, в котором есть всё. Там программируется логика, собираются уровни, выставляется освещение, настраивается анимация, создаются материалы, вставляются звуки и т.п.

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

Если ты один, и не знаешь языков программирования, рекомендую Unreal Engine 4. Почему?

Во-первых, «Blueprints» — это визуальное программирование на блоках. Это проще понять, чем классический «код».

Во-вторых, куча плюсов:

— Красивая графика «из коробки».

— Есть большой маркетплейс с гововыми ассетами

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

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

— Много уровков. Рекомендую канал «Unreal Engine Rus»

— Куча встроенных функций.

— Бесплатный до ляма баксов дохода.

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

Сделай змейку, пинг-понг и т.п. Пофиг на качество, пофиг на геймдизайн. Главное — попрактиковаться «на кошках», пощупать функции движка.

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

Короче — почитай про выбор движка. Потрать время на его изучие.

Шаг 8. Выбери жанр

Жанр — это твоя ниша. Жанр — это очень важно. Есть жанры, в которые никто не играет. А для некоторых нужно изучить много дополнительного материала.

Лучше выбрать жанр который:

— Популярен на платформе. Игры этого жанра часто покупают или скачивают. Используй сайты для аналитики жанров. Например, для Steam: «steamdb.info», «gamedatacrunch.com», «steamspy.com».

— Не слишком сложен в производстве. MMORPG — не твой выбор!

— Нравится тебе или команде. Ты разбираешься в нём или много играл в детстве.

Как только ты определилися с жанром — гугли всё по производству игр в этом жанре. Геймдизайн, графика, уровни, звуки. На что сделать акцент? Поиграй в лучшие игры в этом жанре. Посмотри видео об этом жанре.

Короче — выбери жанр и узнай про него всё что можешь!

Шаг 9. Придумай идею, концепцию, USP

Идея — ядро твоей игры. Зерно, из которого вырастет проект.

Какая идея хорошая?

— Понятная. Должна быть понятна каждому. Например, твоей маме.

Интересная. Уже хочется поиграть в это! Люди любят риск и новый опыт, который хотят, но не могут пережить в реальной жизни. Например GTA — это симулятор крутого парня, которым все хотят быть, но не могут.

— Популярная. Это не артхаус, не что-то странное или специфичное. Идея обращается к понятным образам из жизни или массовой культуры.

— Выделяющаяся. Такого раньше не было. Или было, но давно. Или в другом жанре. Или в другом стиле. Или плохо сделано.

Что поможет тебе в выборе идеи?

— Каталог игр на твоей платформе. Смотри что популярно. Думай как это изменить, подать под другим углом. Хмм…игра про постройку железной дороги в топе. А что если, мы играем за машиниста?

— Сайты-сервисы с аналитикой тэгов и жанров на платформе. Можно отследить популярность жанра, количество игр в нем. Можно скрестить отдельные тэги между собой.

— Массовая культура. Фильмы, книги, комиксы, короткометражки, гифки, картинки из интернета.

Скорее всего у тебя будет рождаться много идей. Записывай их. Дай полежать. А потом выбери ту, что не даёт тебе покоя и кажется лучшей.

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

Питч — короткое предложение, описывающее идею. Например, They Are Here — ужастик про похищение пришельцами. Почитай подробнее про то «Как питчить игры».

На основе Питча, описываем концепт игры. Более развернутое описание игры на одну страничку. За кого мы играем? В чем цель? Что можно делать? Какие эмоции вызываем?

Продумай отличительные черты — USP, которые будут наглядно «продавать» твой проект.

USP вытекают из твоей идеи. Например, идея Панка — издевательство над культурой. USP Панка: вызывающее поведение, агрессивная музыка и странные прически.

Показывай свои USP везде — в трейлере, скриншотах, постере, описании игры. Говори про них общении с прессой и издателями.Тычь ими в лицо!

Например, у They Are Here — это пришельцы, кукурузные поля и огни в небе.

Кароче — почитай про идею, концепцию, питч, USP игры. Сформулируй чёткое видение твоего проекта и доноси это видение до всех. Без него — всё развалится и поплывет.

Шаг 10. Составь список ассетов и задач

Ассеты — это кирпичики, из которых состоят игры.

Составь список того, что нужно сделать. Хотя-бы крупными мазками. Сделать уровнь, найти музыку, вставить персонажа. А еще надо 20 видов мечей.

Оцени время, а потом умножь его на 2. Даже если тебе кажется это глупым. Умножь его в 2 раза!

Если видишь, что проект большой — отрезай всё ненужное. Ненужное — всё, что не показывает идею. Или редко появляется на экране.

Например, если идея игры — ультра-насилие, то можно не делать 20 видов мечей, а лучше проработать физику расчленения тела.

Прикинь, что для мобильных гипер-казуалок нужно сделать минимум 30 минут геймплея. А для ПК и Консолей, лучше сделать игру на 2 часа. Если можешь больше — круто!

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

Шаг 11. Организуй процесс

Записывай, всё что надо сделать. Каждую мелочь. Иначе — забудешь.

Ставь задачи. Себе и команде. Рекомендую Trello (проще) или Asana (функциональнее).

Cобирай инфу по проекту в одном месте. Можно юзать доски типа “Miro” или вики типа Notion.

Если ты один, или у вас небольшая команда, не парься над большой и красивой документацией. Лучше покажи пример, начерти схему, объясни на пальцах ЧЁ НАДО сделать.

Референс — лучшее описание задачи для художника! Например, я сказал жене — хочу обложку как у Слендера, но с пришельцем. Этого — достаточно!

Собирай и храни нужную инфу. Ссылки на классные статьи. Контакты возможных партнёров. Скриншоты багов. И т.п.

Шаг 12. Сделай демку

Демо-версия / Вертикальный срез / MVP — очень близкие по смыслу понятия. Это маленький кусочек игры финального качества.

Демо-версия решает множество задач:

— Поможет записать видео, скриншоты, гифки

— Покажет окупаемость мобильной игры

— Поможет устроиться на работу

— Ускорит набор вишлсистов в Steam

— Получит отзывы от игроков и стримеров

Читайте также:  Установка пакетов обновлений операционной системы windows

— Можно участвовать в фестивалях и конкурсах

-Только с ней можно найти издателя.

Короче — сделай демонстрационную версию игры. Это твоя визитная карточка. Показывай её всем. Говори — я сделаю так-же, только больше.

Шаг 13. Не ленись! Работай!

Пара советов, как дожить до релиза:

— Не меняй идею на ходу. Сильно. По чуть-чуть можно.

— Не начинай другие проекты. Не распыляйся. Делай, что запланировал.

— Составь график работы. Работай над игрой постоянно. Хотя бы по 3 дня в неделю, по 2 часа в день. Больше — быстрее!

— Надоела разработка? Поиграй в похожие игры. Посмотри похожие фильмы. Найди, что было бы круто сделать.

— Всё равно надоела? Мечтай о релизе. Представь как это будет здорово и вечно!

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

— Узнавай что-то новое про производство игр. Слушай подкасты, смотри доклады. Это мотивирует, помогает в производстве.

Спасибо, что дочитал!

Это статья — вводная. Тебе много предстоит узнать и загуглить на каждом шаге.

Короче — ты можешь сделать это! Реально!

Работа программистом в Казахстане — это.

Особенности Национального Менеджмента

О коде

Поздравляю моих подписчиков, коллег и остальных соучастников в с Днём программиста

Желаю успехов в развитии, интересных проектов, изобретательности и креатива.

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

Пользуясь случаем упомяну о своём бесплатном канале, где я бесплатно помогаю новичкам войти в эту сферу. Почти за полтора года 35 человек с этого канала смогли усовершенствовать свои знания до уровня стажера или младшего специалиста.

Проект Семь пятниц на неделе #217. День программиста в високосные годы

Конечно же это просто юмор. И вообще очень интересно наблюдать, как 15 лет назад все угарали с «компьютерщиков» и помногу раз пересказывали шутеечки формата «в ванной нашли труп программиста с пустой бутылкой от шампуня, на которой было написано: намылить, смыть, повторить» и «программист перед сном ставит на тумбочку два стакана — с водой и пустой, первый на случай если захочется пить, а второй — если не захочется». А еще 15 лет назад все родители хотели видеть своих чад выпускниками юридических и экономических вузов. А теперь те самые «компьютерщики» правят миром, и пишут программное обеспечение, которое скоро заменит тех самых юристов и экономистов. Вон, года три-четыре назад Сбер анонсировал увольнение штата юристов и замены их нейросеткой.

Я каждый день с 8 февраля рисую по комиксу, связанному с событием произошедшим в эту дату, когда она была пятницей! Если хотите поддержать меня, то вот — http://desvvt.art/

Тут уже не до красоты

Linkin Park OS и 2000 год

Сегодня был на сайте Linkin Park и случайно забрёл в имитатор старой ОС под браузером. Вышло оригинально. Не ожидал от Linkin Park такого.

UPD. Кто сможет решить квест с паролем (Start -> Settings -> Password)?

День рождения Тетриса

Tetris: From Russia With Love

6 июня 1984 года — советский программист Алексей Пажитнов представил компьютерную игру «Тетрис». Множество производителей видеоигр сделали на ней миллионы. За продажу лицензии Пажитнов получил один IBM-совместимый компьютер 286-й модели.

Интерес к фигурам домино, тримино, тетрамино и пентамино в СССР возник благодаря книге С. В. Голомба «Полимино» (издательство «Мир», 1975 год).

В частности, пентамино было настолько популярно, что в «Науке и жизни» начиная с 1960-х годов был постоянный раздел, посвящённый составлению фигурок из набора пентамино, а пластмассовые наборы пентамино иногда продавались в магазинах.

«Тетрис» был впервые написан Алексеем Пажитновым в июне 1984 года на компьютере Электроника-60. Работая в ВЦ Академии наук СССР, Пажитнов занимался проблемами искусственного интеллекта и распознавания речи, а для обкатки идей применял головоломки, в том числе и классическое пентамино. Пажитнов пытался автоматизировать укладку пентамино в заданные фигурки. Однако вычислительных мощностей тогдашнего оборудования для вращения пентамино не хватало, приходилось отлаживать на тетрамино, что и определило название игры. В тех опытах и родилась основная идея «Тетриса» — чтобы фигурки падали, а заполненные ряды исчезали.

Для IBM PC игра была переписана на Turbo Pascal 16-летним школьником Вадимом Герасимовым. Игра быстро распространилась по Москве и далее по всему миру.

Несколько месяцев спустя про игру узнал импортер программного обеспечения из Венгрии — Роберт Стейн.

Стейн поехал в Москву, где он встретился с Алексеем Пажитновым, и договорился о лицензии на выпуск игры. По какой-то неизвестной для Стейна причине Пажитнов подарил ему тетрис. Роберт Стейн сразу решил, что игру можно было свободно издавать.

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

Стейн продал права на «Тетрис» компании Mirrorsoft (и её дочерней компании Spectrum HoloByte), принадлежащей британскому медиа-магнату Роберту Максвеллу. У игры появляются качественные по меркам того времени графика и звук, а также «русский колорит» — в фоновых заставках программы появляются Юрий Гагарин, Матиас Руст, незадолго до этого совершивший посадку своего спортивного самолета на Красной площади, и другие подобающие случаю персонажи. На глазах рождается сенсация — первая игра из-за «железного занавеса».

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

Spectrum Holobyte и Mirrorsoft на условиях сублицензирования продают права на разработку консольных версий «Тетриса» соответственно фирмам Bullet-Proof Software и Atari Games. При этом первая получает возможность разрабатывать программы только для систем, продающихся на японском рынке. Условия второй гораздо выгоднее — её «зона ответственности» включает Японию и США.

В 1989 году в Nintendo полным ходом идет разработка карманного игрового компьютера Game Boy. Глава американского отделения фирмы Минору Аракава (Minoru Arakawa) убеждает президента Bullet-Proof Software Хенка Роджерса (Henk Rogers) вступить в переговоры со Стейном по поводу возможности разработки версии «Тетриса» для Game Boy.

Nintendo от продажи игры получила очень неплохие прибыли, но сам Алексей Пажитнов смог воспользоваться плодами своего детища только в 1996 году, когда истёк срок первоначальной лицензии, и он начал получать первые (весьма небольшие) отчисления от продаж.

В 1996 году он с Хенком Роджерсом (англ. Henk Rogers) создал компании The Tetris Company LLC и Blue Planet Software, пытаясь получить прибыль от бренда Tetris. The Tetris Company LLC (TTC) зарегистрировала слово Tetris как торговую марку. С тех пор несколько компаний купили у TTC лицензию на торговую марку, но законность игр тетрамино, которые не используют название Tetris, не оспаривалась в суде. По американским законам, игру нельзя защитить авторским правом (только запатентовать), поэтому основным имуществом компании является торговая марка Tetris. Несмотря на это, TTC преследует клоны игры под именами, непохожими на Tetris. В мае 2010 года юрист TTC послал письмо в Google с требованием убрать с рынка Android Market все 35 клона данной игры, хотя их имена не схожи с именем «Tetris».

В 1996 году Алексей Пажитнов устроился на работу в Microsoft, где под его руководством был выпущен набор головоломок Pandora’s Box.

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

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

Слово «тетрис» происходит от греческого «tetra» — четыре, поскольку все фигуры в игре состоят из четырех элементов, скрещенного со словом «теннис». Также существует модификация игры — Пентикс, (от греч. «penta» — пять), в которой фигуры могут состоять из элементов в количестве от одного до пяти.

Вариаций тетриса достаточно много, в том числе трехмерный тетрис, n-мерный тетрис, Polytope Tetris и прочие модификации, со вводными элементами. Идея восходит к старым развлечениям с тетрамино, то есть Пажитнов как бы не на пустом месте его придумал. Что, впрочем, не умаляет гениальности сей затеи.

Основная суть игры — заполнить как можно больше линий блоками тетрамино, не достигнув верхней части экрана. Все заполняемые линии будут удаляться. Игра, теоретически, является бесконечной, а практически — рано или поздно конец игры неминуемо настанет. Но особо трагичный конец случается когда садятся батарейки!

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

В Америке ходили слухи, что тетрис был советским планом коммунистов для подрыва производительности американского труда.

Источник

Оцените статью