LINUX.ORG.RU
ФорумTalks

Эволюция графики

 


3

1

Подборка графических демок от Nvidia и ATI, а также графических тестов сторонних производителей с начала двухтысячных. Лишь малая часть интересного «графона» за этот период, но развитие показывает.

The Evolution Of Real Time PC Graphics - http://www.youtube.com/watch?v=2bHpUljLVrc

The Evolution Of Real Time PC Graphics - Part 2 - http://www.youtube.com/watch?v=Hs82OQkdbD8

Люди делают красоту. А теперь представьте, насколько криворукими приходится быть разработчикам браузеров и сайтов, чтобы на том же железе у вас тормозила какая-нибудь «форма ввода комментария».

(ц) http://justy-tylor.livejournal.com/200847.html

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

Автор идиот, расскажите ему кто нибудь про отличия CPU и GPU.

winddos ★★★
()
Ответ на: комментарий от winddos

Плевать, что автор имел в виду. Вопрос в другом - почему на процессоре, на котором можно успешно моделировать белок для лечения рака тормозит форма ввода сообщений?

AlexCones ★★★
()
Ответ на: комментарий от winddos

Пусть лучше тебе кто-нибудь расскажет, что задача «нарисовать окошно» ничем принципиально не отличается от «нарисовать 100500 треугольников».

geekless ★★
() автор топика
Ответ на: комментарий от geekless

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

AlexCones ★★★
()
Ответ на: комментарий от AlexCones

А при чем тут пользовательский ввод? Если уж даже обработка ввода вызывает проблемы, то это уже безнадежный случай, поможет только топор.

В общем-то концептуально какой-нибудь шутер ничем в этом плане не отличается от браузера - и там и там нужно решать схожие задачи мягкого реального времени: реагировать на пользовательский ввод, считать «физику» и «поведение» (применительно к браузеру - логику приложения) и обновлять изображение на экране. При чем в шутере все эти задачи в гораздо более жесткие рамки поставлены.

geekless ★★
() автор топика
Последнее исправление: geekless (всего исправлений: 1)

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

geekless ★★
() автор топика
Ответ на: комментарий от winddos

хочешь я на цпу превращу быстро работающий тетрис в жрущий 99% процессора и 99% свопа тетрис? )) Гляди, вначале заменяем все сортировки пузырьками...

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

вначале заменяем все сортировки пузырьками...

Завязывай уже с пузырьками. :}

geekless ★★
() автор топика
Ответ на: комментарий от geekless

Таки да. Вот взять тот же анчартед на плойке - текстуры лоу(консоли же), модельки я так полагаю тоже не блещут полигонами, но дизайн персонажей и уровней всё вытягивают.

ritsufag ★★★★★
()
Ответ на: комментарий от ritsufag

Пример в числах. Берём blender, рисуем квадрат земли, кладём на него текстуру травы (неважно, посчитаную или рисованую). Рендер кадра - 10 секунд. Берём тот же квадрат земли, кладём на него систему частиц для моделирования травы со 100500 вершинами. Рендер кадра - порядка 20 минут. Внешне выглядят весьма похоже.

Delirium_veritas
()
Ответ на: комментарий от ritsufag

блин, тот же Divine Divinity сейчас отлично смотрится на современном мониторе (а Baldur's Gate - на экране нетбука, там разрешение не поднять). Но это ведь не футуристическая стрелялка, не гоночки-симулятор.. Какая тут нафиг фотореалистичность и эффекты, когда все еще проблемы с размытиями и светом, когда нельзя делать нормальные программируемые текстуры, а на то что есть - нужен адский скилл программирования? Вот когда дизайнеры смогут мышкой рисовать текстуры без всяких программистов, вот тогда будет коммунизм...

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

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

Фотореалистичность не нужна, её IRL хватает. А задача «мышкой рисовать текстуры» - простите, а чем еще их рисуют? Фотоаппаратом и мышкой. Какие программируемые текстуры ты хочешь чтобы рисовал дизайнер?

geekless ★★
() автор топика
Ответ на: комментарий от AlexCones

Вопрос в другом - почему на процессоре, на котором можно успешно моделировать белок для лечения рака тормозит форма ввода сообщений?

Может потому, что алгоритм по которому идет моделирования белка проще, чем алгоритмы по которым работает форма ввода сообщений?

winddos ★★★
()
Ответ на: комментарий от geekless

Фотореалистичность не нужна, её IRL хватает.

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

Или там, ездить на скейте по ограждению моста, висящего на высоте пары километров — прежде чем такое вытворять IRL, неплохо бы опробовать в игре :)

Или там, ездить на автомобиле на закиси озота со стартовой скоростью 100500.

Дальше продолжать? :)

А задача «мышкой рисовать текстуры» - простите, а чем еще их рисуют? Фотоаппаратом и мышкой.

«программируемые текстуры» === «динамические текстурные эффекты, шейдеры, итп». tell me more, одолжи фотоаппарат, у который фотографирует сразу в шейдеры =)))

типичный пример: игрок появляется в какой-то гористой местности с сумрачным красновато-черным закатным небом, закрытым облаками. Земля рассечена трещинами, из разломов валит пар, с горизонта несется дым... Dragon Age II ;) Надо сделать так, чтобы пар выглядел таинственно, дым - угрожающе, чтобы облака правильно клубились, огонь плясал атмосферно, чтобы огненные всполохи отражались на доспехах не абы как, а красиво... На пар, например, нужно накладывать цветные фантомные блики и корректировать форму. И чтобы форма была не абы какая, а, например, обтекала ландшафт. Ну и где теперь твой бог фотоаппарат?

stevejobs ★★★★☆
()

ты прям жжешь последнее время.

x4DA ★★★★★
()
Ответ на: комментарий от stevejobs

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

Тебя только это останавливает?

ovk48 ★★★
()
Ответ на: комментарий от cvs-255

Ну да, ну да, конечно!
Мы конечно не будем учитывать, что у браузера на вход идут почти всегда кривые данные, что на одной странице могут быть по 100 картинкок/js/css с 20 разных доменов, что работать он должен на совершенно разном железе и при этом желательно не быть решетом, а значит нужно все изолировать, что дает огромнейший оверхед.

Конечно! Это разработчики браузеров криворукие, а не верстальщики, кодеры и писатели стандартов которые плевать хотели на потребление ресурсов.

winddos ★★★
()
Ответ на: комментарий от winddos

Может потому, что алгоритм по которому идет моделирования белка проще, чем алгоритмы по которым работает форма ввода сообщений?

Базовый алгоритм, по которому идёт сворачивание белка - O(n^2*t) или O(n^3*t) в зависимости от типа потенциала. Разными разбиениями пространства и оптимизациями можно свести его к O(n*t). Нормально сделать то же самое на GPU ещё сложнее, я проверял.

А вот как сделать сложность обработки GUI выше линейной, я что-то не представляю.

dmfd
()
Ответ на: комментарий от ovk48

охотиться на плохих людей за деньги, если бы это было разрешено и не грозило быстро встрять в нетехнические проблемы? УК РФ, «проблемы», плохое здоровье и сомнительные перспективы заработать на этом деньги. Все.

Мы еще со школы собирали всякие «военно-патриотические» кружки, в которых развлекались изучением стрельбы, выживанием в экстримальных условиях, мордобоем. Да блин, еще в школе мы на настоящих воздушках в пластиковых масках сражались в лесу (у меня была пятизарядная снайперка, т.к. зрение ни к черту). Спорт.. каратэ - как подойти к противнику как можно быстрее и нанести один-единственный удар, после которого он уже не в состоянии будет достать оружие. Тайцзицюань - половина приемов заключется в том, чтобы что-нибудь сломать - руку, ногу, шею, там ударов-то по этой причине нету почти, есть толчки чтобы перевести тушку противника в состояние, когда ее проще ломать. Потом стали повзрослее, стали изучать всякую бытовую кухонную психологию, которую применяли к задачам типа «пройти через проходную», «украсть документы», «убедить объект в том-то и том-то» и прочие шпионские штучки. Мне, например, были интересны методики выявления лжи и допросов, познакомился с военными, собирал всякие тексты и методички типа методички по оперативно-розыскной деятельности ментовской школы или записей нквд. Это клево, это интересно. До тех пор, пока тебя самого не привяжут к стулу и не начнут пытать. Так что лучше играть снайпером в играх, а не IRL

stevejobs ★★★★☆
()

Тоже мне, эволюция. Как была унылая полигональщина, так и осталась. Даже спрайты и пиксельарт красивее смотрятся.

vurdalak ★★★★★
()
Ответ на: комментарий от stevejobs

Дальше продолжать? :)

Ага продолжи - например, объясни, почему люди смотрят мультики.

geekless ★★
() автор топика
Ответ на: комментарий от dmfd

GUI никто не оптимизирует :)

в Дельфи (4-7?) выпадающие списки в GUI были статическими массивами с максимальной длиной. Т.к. в Дельфи не было нормальных коллекций, вместо них люди создавали в памяти выпадающие списки, и использовали их как коллекции. Естественно, на экране они не рисовались, но все равно все тормозило ппц. Особенно забавно, когда люди использовали «невизуальный» выпадающий список как контейнер промежуточных данных для вывода в нормальный список, рисующийся на формочке.

например, писали мы как-то словарик для мобилок. Тупо поиск слова из списка. Половина конкурентов тормозит адски. Так можно тормозить только если хранить слова в несортированном виде, и искать линейным поиском. Или сортировать пузырьком прямо в рантайме. Ну или вот по этой причине: http://habrahabr.ru/post/146228/. Мы делали предкомпилированные сортированные словари, в которых можно искать бинарным поиском, в результате скорости мобилки хватило даже на то, чтобы искать слово и перерисовывать список слов, прямо в момент ввода, без нажатия кнопочки «поиск» каждый раз.

stevejobs ★★★★☆
()
Ответ на: комментарий от winddos

Это разработчики браузеров криворукие, а не верстальщики, кодеры и писатели стандартов которые плевать хотели на потребление ресурсов.

Где-то в треде кто-то говорил, что «верстальщики, кодеры» НЕ криворукие? Не говорил? Тогда с чем ты тут споришь?

geekless ★★
() автор топика
Ответ на: комментарий от AlexCones

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

Komintern ★★★★★
()
Ответ на: комментарий от dmfd

Бд ручками своя, на random access files - вот это секрет успеха. Парочка скомпилированных индексов на диске, состоящих из нескольких файлов, индексы поверх индексов (плюс помойму была статистика по часто ищущимся словам). В памяти не полный индекс, памяти не хватит, а что-то типа небольшого кэша, иногда подсказывающего в поиске.

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

Т.к. в Дельфи не было нормальных коллекций, вместо них люди создавали в памяти выпадающие списки

4.2. Кое-кто просто свелосипедил нужные структуры данных сам.

Sadler ★★★
()
Ответ на: комментарий от stevejobs

в Дельфи не было нормальных коллекций

Списки были вообще-то.

geekless ★★
() автор топика
Ответ на: комментарий от Alden

Помойму, компонент назывался ListBox. С точки зрения фимозников, использующих компоненты как коллекции, отличался от ComboBox тем, что там можно было выбирать диапазон элементов. Но это было очень давно, возможно, все наврал :(

stevejobs ★★★★☆
()

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

sid350 ★★★★★
()

Подборка графических демок от Nvidia и ATI

Там засада в том, что эти демки такие демки. Специально написанные приложения, использующие ресурсы видеокарты оптимальным способом. По факту GeForce FX не вытягивала графику уровня Dawn в реальных игрушках.

Xellos ★★★★★
()
Ответ на: комментарий от winddos

Т.е. на страничке в интернетах «картинок» больше, чем при отрисовке какой-нибудь 3-d демки? А ещё там те же эффекты. И функционал такой же.

Я до сих пор понять не могу, почему у меня в системе брозеёр собирается дольше и весит больше, чем весь остальной софт. Даже вместе.

shell-script ★★★★★
()
Ответ на: комментарий от stevejobs

stevejobs> Надо сделать так, чтобы пар выглядел таинственно, дым - угрожающе, чтобы облака правильно клубились, огонь плясал атмосферно, чтобы огненные всполохи отражались на доспехах не абы как, а красиво... На пар, например, нужно накладывать цветные фантомные блики и корректировать форму. И чтобы форма была не абы какая, а, например, обтекала ландшафт. Ну и где теперь твой бог фотоаппарат?

А при чём тут текстуры? Система частиц требует знания математики в первую очередь. Вообще это задача движка предоставить такое, а не художников - рисовать.

Quasar ★★★★★
()
Ответ на: комментарий от cvs-255

Или на него не давили и не говорили, что белок надо было смоделировать вчера.

И да, обработка формы всё-таки больше подсистем задействует в принципе.

quiet_readonly ★★★★
()
Ответ на: комментарий от dmfd

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

А вот как сделать сложность обработки GUI выше линейной, я что-то не представляю.

Сложность парсинга и JIT-компиляции javascript выше линейной.

quiet_readonly ★★★★
()
Ответ на: комментарий от shell-script

Т.е. на страничке в интернетах «картинок» больше, чем при отрисовке какой-нибудь 3-d демки?

Общий объем данных и скриптов обычно больше.
Ты ещё учитывай, что большинство демок (и многие игры) при старте подгружают все нужные данные в оперативку, и впоследствии быстро могут развернуть их или загрузить в видео память.
Плюс игровой движок всегда точно знает какие данные в него будут загружены, форматы строго заданы и при любом неправильном скрипте он скорее всего обрадует зрителя сегфолтом.

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

winddos ★★★
()
Ответ на: комментарий от quiet_readonly

В моделировании белка есть один базовый алгоритм, и всё.

Как бы не так. Каждый тип потенциала — свой алгоритм: EAM, bond-order, всякие CTIP друг от друга отличаются как небо и земля. Для близкодействующих потенциалов — один алгоритм суммирования. Для дальнодействующих с периодическими гранусловиями — другой. Для дальнодействующих с непериодическими гранусловиями — третий. Всё это может присутствовать в модели одновременно. Каждый fix — тоже свой алгоритм.

и в принципе отстуствующие при моделировании белка задержки на связь с сервером.

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

Сложность парсинга и JIT-компиляции javascript выше линейной.

Но это же один раз должно по идее делаться, при загрузке страницы.

dmfd
()

как всё запущено. Эволюции не заметил в роликах

Bad_ptr ★★★★★
()
Последнее исправление: Bad_ptr (всего исправлений: 1)

насколько криворукими приходится быть разработчикам браузеров и сайтов

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

quantum-troll ★★★★★
()
Ответ на: комментарий от stevejobs

Или там, ездить на автомобиле на закиси озота со стартовой скоростью 100500.

Дальше продолжать? :)

озота

[grammar_nazi_mod] Продолжай. На скорости 100500 в стену сделай. [/grammar_nazi_mod]

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

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

another ★★★★★
()
Ответ на: комментарий от another

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

Плюсую. Ибо стадо должно иметь младенческую «недеформированную» психику, примитивнейшие реакции и недоразвитое мышление.

Sadler ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.