Pull to refresh
6
0
Sergey Agarkov @ZoRgSoft

User

Send message

Делаем процедурный панельный дом в Blender

Level of difficultyEasy
Reading time3 min
Views7.8K

Всем привет!

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

Читать далее
Total votes 12: ↑12 and ↓0+14
Comments9

Шаг за шагом: разработка 3D-игры в Godot 4.2 для начинающих

Reading time7 min
Views15K

И снова привет, Хабр! В прошлой статье я рассказал, как создавать 2D-игры на движке Godot. По вашим запросам — добавляем измерение и переходим в мир 3D. На этот раз мы погрузимся в трехмерные объекты и элементы анимирования. Подробности под катом!
Читать дальше →
Total votes 47: ↑47 and ↓0+54
Comments12

Локальный веб-сервер для разработки с помощью Docker

Level of difficultyMedium
Reading time10 min
Views14K


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

Если это Senior Full Stack разработчик с опытом администрирования Linux, то установка и настройка конфигов Nginx, PHP-fpm, MariaDB для него не будут проблемой (а может и с Docker даже знаком?). 

Разработчик Middle уровня (особенно без опыта с backend) возможно пользуется одним из готовых решений под Windows/MacOS.

Junior верстальщик, в свою очередь, раньше не запускал приложение работающее на PHP на своем компьютере вообще, и вот-вот попробует в первый раз.

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

А потом, еще через некоторое время, из-за разных конфигов или окружения возникали и новые проблемы из разряда “на моем компьютере же все работает”, которые в том числе могут появиться из-за разных настроек готовых сборок.

Читать далее
Total votes 11: ↑9 and ↓2+8
Comments10

Вы должны перестать вручную писать Dockerfile'ы

Level of difficultyMedium
Reading time3 min
Views56K

Вы тоже устали вручную заполнять Dockerfile и docker-compose.yaml под каждый новый проект?

Я всегда задумывался, применяю ли я известные best practices, когда пишу конфиг для Docker, и не занесу ли я случайно какие-нибудь уязвимости, вручную заполняя конфиг-файлы.

Что же, теперь мне больше не придется беспокоиться об этом, благодаря добрым людям из Docker, которые недавно реализовали инструмент для этого - docker init .

Интересно, как экономить время и быстро генерировать конфиги, даже если вы не профи в Docker? Прошу под кат.

Читать далее
Total votes 74: ↑71 and ↓3+76
Comments66

Новый взгляд на старые игры. Часть 3. Обратно в Fallout: New Vegas (2010) или довесок в 16 модификаций к сборке «Glow»

Level of difficultyMedium
Reading time10 min
Views1.7K

В этом руководстве вы, среди прочего, найдёте:

* Перк, делающий дробовики убойным аналогом двухстволки из Doom, а также карты-гранаты.

* Возможность продолжить прохождение после завершения основного квеста; все принятые решения отныне будут иметь куда более существенные видимые изменения во внутри игровом мире.

* Получите шанс отправиться в заброшенную старинную библиотеку и исследовать знаменитое "Большое Солёное озеро" (рядом с "Солт-Лейк-Сити").

* Набор полезных команд.

Читать далее
Total votes 8: ↑3 and ↓5+2
Comments2

Сделайте Linux похожим на Windows 95

Reading time2 min
Views30K

Темы и наборы иконок Linux, вдохновлённые другими операционными системами, существуют с тех пор, как в Linux появился графический интерфейс. Иногда эти темы становятся очень похожими на оригинал. Но… Что, если бы вы могли сделать свой рабочий стол Linux почти таким же, как Windows 95?

Читать далее
Total votes 57: ↑56 and ↓1+71
Comments82

Написание графического приложения на Electron JS (начало: Создание окна)

Reading time4 min
Views16K

Приветствую! Если вы зашли на эту статью, значит скорее всего вам крайне неохота лезть в официальную документацию (а очень зря. Она и написана подробно, и имеет перевод на русский язык) и вы пришли за простым решением вашей проблемы — написание кросс-платформенного приложения для компьютера с использованием лишь Web технологий. предлагаю не тянуть, и сразу начать. Но т. к. это первая статья, думаю стоит рассказать в двух словах о том, что же вообще такое Electron JS и для чего оно нужно.


image

Читать дальше →
Total votes 9: ↑5 and ↓4+6
Comments33

7 расширений для VS Code, установив которые, вы не захотите выходить из редактора

Reading time4 min
Views50K
…Даже простейшие инструменты могут давать людям возможность делать великие дела.
Биз Стоун, «Решайся! Заряд на создание великого от основателя Twitter»

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



Многие программисты используют в наши дни Visual Studio Code. Этот редактор кода поддерживает установку расширений. Существует столько подобных расширений, что можно говорить о том, что возможности настройки VS Code практически безграничны.

Но на Visual Studio Marketplace, на площадке, где публикуются расширения для VS Code, опубликовано просто невероятное количество расширений. А это значит, что программистам сложно находить именно то, что им действительно пригодится. Если некое расширение показалось кому-то полезным, то оно, вполне возможно, принесёт пользу и другим людям. Поэтому я расскажу здесь о 7 расширениях для VS Code, которые способны значительно облегчить работу программиста. Всё это — бесплатные расширения. Любой может свободно их загружать и использовать.
Читать дальше →
Total votes 58: ↑35 and ↓23+26
Comments64

Лучшие GitHub-репозитории для веб-разработчиков

Reading time5 min
Views28K
Программист тратит многие часы на разработку некоего функционала и на то, чтобы код соответствовал передовым практическим приёмам, принятым в той или иной среде. В эти часы не должно входить регулярное написание шаблонных конструкций. Программист может сильно помочь себе в деле правильной организации работы, избавив себя от ненужных дел и вложив время в изучение правильных инструментов. Хорошим подспорьем может оказаться и знание о ценных ресурсах, список которых всегда полезно держать под рукой.



Автор материала, перевод которого мы публикуем сегодня, предлагает рассмотреть несколько GitHub-репозиториев, которые, если иногда в них заглядывать, позволят веб-разработчикам улучшить свои знания и навыки, окажут содействие в написании более качественного кода, помогут работать быстрее.
Читать дальше →
Total votes 33: ↑28 and ↓5+41
Comments5

Введение в 3D: основы Three.js

Reading time8 min
Views94K

Cложность Web меняется ежедневно, и его возможности растут так же быстро, особенно с 3D-рендерингом. Кто только начинает вливаться в тему 3D — добро пожаловать под кат.


Total votes 11: ↑11 and ↓0+11
Comments9

48 open source ресурсов для JavaScript (2019)

Reading time3 min
Views17K
image

Мы выбрали из 20 000 проектов и библиотек для JavaScript 48 самых лучших (по звёздам на GitHub) и сгруппировали в 5 категорий:

  • Пользовательский интерфейс (1~9)
  • Инструменты JavaScript (10~25)
  • Machine Learning (26~33)
  • Проекты (34~39)
  • Инструменты разработчика (40~48)
Читать дальше →
Total votes 19: ↑17 and ↓2+15
Comments5

Вычисляем потенциальных «злых» ботов и блокируем их по IP

Reading time6 min
Views16K


Доброго дня! В статье расскажу как можно пользователям обычного хостинга отловить IP адреса генерирующие излишнюю нагрузку на сайт и затем блокировать их при помощи средств хостинга, будет «чуть-чуть» php кода, несколько скриншотов.
Читать дальше →
Total votes 14: ↑10 and ↓4+6
Comments39

Новая игра со старой атмосферой на Three.js. Часть 2

Reading time20 min
Views12K
В первой части я рассказал о проблемах, с которыми я столкнулся в процессе создания 3D игры под браузер c использованием Three.js. Теперь я бы хотел подробно остановиться на решении некоторых важных задач при написании игры, типа конструирования уровней, определения столкновений и адаптации изображения под любые пропорции окна браузера.


Схемы уровней


Собственно, сами уровни создаются в 3D редакторе, а именно, их геометрия, наложение текстур, запекание теней и т.д. Все это я описал в первой части. Зачем нужны еще какие-то схемы? Дело в том, что Three.js не предлагает какого-то физического движка, и я использую схемы уровней для определения препятствий.
Total votes 40: ↑39 and ↓1+38
Comments29

FAQ.Net — записная книжка или программа для заметок под Windows бесплатно

Reading time3 min
Views22K
FAQ.Net — программа для заметок, написанная под Windows на языке C# (.NET Framework 2.0).
История началась с того, что нужна была портативная программа для хранения накопленных знаний (копий статей из интернета, ссылки на статьи, SQL-запросы, программный код, пароли и т.д.), с возможностью быстрого поиска и редактирования документов. За основу интерфейса FAQ.Net был взят интерфейс из CHM-формата (файл справки или руководство о программе).
Так как я специализируюсь на базах данных, то решил все документы хранить в БД, используя встроенную СУБД — SQLite. Создал таблицы и написал интерфейс для работы с БД.

Многие программисты до сих пор создают заметки в текстовых документах, сохраняя их на компьютере и со временем теряют их местонахождение. Теперь, с помощью FAQ.Net все накопившиеся документы, можно хранить в одном месте, не опасаясь за их утрату.
В приложении FAQ.Net имеется возможность резервного копирования БД.


Читать дальше →
Total votes 41: ↑30 and ↓11+19
Comments64

Splatter tiles: как без особой возни создавать тайлы для игр

Reading time4 min
Views25K
image

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

Можно ли всё это как-то ускорить?!


В этой статье я расскажу о том, как мы разрабатываем тайлы 2D-окружений для таких игр, как Levelhead и Crashlands, и покажу методику, позволяющую нам сэкономить немного времени и повысить универсальность графических ресурсов окружений. Этот метод также упрощает создание органически выглядящих типов рельефа, хорошо сочетающихся друг с другом. Я не предлагаю при создании тайлсетов окружений пользоваться только этим способом, но он станет хорошим пополнением набора инструментов для любого художника.

Этот способ называется SPLATTER TILE!
Читать дальше →
Total votes 39: ↑38 and ↓1+37
Comments3

Циклическая генерация подземелий на примере Unexplored

Reading time2 min
Views8.7K
image

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

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

В dungeon crawler'е Unexplored использован фундаментально иной подход (см. рисунок 1). Вместо линейных путей в качестве самой базовой структуры он изначально использует циклы. Разница оказывается поразительной: при старом подходе хорошие и интересные циклы могли возникать случайно, а в Unexplored они являются запланированной особенностью результата работы генератора.
Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments0

Модульные спрайтовые персонажи и их анимация

Reading time11 min
Views24K
Эта запись девлога целиком посвящена моей системе анимации персонажей, она наполнена полезными советами и фрагментами кода.

За последние два месяца я создал целых 9 новых действий игрока (такие забавные вещи как блокировка щитом, уворачивание в прыжке и оружие), 17 новых носимых предметов, 3 набора брони (пластинчатый, шёлковый и кожаный) и 6 видов причёсок. Также я завершил создавать всю автоматизацию и инструменты, поэтому всё уже используется в игре. В статье я расскажу, как этого добился!


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

Краткое описание


Изначально я хотел проверить, можно ли совместить наложенные друг на друга спрайты с синхронизованными аниматорами для создания модульного персонажа с заменяемыми причёсками, снаряжением и носимыми предметами. Можно ли объединить нарисованную вручную пиксельную анимацию с по-настоящему настраиваемым персонажем.

Разумеется, такие функции активно используются в 3D- и 2D-играх с пререндеренными спрайтами или в 2D-играх со скелетной анимацией, но насколько я знаю, существует не так много игр, совмещающих созданную вручную анимацию и модульных персонажей (обычно потому, что процесс оказывается слишком монотонным).
Total votes 26: ↑26 and ↓0+26
Comments2

Видеозвонок в браузере на PeerJS. Быстрый старт

Reading time7 min
Views15K
Приветствую всех читателей Хабра. В этом году довелось писать модуль видеосвязи для одного учебного портала для созвона по видеосвязи прямо на сайте учителя с учеником. Раннее такую задачу решать не приходилось. После недолгих поисков обнаружил, что есть 2 пути: Flash и WebRTC. WebRTC в чистом виде оказался сложноват, и в общем-то это естественно, так как задача видеосвязи не является простой. Но потом я наткнулся на PeerJS, который является оберткой для WebRTC. В этой статье я расскажу, как быстро организовать свою браузерную звонилку.
Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments8

Rutracker включил eSNI. Конец эпохи DPI и конец блокировок

Reading time4 min
Views202K


Несмотря на желтый заголовок, дальше будет не желтая статья. Всех нас (я надеюсь именно здесь я наконец-таки смогу сказать от всего сообщества) уже достали действия Роскомнадзора. А также его постоянное появление в рекомендованном на хабре. Поэтому эта новость вам понравится. Хоть что-то важное. Новость кстати еще от декабря 2018.
Читать дальше →
Total votes 205: ↑196 and ↓9+187
Comments361

Учебный проект на Godot — Pong (часть 1) Создание и настройка сцены игрового процесса

Reading time3 min
Views7K

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



Почему? Тема для отдельной статьи размышления, а я не умею долго думать и, тем более, размышлять.


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


Для большей странности обучения решил создать его, пользуясь встроенными инструментами визуального программирования, что я делаю впервые.


Внимание! Под катом много скринов.

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

Total votes 17: ↑14 and ↓3+11
Comments7
1
23 ...

Information

Rating
Does not participate
Location
Республика Крым, Россия
Date of birth
Registered
Activity