Комментарии 83
Насчёт PhysX: я сомневаюсь что кто-либо вообще тронется как-то работать над движком. Исходный код движка большую ценность несёт для тех, кто занимается конкретно real-time физикой. Для этого и режима read-only достаточно.
PhysX во многих местах через чур хрупкий. Человек, который не обладает достаточными знаниями о данной системе будет долго и нудно разбираться в местном фен-шуе.
Ну а насчет коммерческой стороны вопроса — здесь я с вами согласен.
Просто «открытые на чтение» и BSD-3 (или GPL) — это две больших разницы.Скорее, три большие разницы.
Доступные для изучения исходники и опенсорс (тем более под bsd лицензией) — две большие разницы
Вот помню очень давно уже был поражен когда посмотрел, а позже и попробовал демку стим движка. Там физика была для того времени очень даже неплоха. Помните когда в сеть попала недоделанная HL2 игруха? Сидел, помню, часами, запуская разные карты…
1. Никакого стим-движка не существует и никогда не существовало. Движок, на котором была сделана HL2 назывался Source.
2. Судя по всему Jeyko имел ввиду утекший альфа-билд 2003 года, в котором был недоделанный AI но уже работающая физика. Сам с ним в свое время игрался.
3. HL2 включала в себя часть переработанного кода Havok Physics версии 2. На том этапе кроме основных наработок по симуляции физики твердых тел и Ragdoll ничего особо и не было, то есть все остальное было реализовано средствами самого Source.
4. Несмотря на то что Havok сегодня все еще жив, последняя версия его вышла в 2017-м году и по популярности он существенно проигрывает реализации Nvidia Physx как по количеству фишек и плюшек так и по количеству игр, вышедших с его поддержкой. Из последнего крупного только Fallout 4 могу вспомнить.
5. По поводу того что роликом стоило впечатлиться — действительно ничего прорывного там нет как для ролика. Прорывное заключается в том что проект такого уровня выходит с BSD-3 в мир.
6. Кроме того что товарищ видел в альфе халфы, добавилась просто тонна фишек и плюшек которые идут «из коробки»: частицы/декали, симуляция тканей, симуляция разрушений, симуляция физики твердых тел, симуляция жидкостей и дымов, привычный уже Ragdoll, да даже элементарная логика конвейерных автоматов.
(напомню что в HL2 декали, взрывы, отдача оружия и много чего еще было реализовано средствами самого Source и было по сути заскриптовано)
7. То есть используя опенсорсное решение в виде Physx SDK 4 вы уже можете в своем проекте иметь все вышеперечисленные фишки, при этом никаких отчислений с продаж вашего коммерческого проекта Nvidia за это не попросит. А вот тот же Havok — будьте добры лицензируйте, а чего в нем нет — допиливайте сами ручками.
Так что это крайне правильное и сильное решение с их стороны. Единственное не могу однозначно сказать как раньше обстояли дела с Nvidia Physx в проектах на Unity или UE, но сейчас вы вольны вообще для проекта своего написать свой движок и использовать в нем наработки Physx.
Возможно немного сумбурно, но если что, думаю меня поправят.
Высказался-то чисто за ролик. Мнением, такскать, гуманитария поделился.
Спасибо еще раз за развернутый ответ!
А как же упомянуть Andrey2008? они же могли не увидеть это пожелание :)
PS: А по факту я думаю, там им ловить нечего… Есть подозрение что n-vidia и так юзает анализаторы в таком сложном проекте.
А какая там раньше была лицензия на использование? Платно, роялити, еще что-нибудь? Просто, я не видел PhysX в симулировании роботов. Например, в Gazebo можно использовать Bullet, а он на OpenCL.
Так получилось, что PhysX на данный момент оказывается единственным свободным опенсорсным решением,
Да ну? а как же Bullet (software) он под zlib License. + умеет в OpenCL
Просто решила открыть свое решение, ПОКА её НЕ ОБОГНАЛИ другие.А можно подробнее, кто еще уже открыл свои решения или намеревается только сделать это? Просто может я пропустил, хотелось бы узнать.
И он и так уже почти стандарт в индустрии.
От себя добавлю, что он также вне конкуренции.
Havok — проприетарный, имеет более низкую производительность, не имеет поддержки физики твёрдых тел на GPU и не имеет поддержки частиц из коробки (хотя и в PhysX частицы объявлены устаревшими, вместе с одеждой и разрушениями), но при этом, конечно, гораздо читабельнее PhysX и Bullet.
Bullet — открытый, популярный, но опять-таки не столь оптимизирован, как PhysX и не такой удобный в использовании, как PhysX и Havok (чисто моё мнение). При том, что ключевой разработчик Bullet работал в своё время над Havok.
ODE, React3D и прочие трёхмерные движки уже можно и не учитывать.
А то ведь только Radeon более менее вменяемо работал.
А кому оно надо? Вот серьезно, какая пользовательская база OpenBSD десктопов? 100 человек на планете?
Десктопов конечно не сто, но разумеется не много (относительно).
Причин отстутствия дров две:
— основная: нет от призводителя ни блобов (ни соров);
— второстепеная (почти незначимая): разарботчики OpenBSD не стали бы включать проприетарные бинарники в ось, но никто бы не мешал включить их в fw_update «на свой страх и риск»,
Так-то, если непредвязто (хотя мне сложно :) ), система-то хорошая, усточивая, работает на разном железе. То, что заявлено, обычно работает по-настоящему, а не просто «копмилируется». Да, нет там всякой прориетарщины типа «скыре» (skype), но многое из «писков моды» есть. У меня она пашет на разных железках (от нетбуков и соекрисов до многопроцессорных серверов), и вот интересно, что на нетбуке (MSI U100), которому сто лет в обед, вдруг с весны (с 6.3) начали без лагов показываться больше киношки (*.mkv на несколько ГБ), а раньше этого добиться никак не выходило. Т.е. какая-то работа идёт.
И вот ещё из опыта. Нравились всякие нетривиальные (условно) конфигурации на десктопах (типа 4-5 HDD с нестивиальной разметкой, IDE+SATA), хотя кого этим удивишь? Однако только две системы справлялись спокойно на этапе инсталяции — это OрenBSD и (внезапно) Windows. Всякие ранообразные Линуксы, FreeBSD улетали в /dev/null. И неднократно. Это даже не бесило, как может бесить детский сад? Просто не надо доверять детям спички и бензопилы. Не, пробиться можно: «отключить винты лишние» и пр.
Так что, если из этого открытия сорсов последует возможность открытых дров для разных ОС, то, по-моему, это плюс несоменнный.
Так-то, если непредвязто (хотя мне сложно :) ), система-то хорошая, усточивая, работает на разном железе
Угу-угу, меня этими сказками не купишь.
Я чуть больше чем полгода назад работал в конторе вместе с одним из ключевых разработчиков OpenBSD (Claudio Jeker, очень грамотный товарищ). Конечно же половина инфраструктуры была под этой ОС чисто по религиозным причинам, хотя в ней:
1. nginx тупил под нагрузкой и на серьезном железе не мог вытянуть пару тысяч запросов в секунду и меньше гигабита траффика (не помню с TLS или без). Причину он выяснить не смог или не захотел.
2. Родной OpenBSDшный реверс прокси relayd также имел глюки и периодически заваливал ядро (т.к. частично работает через pf). Патчил исходники наживую, вроде починили.
3. Zabbix на OpenBSD периодически падал с ошибками в libc/gethostbyname пока вышеупомянутый разработчик не влез в исходники libc и не поправил что-то.
4. OpenBSDшный демон OSPF периодически встает в ступор и приходится его перезапускать, иначе маршруты куда-то пропадают из ядра.
5. Файрволл с небольшим кол-вом правил в PF уходит в глубокую задумчивость при попытке прогнать через него какое-либо значительное кол-во траффика (>500Mbit) через тот же iperf.
Продолжать можно бесконечно.
Потом этот товарищ получил грант RIPE на развитие своих OpenBSDшных проектов и уволился, а компания осталась с кучей неподдерживаемых серверов.
И вот ещё из опыта. Нравились всякие нетривиальные (условно) конфигурации на десктопах (типа 4-5 HDD с нестивиальной разметкой, IDE+SATA), хотя кого этим удивишь? Однако только две системы справлялись спокойно на этапе инсталяции — это OрenBSD и (внезапно) Windows. Всякие ранообразные Линуксы, FreeBSD улетали в /dev/null. И неднократно. Это даже не бесило, как может бесить детский сад? Просто не надо доверять детям спички и бензопилы. Не, пробиться можно: «отключить винты лишние» и пр.
Это вообще странные сказки :) С какой такой «разметкой» не может справиться Linux? Разметкой чего?
Обычно? Приведите тогда примеры
А я про примеры вот этого:
не во имя великого блага, а в рамках подлянок конкурентам.
И чего тут постоянно минусят за «критический тон» комментария? Много ли тут знают историй воин корпораций? Я вот не знаю и хочу узнать, чем это может быть плохо?
Raw Therapee отрыла исходники в отместку Adobe.
Google открыл AOSP в рамках борьбы с Apple.
etc.
Компании часто используют открытие сырцов как средство неожиданного удара по конкурентам. Конкурировать с опенсорсом сложнее, чем с closed source rival.
Против Xilinx и Altera/Intel?
Просто ходят слухи, что последние наработки в области ПЛИС для таких вычислений типа нейросетей, векторизации, симуляции, дали возможность им очень неплохо конкурировать с видеокартами. И они, в рот руку не клади, сейчас рвутся во все области, где NVidia была на коне. Например, некоторые разработчики автопилотов на платформах Nvidia, начали серьезна глядеть на Zync.
Например, FHD→4K квадратными группами по 2×2 физических пиксела одинакового цвета без взаимопроникновения соседних пикселов, в отличие от всех существующих видеодрайверов и 4K-мониторов.
это же обычный GL_NEAREST.Больше, чем интерполяция «по соседним»
Что тут реализовывать?Это вопрос к nVidia. У них почему-то не получается, хотя 4K-мониторы на рынке уже 4 года. :-)
Используйте нативное разрешение.Существует ряд сценариев для масштабирования без размытия при работе в разрешениях в 2 и более раз ниже физического:
- недостаточное быстродействие компьютера для игр в родном разрешении монитора;
- ориентированность игры на невысокое разрешение экрана и, например, пропорциональное уменьшение растровых элементов интерфейса на бОльших разрешениях;
- игры на основе пиксель-арта, не снабжённые встроенным механизмом масштабирования без размытия.
Об этом, а также о сути проблемы, потенциальных решениях и существующих частичных решениях рассказано в моей статье.
1. PhysX — программная библиотека для реализации физики используя ресурсы CUDA или ЦП(медленнее).
2. Для удобства использования PhysX (черт ногу сломит в этом api), была сделана еще одна прослойка APEX PhysX (пример: игры warframe, Mafia2 использует PhysX через APEX). Гдэ «APEX PhysX» бсд?
3. Аналог CUDA под AMD (ATI, Radeon, кому как удобнее) FireStream. Для поднятия тухнущего FireStream, было появление Кросс-железного OpenCL с подключением туда Intel и других заинтересованных сторон. В итоге nvidia со своим железо-зависимым CUDA, пришлось пилить OpenCL, причем не самой свежей версии (проблема догоняющего, OpenCL 1.2 и 2.0 beta, тем временем у AMD[2013] и Intel[2014] 2.0 давно в реализе), когда как конкуренты думают уже о SPIR-V (если коротко, то связка OpenCL, Vulkan и OpenGL).
4. PhysX, покрайней мере в реализе давно не обновлялся. Может у NVIDIA просто не хватает ресурсов еще и PhysX на OpenCL перекатывать?
5. Конкуренты PhysX? Они всегда есть, посмотрите на новые игры, где есть физика и эффекты PhysX, но без PhysX. А если у Nvidia есть инфа о том, что кто-то из сильных конкурентов пишет/написал к своему физ. движку поддержку OpenCL, каковы должны быть действия?
P.S. Простите за мое пристрастие к скобкам =)
Если вкратце, AMD были очень возмущены в свое время действиями Nvidia и еще давным давно в Bullet добавлялась поддержка OpenCL за счет AMD.
Это даже еще 2009-ый был: nvworld.ru/news/new-449
Тут об этом также можно почитать: ru.m.wikipedia.org/wiki/PhysX
У Havok была очень странная поддержка GPU, при условии, что под физику эффектов (конкретно эффектов, а не геймплейной физики) отдавался второй графический процессор, который должен был вообще быть в устройстве.
Могу ошибаться (кто-то другой), но считаю, что это может быть и Autodesk.
Как вариант, id Tech вполне может пилить OpenCL для физики, как минимум это для них свойственно.
У AMD же нет интереса писать свой физ./эффекты движек на OpenCL? Что совсем необычно будет, так это если вылезет новый игрок на рынок.
Не считаю опенсоурсный Bullet, чем то особенным/прорывным, точнее то, от чего nvidia бы зашевелилась.
Тут я с вами солидарен) Об этом же выше писал.
Могу ошибаться (кто-то другой), но считаю, что это может быть и Autodesk.
Можно более подробно?)
А вот пояснить могу, для серьезных научных вещей PhysX не годится, в научных уже свое на CUDA/OpenCL. Поэтому ниша PhysX для демок(тут смысл отличающийся демо-игр) и игр.
P.S. Когда отдел не только расходует деньги, но приносит прибыль, то он расширяется. ферштейн?
Nvidia сошла с ума и открывает PhysX под BSD-3