• Как или в чем назначить классы сложному svg изображению для анимации?

    melpnz
    @melpnz
    UX/UI дизайнер
    Самый лучший способ - это:
    1. Сначала открыть SVG каким-нить векторным редактором (например illustrator или figma). Сгруппировать слои по порядку как они у тебя будут анимироваться.
    2. После закинуть куда-нить на codepen или открыть блокнотом и в необходимых местах прописать классы.
    В codepen будет удобнее тем, что если уберешь строку - сразу будешь видеть что с картинки пропало.
    Ответ написан
    Комментировать
  • Какой курс по blender выбрать?

    @friktor Автор вопроса
    И так как я понял никто не в теме, а кто в теме гордо протирает зад на стуле и не хочет раскрывать секреты дзен, на всякий случай напишу: купил этот курс, почему? Потому что достаточно просто и подробно рассказывают все о blender начиная от работы с кубиком - заканчивая работой с материалами, текстурами, и моделированием лица, очень удобно, даже просто делая пошагово многому научился, хоть курс и на английском - даже те кто его не знают смогут комфортно изучать, там отображаются все комбинации клавиш, а качество позволяет видеть все детали, курс стоит 1300 рублей - это недорого если сравнивать с платными курсами где бы то не-было, (1000 руб час я смотрел), а качество порой и получше. Если кто хочет больше хоть на каком-то уровне овладеть blender то можно скачать небольшой курс на русском языке, суть которого в освоении интерфейса, и создание сцены бокал с вином, вот ссылка если кого обидит то все в архиве tar.gz. Также тем кто освоиться в этой программе хотя-бы на уровне бесплатного курса, то могу посоветовать этот ресурс в принципе много бесплатного контента с отличными уроками (десятки), платно - сидите всего по 700 р в месяц с уроками премиум качества, даже одного месяца вам хватит чтобы выкачать все и вся оттуда, и учиться до посинения, если вы такие психи как я и вам всего мало, и при этом вы знаете python то можете посмотреть доки по игровому движку.
    Ответ написан
    3 комментария
  • Изучение Laravel, с чего начать?

    @andrbee
    web developer
    Есть хорошие уроки от нуля до профи по Laravel
    https://youtu.be/c_uDG9_2iJA?list=PLBT2g0kDwD_a_MF... там несколько плейлистов по уровням
    Те же уроки 18гб. торрент https://nnm-club.me/forum/viewtopic.php?t=1077117
    Ответ написан
    1 комментарий
  • Изучение Laravel, с чего начать?

    Рано имхо. Ларавел прост только если php знаешь. Сделай сначала пару простых сайтов на голом php, граббер пикабу с добавлением своих новостей, например, плюс какой-нибудь бложек или иной парсер. Потом посмотри, как работают разные cms, вордпресс, опенкарт, сделай на них несколько сайтов и напиши пару плагинов для каждого. Пускай они говеные будут, главное чтобы свои функции исполняли. Я лично после голого пхп и нескольких cms потренировался хорошо на опенкарте - у него очень простая для понимания структура, такое сферическое mvc в вакууме для изучения, потом кохану попробовал (она легче ларавела и приложения на ней по структуре похожи на опенкарт, но без уклона в магазины) и только после этого на ларавел перешел. Ларавел хорош, но надо некий базис в голове иметь и опыт, чтобы на нем что-то делать.
    Ответ написан
    Комментировать
  • На чем создают игры для сервиса gamee?

    GavriKos
    @GavriKos Куратор тега Разработка игр
    Поковырял код одной игры - Phaser там используется.
    35 Мб чего? Исходников? 100% графику не оптимизировали.
    Ответ написан
    Комментировать
  • Как сделать точное вычисление физики гравитации на javascript в canvas методом Верле?

    lastuniverse
    @lastuniverse
    Всегда вокруг да около IT тем
    elleremo, ускорение которое получают планеты пролетая вблизи других планет не является ошибкой!!!

    Этот эффект называется "гравитационный маневр для ускорения объекта" или же "гравитационная праща"

    Swingby_acc_anim.gifГравитационный манёвр для ускорения объекта (гравитационная праща)

    Не стал делать "точную имитацию" гравитации. Пошел по пути:
    1. каждый объект имеет массу равную объему объекта умноженному на плотность объекта
    2. каждый объект влияет на каждый динамический объект
    3. влияние пошагово рассчитывается по формуле (почти) :
    V = сумма(F); // суммарный вектор сил
    F = k*M/D; // сила влияния (расчитывается для каждого объекта оказывающего влияние на текущий)
    M - масса объекта
    D - квадрат расстояния между центрами масс объектов
    k - коэффициент для подгона скоростей (выполняет роль гравитационной постоянной)

    Алгоритм расчета (пошагово):
    1. Для каждого динамического объекта происходит расчет новых координат (сумма текущих координат и вектора скорости, рассчитанного на предыдущей итерации цикла симуляции)
    2. Каждый динамический объект сверяется с каждым объектом на предмет столкновения. Если расстояние между центрами 2х сравниваемых объектов меньше суммы их радиусов то происходит слияние. Если объединяются статичный и динамический объекты, то динамический удаляется а его масса добавляется к статическому с перерасчетом плотности, радиуса и объема. Если объединяются 2 динамических объекта то к первому добавляется масса второго с перерасчетом плотности, радиуса и объема, координаты и вектора скоростей пересчитываются как взвешеная сумма координат и векторов скоростей обоих объектов. После второй объект удаляется.
    3. Для каждого динамического объекта расчитывается сумма векторов силы влияния притяжения всех объектов. Затем данная сумма и вектор скорости текущего объекта суммируются
    4. Переход к новой итерации цикла симуляции.

    Вся реализация расчета тут (в конце скрипта). Все формулы вынесены в класс Calc.

    видеодемонстрация
    демонстрация (масштабируется колесиком мышки, перетаскивается с помощью ЛКМ)

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

    5bbd21b57da99316097769.png
    Добавил настройки:
    • параметры отображения
      • отображать сетку - вкл/выкл отображение координатной сетки
      • отображать источники - вкл/выкл отображение объектов, генерирующих планеты
      • отображать шлейф - вкл/выкл отображение траектории планет

    • Настройки физических величин - позволяют задаь минимальные и максимальные значения для размеров и плотности статических и динамических объектов
    • Управление симуляцией
      • шаг симуляции - экспериментальная величина регулирующая точность расчетов
      • скорость источников - изменяет скорость, с которой источники генерируют планеты
      • включить источники - вкл/выкл генерацию планет источниками



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

    5bbd22bc10be0483291405.png
    Ответ написан
    2 комментария
  • Какие игровые движки существуют для Python?

    @WorldEn
    На данный момент для Python есть следующие движки на выбор:

    2D:
    - Cocos 2D (сам лично им не пользовался и ничего сказать не могу, но знаю, что русскоязычное сообщество использует этот движок для с++, вместо python)

    - Kivy (это потомок Pygame, о котором напишу ниже. В основном он предназначен для создания приложений под андроид, но 2D игры тоже на нём делают)

    - Собственно PyGame (Это библиотека Python для создания 2D игр. Очень проста в освоении и есть много уроков и книг на английском и русском. Можно создать практически любую 2D игру. Русское сообщество тоже есть. Хорошая книга на русском здесь)

    - Так же есть 2D + 3D движок с внутренним языком программирования, который очень похож на Python. Т.е если знаешь Python, то этот ЯП освоишь максимум за неделю или даже меньше. Godot Engine

    3D:
    - Из 3D движков единственные это Blender Game Engine. Движок прост в освоении и, в принципе, даже не надо знать языка программирования для создания хорошей игры. Однако если знаешь Python, то это большой плюс, так как скрипты для этого движка пишутся именно на этом языке. Хорошая книжка по движку здесь, а здесь перевод. Примеры игр: раз, два.

    - И , конечно же, Panda 3D. Это не конструктор игр, как Blender Game Engine, где ты создаешь игру, не написав строчки кода. Это конкретный игровой движок, где ты с нуля пишешь код на Python используя API этого движка и создаешь 3D игру. Я сейчас сам его осваиваю и у движка есть живое русскоязычное сообщество, где могут подсказать если что. Так же по движку много видео уроков и книг на английском. Вот одна из этих книг- она на английском, но написано всё понятно, что даже я, не зная инглиш, понимаю))))) Примеры игр: раз, два, три.
    Ответ написан
    9 комментариев
  • Как сделать "слепок" структуры файловой системы windows?

    FAN2tom
    @FAN2tom
    Я пришёл с миром!
    Вот ещё варианты к перечисленным:
    1. Есть программа "Where Is It" - универсальный и, наверное, один из лучших каталогизаторов, назначение которого явно читается в самом названии: программа служит для создания и работы с большим количеством файлов (как с данными, так и с музыкой), в том числе HDD, CD, DVD и сетевыми дисками. WhereIsIt? создает подробный список всех файлов с описанием, параметрами и превью-картинками. Имеются богатые возможности по сортировке и поиску, существует встроенный генератор отчетов, поддерживается работа практически со всеми видами медиа-файлов и архивов.
    2. Используя total commander - есть плагины:
    - CDDataBase - это плагин, разработанный для организации и поддержки каталога Вашей коллекции дисков, включая компакт диски, жесткие диски, MP3 диски, сменные диски... для быстрого поиска и навигации.
    - были и другие, но уже не найду (Гугл в помощь :) )
    Ответ написан
    Комментировать
  • Как используя javascript и wow.js отследить начало анимации при скролле?

    var wow = new WOW(
      {
        boxClass:     'wow',      
        animateClass: 'animated', 
        offset:       0,        
        mobile:       true,       
        live:         true,      
        callback:     function(box) {
            if(box.id == 'svg_anim'){
                // мы попали под анимацию svg
            }
        }
      }
    );
    Ответ написан
    1 комментарий
  • Какие выбрать технологии для чата?

    @Levhav
    Возьмусь за разработку проектов любой сложности.
    Если у вас будет много запросов, что вы и планируете, то тут либо изучать node.js либо есть ещё вариант использовать готовый комет сервер и общаться с ним через api.

    То есть к примеру у вас обычный php сайт а всё работу и нагрузку по поддержанию постоянно открытых соединений по WebSocket берёт на себя комет сервер.

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

    Вот несколько comet сервисов.
    [Ru] comet-server.ru/menu_id/10

    [En] https://www.tambur.io/pricing
    [En] pusher.com/pricing
    Ответ написан
    Комментировать
  • Какие выбрать технологии для чата?

    @yernende
    К остальным ответам добавлю, что тебе нужен не JScript, а javascript. JScript - это реализация от microsoft, и применяется он совершенно в другом месте. На веб-страницах используется javascript.
    Node.js - это серверная реализация javascript. Я бы тоже его посоветовал - во-первых, понадобится учить меньше языков (ну, как, много языков все равно знать надо, но на первых порах хотя б не будешь путаться), во-вторых - для этой роли он отлично подходит. Как и питон, но у него синтаксис от js отличается весьма и весьма, что может вызвать путаницу. Собственно для коммуникации есть два варианта - либо чистый WebSocket, либо socket.io. Socket.io - это модуль для node.js, который, используя лучшую поддерживаемую браузером технологию коммуникации, обеспечивает полнодуплексную связь. Если поддерживается WebSocket - использует именно его, не поддерживается - использует костыли.
    Ссылки по теме:
    learn.javascript.ru/intro - введение в javascript. Прочитать стоит обязательно.
    learn.javascript.ru/websockets - о вебсокетах (там же есть пример чата).
    learn.javascript.ru/nodejs-screencast - скринкаст по Node.js
    socket.io - о socket.io, в демках есть пример чата с исходниками.
    Ответ написан
    Комментировать
  • Какие выбрать технологии для чата?

    VaaL2004
    @VaaL2004
    Рекомендую связку Node.js, socket.io и redis.
    Node.js выступит в роли веб-сервера и даст асинхронность
    Socket.io даст кросс-браузерное общение между клиентом и сервером и плюс ко всему он умеет адресовать сообщения конкретным пользователям.
    Redis в вашем случае будет неплох в виде базы чата (я, так понимаю, что долговременного хранения не предвидится)

    Если нужна помощь, пишите на почту (xl1034@gmail.com), обменяемся контактными данными
    Ответ написан
    Комментировать
  • Какие выбрать технологии для чата?

    Petroveg
    @Petroveg
    Миром правят маленькие с#@&ки
    Ваша потребность относится к WebRTC. К сожалению, поддерживают технологию только Firefox, Chrome, Opera (и то потому, что перешла на движок webkit). Поэтому без сервера практически не обойтись.

    WebRTC #1 — Знакомимся
    Как мы делали сервис на WebRTC

    Поэтому вероятнее всего, придётся использовать WebSocket — всё же лучше, чем бесконечные клиентские AJAX-запросы к серверу. Готовых решений навалом.
    Ответ написан
    Комментировать
  • Какие выбрать технологии для чата?

    Я бы вам присоветовал асинхронный веб-сервер Tornado, ну и надо к нему немножко Python'а знать.

    Вот кажется хороший пример: https://code-live.ru/post/chat-with-tornado-backbo... который вам можно распробовать и доработать.
    Ответ написан
    Комментировать
  • Youtube API + Python(Django): где брать данные для входа?

    @FireGM Автор вопроса
    Нашел ответ на вопрос. В связи с включенной 2-этапной аутентификацией вместо пароля от аккаунта вводить пароль зарегистрированный у вас на аккаунте для вашего приложения. Регистрируем здесь. Получаем 16-значный пароль и вводим его. Действует не только для этой библиотеки, а вообще для API Google.
    Ответ написан
    Комментировать