Процедурный генератор SciFi текстур WebGL

Если смотреть на плоские текстуры не совсем понятно, как они будут смотреться на объекте. Решил устранить этот недостаток, пример в 3D на WebGL, без использования сторонних фреймворков.

Процедурный генератор SciFi текстур

В статье Процедурная генерация SciFi текстур мы рассмотрели метод создания текстур.

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

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

Борьба со спамом на сайте

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

Тут же заметил, нагрузка на некоторых серверах выросла почти в 2 раза, в mysql уже огромная база ip + email и другой хлам от плагинов «антиспам». Посмотрев на этот бред, решил избавиться от плагинов и убавить пыл ботов.

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

WordPress используется на десятке проектов с которыми приходится работать и проверить все эти комментарии не реально. Решил попробовать очень простой способ. Ботов обычно пишут под готовые формы WordPress’a и замена у textarea id на другой, возможно решит все проблемы. Попробовав на паре проектов, поток левых комментариев сразу упал до нуля, обычные стали проходить без проблем.
Читать дальше

Процедурная генерация SciFi текстур

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

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

Попробуем создать процедурную генерацию SciFi текстур с использованием метода «Диаграмма Вороного».
Читать дальше

Процедурная генерация снежинок

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

Не все методы дают качественный результат, в этом можно убедиться, если попробовать поискать готовые генераторы снежинок. Среди них можно встретить даже такие экзотические методы как: «Random Snowflake Generator Based on Cellular Automaton».

Для получения результата, совершенно не обязательно использовать сложные формулы, по этому поделюсь своим рецептом.
Читать дальше

С Наступающим Новым 2018 годом!

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

Желаю, чтобы так и случилось, а все двенадцать месяцев приносили яркие впечатления,
приятные встречи, искренние улыбки.

Благополучия вам и взаимопонимания!

Впечатление от поездки на HighLoad++ 2017

В этом году удалось побывать на HighLoad++ 2017. Это уже 11-я ежегодная конференция для разработчиков, проходила 7 и 8 ноября в СКОЛКОВО (Москва).

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

Импорт Javascript кода

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

Например, следующий код:

var a = 5, c = 3, b = 32, z = "Hello World";
var x = ( ( 4 * a + b ) * ( 2 * c + a) );
console.log( z );
console.log( x );    

Будет преобразован в визуальный вид:

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

1 2 3 10