Обновить
36.01

3D-графика *

It's time to render!

Сначала показывать
Порог рейтинга

Робот Вертер за 100 дней - итог.

Дорогие друзья, мы начинали описывать процесс разработки сервисного робота - Вертера, но на каком-то моменте перестали из-за нехватки времени. За то мы снимали всё на видео. Сейчас мы рады показать вам короткое видео о том как мы всё-таки сделали робота за 100 дней и продемонстрировали его на выставке "Надежда на технологии".

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

Ютуб: https://youtu.be/DYKk3d4kqvY?si=JuUsqdbxQztfn7ni

ВК: https://vk.com/video-131964440_456239179

Заставка
Заставка
Теги:
-1
Комментарии2

Включаем турборежим перед Новым годом: 3 шага к запуску AI-проекта до января

Костры рябин сгорели, настала очередь дедлайнов и годовых KPI. Чтобы войти в Новый год с новыми проектами, а не с техдолгом, объявляем скидку на аренду графических ускорителей. Рассказываем, как выжать максимум пользы:

1. Взять промокод:

  • GPU NVIDIA A100 — скидка 30%, код: EVOLUTIONGPUA1040GB

  • GPU NVIDIA V100 — скидка 50%, код: EVOLUTIONGPUV100

2. Перейти в личный кабинет Cloud.ru

3. Ввести код и обучать ML-модели, работать с тяжелой графикой, 3D-моделированием или рендерингом, но уже дешевле.

Акция будет длиться до 31 декабря 2025.

Подробнее рассказываем здесь.

Теги:
Рейтинг0
Комментарии0

Наконец-то у меня появилась Rendition V2200 благодаря подписчику! Осталось найти рабочую Socket 7 или слотовую материнку и можно делать вторую часть стать про самопальную 3D игру для компьютеров 90х :)

Теги:
Всего голосов 8: ↑7 и ↓1+6
Комментарии0

Вышла платформа для 3D-дизайна от Hyper 3D, где максимально прокачан визуальный редактор Rodin. Инструмент стал настоящим швейцарским ножом для 3D-дизайнеров и моушенов:

  • можно генерировать трехмерные части модели отдельно;

  • проект можно собирать по частям и хирургически редактировать каждый вектор;

  • детали можно сохранять как макросы. Не придется с нуля генерить типовые проекты;

  • есть библиотека готовых материалов. Можно сделать собственные модели или использовать формы коммьюнити;

  • добавлены редакторские фичи: перегон из 2D в 3D, апскейл фото и моделей и даже генератор 3D-аватаров;

  • совместима с популярным ПО и движками, например, Blender и Unreal Engine;

  • можно сделать собственный синематик за минуты;

  • можно работать прямо в консоли — да, у Rodin есть встроенная среда разработки для 3D.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Разбор ошибки Blender has stopped working / Разбор похожих ошибок / Как защитить свои файлы от утери

Ошибка во время скульптинга / Ошибка во время попыток переноса сломанного файла
Ошибка во время скульптинга / Ошибка во время попыток переноса сломанного файла

Сейчас я расскажу о баге, который случился недавно, когда я зашёл на официальный сайт по багам Blender, сделав анализ большого количества сообщений от других пользователей, понял, что не только у меня подобное случилось. На данный момент из-за серверной части Vulkan, который является частью модуля gpu, на новых версиях стали происходить массовые баги, в связи с чем я себе сказал, что когда решу эту проблему, расскажу всё, что либо нашёл, и как я её решил.

У меня проблема возникла во время скульптинга, файл сам по себе имел большой вес, когда я хотел закрыть проект, произошёл автосейв и получился тайминг, который и сломал модель, это я сделал вывод исходя из поиска решения. Что я делал, чтобы исправить ошибку: Blender crashes opening certain file.

Проект весил более 80 mb, имел версию 4.5.1 LTS.

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

Та самая выкачка файлов.
1. Открыть новую сцену -> File -> Append -> выбираем наш файл -> выбираем и по пунктам добавляем файлы -> осторожно с файлом scene — он может быть багнутым, и программа вылетит. \
2. Зайти в папку autosave и открыть прошлые сохранения, но если вы, как я, их удалили случайно или у вас их нет, то задумайтесь. \ *Если вы их удалили, то даже не думайте о программах для восстановления удалённых данных, я через это прошёл и могу сказать, что файлы после восстановления будут сломаны, но на файлы сцены, которые весят меньше 2mb может и сработает, но это до сотни полигонов :)
3. Открыть дополнительные сохранения, они находятся там же, где и сам файл, имеют тег blend1, blend2 и т. д. Рекомендую вам настроить их количество. Это делается там же, где и autosave. Функция называется «Save versions». \


Решение проблемы без выкачки.
- Скинуть файл доверенному другу, если открывается и у него, то пробуем все остальные способы. Если нет, можно на способы ниже не надеяться (но лучше попробовать) и сразу приступать к выкачке данных со сцены.
- Пытался запустить файл от имени администратора, через командную строку, через различные запуски блендера со специфическими ограничениями (запустить на базе OpenGL и т. д.). Запустить blender можно по-разному, достаточно глянуть его расположение, и можно увидеть много приложений cmd для аварийного запуска программы.
- Пытался проверить абсолютно все обновления PC, переустановил разные версии обновлений для видеоядра.
- Пытался открыть проект на других версиях (на версии 4.3 он не запускается, на версии 5.0 крашится). Версия 5.0 имеет нововведения по устранению багов.
- Пытался отключить кастомные аддоны.
- Пытался переустановить Blender.
- Пытался использовать Steam-версию Blender.
- Пытался открыть файл в другом расположении. В другой папке под другим именем, поменяв русский на английский. «Мачете» -> «Machete».
- Были попытки перезапуска компьютера. (Несколько раз комбинируя разные методы.)
- Я не пробовал, но как способ — запустить blender на другой видеокарте или без неё.


Что мне помогло? -Выкачка файлов через append и только..
Что я поменял? -Я сделал расположение временных файлов в другом месте, там я точно их не удалю, я увеличил количество сохранений до 5 (которые имеют тег blend1, blend2 и т. д.)
Я узнал о других ошибках и о их решениях, чаще начал сохранять файлы, больше появилось доверия к сообществу 3d.
Я нашёл решение сам, но спустя 2 часа решения, мне написали много вариантов, из которых и было тоже моё решение, это не может не мотивировать делать также.


Сайт с багами сообщества Blender - https://projects.blender.org/blender/blender/issues
Сайт с новыми версиями Blender - https://builder.blender.org/download/daily/
Сайт с подробным списком версий Blender - https://download.blender.org/release/


Буду благодарен за распространение данной информации, сократим проблемы нашим коллегам.

Теги:
Рейтинг0
Комментарии0

Попросил GPT5 написать скрипт для приложения 3ds max, который сможет информировать об потенциальных угрозах в 3d-сцене программы. После нескольких часов возни и исправлений, скрипт заработал и отлично показал себя в деле, обнаружив в сцене имитационный вредоносный код.

Кто из специалистов может посмотреть этот код? Будет от него реальная польза или это бесполезная пустышка?

По словам ИИ, MaxScript по синтаксису напоминает смесь JavaScript + Pascal, с динамической типизацией.

/*
   MaxScript Exorcist 3.1 (fixed - helpers moved to top-level)
   - Исправлена ошибка "No outer local variable references permitted here"
   - Вспомогательные функции вынесены на верхний уровень
   - Проверка папки с .ms/.mcr/.mse
   - Расширенное сканирование сцены (все свойства, контроллеры, материалы, XRef)
   - ⚡ Подсветка найденных потенциально опасных токенов
   - Авторы: Юра и GPT5-mini
*/

-- ===== GLOBAL PATTERNS =====
global patterns
patterns = #(
    "shell",
    "cmd\.exe",
    "CreateProcess",
    "WinExec",
    "system\s*\(",
    "Process\.Start",
    "ProcessStartInfo",
    "DotNet\.loadAssembly",
    "LoadAssembly",
    "LoadLibrary",
    "ImportDLL",
    "dll",
    "WriteLine\s*\(",
    "Write\s*\(",
    "DeleteFile\s*\(",
    "removeFile",
    "renameFile",
    "copyFile",
    "RunScript",
    "Execute",
    "openFile",
    "fileStream",
    "StartProcess",
    "Run",
    "ShellExecute",
    "regsvr32",
    "CreateObject",
    "WScript",
    "ActiveXObject"
)

-- ===== Helper: read ASCII strings from binary .mse =====
fn readBinaryStrings filePath =
(
    local strings = #()
    try
    (
        local f = openFile filePath mode:"rb"
        local buf = ""
        while not eof f do
        (
            local b = readByte f
            if b >= 32 and b <= 126 then buf += (bit.intAsChar b)
            else
            (
                if buf.count >= 4 then append strings buf
                buf = ""
            )
        )
        if buf.count >= 4 then append strings buf
        close f
    )
    catch()
    return strings
)

-- ===== Helper: scan files in folder (text and .mse) =====
fn scanFilesInFolder folderPath =
(
    local suspicious = #()
    local files = getFiles (folderPath + "\\*.ms*")
    if files.count == 0 then
    (
        format "No .ms/.mcr/.mse files found in %\n" folderPath
        return suspicious
    )

    for f in files do
    (
        local isText = true
        local content = ""
        try
        (
            if matchPattern f pattern:"*.mse" then
            (
                local lines = readBinaryStrings f
                for l in lines do
                    for p in patterns do
                        -- сравниваем в нижнем регистре для устойчивости
                        if findString (toLower l) (toLower p) != undefined then append suspicious #(f, p)
                isText = false
            )
            else
            (
                local fh = openFile f mode:"r"
                while not eof fh do content += readLine fh + "\n"
                close fh
            )
        )
        catch
        (
            isText = false
            append suspicious #(f, "<binary or unreadable>")
        )

        if isText then
            for p in patterns do if findString (toLower content) (toLower p) != undefined then append suspicious #(f, p)
    )

    return suspicious
)

-- ===== Helper: recursive scan of an object (uses global 'patterns') =====
fn scanObjectRecursively obj =
(
    local findings = #()
    try
    (
        -- Все свойства объекта (без аварий при чтении)
        local propNames = #()
        try ( propNames = getPropNames obj ) catch()
        for p in propNames do
        (
            try
            (
                local val = getProperty obj p
                if classOf val == String then
                (
                    for pattern in patterns do
                        if matchPattern val pattern pattern:"regex" then append findings #(obj.name, p, pattern)
Теги:
Рейтинг0
Комментарии3

Теперь реки, озёра и моря на карте 2ГИС стали реалистичнее — с солнечными бликами и волнами.

Для начала, чтобы придать поверхности глубину и рельефность, мы перешли от плоских текстур к текстурам с нормалями. Это позволило воде реагировать на свет: в зависимости от направления освещения она начинает вести себя по-разному — появляется объём, тени на гребнях, есть ощущение материи.

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

Увидеть это великолепие уже можно в веб-версии 2ГИС и в самых свежих версиях для мобильных платформ.

Про текстуры ещё можно прочитать в наших статьях про небо и освещение.

Теги:
Всего голосов 2: ↑1 и ↓10
Комментарии2

По итогам жарких обсуждений и критики по поводу медленного кода и плохого fps в тесте вывода на экран графика sin()+noise для Matplolib были внесены усовершенствования и привлечен ИИ для полировки. Исходная статья и код https://habr.com/ru/articles/878002/

Отказ от медленного вывода текста, применение FuncAnimation вместо простого цикла, применение мэджик команды для подключения PyQT backend. FPS поднялся с 12 до 35. Подробности читайте в исходной статье https://habr.com/ru/articles/878002/

Оригинальная идея второго графика позволила отказаться от медленного вывода текста
Оригинальная идея второго графика позволила отказаться от медленного вывода текста

м

Теги:
Всего голосов 1: ↑1 и ↓0+2
Комментарии7

Написана статья о тестировании (и сравнении FPS) на скорость рисования 2D графиков на python популярных и относительно малоизвестных графических пакетов 2D и 3D (Mayavi 3D, PyVista, Matplotlib, PyQTGraph, Plotly, PyGame, Arcade, pyOpenGL, VisPy, Bokeh) Возникли некоторые технические проблемы и срок публикации пока не ясен (надеюсь, на следующей неделе). Поэтому, заинтересовавшиеся коллеги, прошу подписаться на мой профиль на хабре, чтобы не пропустить публикацию этой статьи. В статье будут видео с отрисовкой в реальном времени 2D графиков и будут измерены FPS. Специально использовался слабенький мини ПК без дискретки. Тем не мене FPS достигал в некоторых случаях 100. Пример видео ниже:

https://habr.com/ru/articles/878002/

Файлы к статье

Теги:
Всего голосов 5: ↑3 и ↓2+2
Комментарии0

Тестирую, насколько концепция "Write once, run anywhere" работает на практике. Цель - один jar с 3D-игрой, который работает на 4х-платформах - J2ME, Windows, Linux, OS X. Кроме того, демку можно будет запустить на первых Android-смартфонах в мире (в Android dex вместо обычного jvm-байткода, поэтому не перечислил в списке основных платформ) и если у меня появится BlackBerry с GLES по типу 8900 - то и на нем. Само собой о разработке демки будет статья.

Теги:
Всего голосов 7: ↑7 и ↓0+11
Комментарии0

Python 3.13 на iMac 2011 High Sierra и VScode

Изучал Python на Anaconda/JupyterLab/Notebook/Spider под Windows 11. Возникла потребность все запускать на старом, но прикольном iMac 2011 32 ГБ ОЗУ, 1 ТБ disk, FulHD экран. Оказалось последняя Anaconda для него 2019 года с Python 3.6. Случайно узнал, что есть для Python отличные PyCharm и VScode. Оказалось VScode предпоследней версии работает на этом iMac, причем в ней есть microsoft Python практически новейший версии 3.13 и отладчик работает и pip есть сразу из коробки. Все работает с достойной скоростью. А ведь куплен iMac был за 10 тыс. руб. Добавлю еще, что он тихий даже под рендерингом анимации 3D в VTK и расчетах pandas. Добавлю еще, что с самого офицального python.org на этот iMac смог поставить только Python 3.11, a Jupyter/Spyder отказались работать.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии5

Epic Games опубликовала набор Game Animation Sample Project, включающий в себя 500 анимаций движения персонажей. Набор бесплатный, и его можно использовать в своих проектах.

Теги:
Всего голосов 3: ↑3 и ↓0+5
Комментарии0

С 19 по 21 апреля в Нижнем Новгороде пройдут Дизайн-выходные — некоммерческий проект, проводящийся ежегодно в формате конференции в одном из городов России. Проект построен на открытом и добровольном обмене знаниями и позиционирует себя как образовательная миссия российского дизайн-сообщества.

20 апреля на Дизайн-выходных выступит Екатерина Мохначева, арт-директор РСХБ.

Екатерина расскажет про создание 3D графики в финтехе: как выстроить стиль, создать процессы и иллюстрации на потоке внутри компании, что можно сделать самим, а что лучше отдавать на студию.

Подробности и регистрация.

Теги:
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Ближайшие события

CAD (BIM) Revit и IFC в Unreal Engine, Unity, Oculus — визуализация, рендеринг, метаверсии и игровой дизайн

? Стандартный рендеринг в CAD (BIM) программах часто не дотягивает до качества визуализации, но игровые движки, такие как Unreal Engine и Unity, произвели революцию в архитектурной и дизайнерской визуализации. Эти движки предлагают быстрый рендеринг и интуитивно понятные настройки света, материалов и геометрии, которые значительно улучшают процесс визуализации. Теперь клиенты могут изучать виртуальные модели зданий, взаимодействуя с такими элементами, как освещение и мебель, в режиме реального времени, что улучшает их понимание и вовлеченность. Unreal Engine позволяет проводить метаверсии, превращая 3D-виртуальные миры в крупные социальные центры.

? Unreal Engine позволяет создавать интерактивные приложения 3D, дополненной (AR) и виртуальной (VR) реальности из 3D CAD (BIM) моделей.
? Визуализацию или симуляцию движения автомобилей и людей можно настроить буквально в несколько кликов. Погода и время также легко настраиваются
? Бесплатные движки позволяют подключать алгоритмы искусственного интеллекта, которые наглядно позволяют воспроизводить симуляции в реальных сценах, а не на бумаге
? Используя Unity и инструментарий ML-Agents, ты можешь создавать ИИ-среды, которые будут физически, визуально и когнитивно насыщенными
? С помощью Unity Machine Learning Agents больше не нужно"кодировать" эмерджентное поведение, а можно научить интеллектуальных агентов "учиться",

Теги:
Всего голосов 4: ↑3 и ↓1+2
Комментарии6

На YouTube-канале DesignCode опубликовали бесплатный курс по созданию 3D-моделей для iOS и visionOS в Spline. В двухчасовом ролике обсуждают следующие темы:

  • Базовые формы;

  • Материалы, свет и эффекты;

  • Камера, анимации и состояния;

  • Кнопки и компоненты;

  • Пошаговая анимация;

  • Создание 3D-иконки для iOS-приложения;

  • Создание 3D-иконки для visionOS-приложения;

  • Создание 3D-сцены;

  • Анимация частиц;

  • Экспорт моделей в SwiftUI-проекты.

Теги:
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Acer выпустит ноутбук с 3D-экраном Acer Aspire 3D 15 SpatialLabs Edition. Он выйдет в феврале и будет стоить $1399. 

Ранее Acer представила SpatialLabs 3D на ноутбуке ConceptD, а затем — на Predator Helios 300. Технология стереоскопического 3D-изображения работает, отслеживая положение глаз и головы с помощью двух датчиков изображения в верхних панелях. Каждый глаз видит отдельные, почти идентичные 2D-изображения, которые обманывают мозг, заставляя его воспринимать их как 3D. 

theverge.com
theverge.com

Ноутбук поддерживает платформу Acer OpenXR, а также плагины SpatialLabs Unity и Unreal Engine. 

Aspire 3D 15 SpatialLabs Edition имеет 15,6-дюймовую UHD-панель и оснащён процессором Intel Core i7-13620H, Nvidia GeForce RTX 4050, 32 ГБ оперативной памяти DDR5 и 2 ТБ встроенной памяти. Он получил порты HDMI 2.1, USB Type-C Thunderbolt 4, Ethernet, три USB 3.2 и разъём для наушников. Модель поддерживает Wi-Fi 6 и Microsoft Copilot.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Друзья! Есть ли среди моих читателей люди, у которых есть готовая сборка с 3dfx Voodoo 2 на борту? Я начинаю готовить материал о Voodoo, а исторически сложилось так, что Voodoo 3 от Voodoo 2 и 1 очень сильно отличалась. В практической части, мы напишем с вами игру. Можете помочь с тестированием? Пишите тг @monobogdan

Теги:
Всего голосов 5: ↑3 и ↓2+1
Комментарии4

В пригороде Далласа расположен центральный офис id Software (г. Ричардсон) и Armadillo Aerospace (г. Мескит). Неудивительно, что и Джон Кармак, сооснователь обеих компаний, живёт (или хотя бы жил) где-то рядом. Местные рассказывают, что до сих пор иногда видят его в Далласе.

Международный аэропорт Даллас/Форт-Уэрт расположен, как следует из названия, между городами Даллас и Форт-Уэрт. В аэропорте установлены сразу несколько объектов искусства, все из которых перечислены на специальной странице на сайте аэропорта.

Один из объектов — инсталляция без названия от художника Тома Орра. Это серия алюминиевых труб, расположенных перед узором из параллельных линий. Когда глаза наблюдателя скользят по этому прямоугольнику 6×12 метров, возникает иллюзия движения.

Однако у Кармака совсем иные ассоциации. Когда он снял и выложил инсталляцию у себя в микроблоге, он снабдил её подписью «похожа на алиасинг компьютерной графики». Как пишет профессионал и ветеран CGI Джон Кармак, эффект ему глубоко неприятен.

Теги:
Всего голосов 12: ↑12 и ↓0+12
Комментарии0

Читатель подарил планшет Surface RT - первый на Windows для ARM! Девайс работает на чипсете Nvidia Tegra 3. Я джейлбрейкнул девайс и смог задеплоить свой софт. Хочу написать материал о том, почему графическая подсистема винды была гораздо круче чем у Android, несмотря на использование одних и тех же чипсетов и GPu и на практике напишу 3D-игрушку с нуля под WP & WinRT

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии1
1

Вклад авторов