Pull to refresh
46
0.1
Send message

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

Когда о ней заранее предупреждают - то видно. А в классическом эксперименте участникам предлагают проверить свою внимательность, считая броски мяча. Результаты поразительные. Многие пропустившие потом утверждают, что им показали два разных видео.

Завидую белой завистью.

"Не спешите выбрасывать ржавый металлический матрац старой кровати. Выбросьте его медленно, с удовольствием", писал наш великий современник.

На полях заметим, что идеальные шифры вроде OTP или полного блочного давным-давно известны, используют простейшую математику, доступную школьникам младших или средних классов и очень просто доказываемые свойства. Вот только...

И в результате получаем всё тот же сдвиг от знания секрета к обладанию ключевым объектом.

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

Вероятно, это Script-Fu — диалект Лиспа, используемый в GIMP.
Перевели на русский, говорите? «Изучения» и «ускорения», говорите? Ну штош...image
Здесь, как мне представляется, есть противоречие. Итератор-«указатель» сам по себе глубоко императивен: с его помощью мы описываем извлечение элемента, а потом пишем, что делаем с извлечённым. Диапазон, покрывающий некий набор элементов, позволяет описывать операции с целым набором, поднимаясь на новый уровень абстракции: диапазоны можно фильтровать, преобразовывать, генерировать, объединять, перемешивать и что только не. За счёт этого резко возрастает выразительность и декларативность.

Ну а если мы пытаемся создать абстракцию, предназначенную изначально для как можно более декларативного языка, то хорошо бы отставить в сторону и итераторы и диапазоны и только аккуратно иногда на них поглядывать в плане «а что в них хорошего и почему именно это — хорошо?». Надо попробовать создать собственную абстракцию, наделив её в максимальной мере желательными свойствами. И уж декларативный-то язык как раз скорее должен разговаривать не извлечением элементов по штучке в духе «смыть-повторить».
Упрощает-то он упрощает, но это не главное. Он предотвращает ошибки, связанные с использованием итераторов-«указателей» из разных контейнеров, позволяет избежать проблем инвалидации, а главное — реализовать мощные преобразования, которые можно легко и выразительно связывать в цепочки. А схожесть обусловлена применением для тех же целей. Странно было бы, если бы у них не оказалось ничего общего.

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

Тем не менее, многие языки изначально ориентируются на диапазоны, да и в тот же C++ они активно внедряются и наверняка со временем старые итераторы уйдут в прошлое.
Кратко резюмируя итоги нескольких десятилетий развития разработки ПО, вылившиеся в конвергенцию определённых тенденций в современных ЯП: итераторы — плохо, диапазоны — хорошо.
Потратив сравнительно небольшое количество кирпичей, имеющих отнюдь не планковскую высоту, можно дойти до таких высот, где: а) дуют постоянные сильные ветры, которые размечут построенную башню; б) вращение Земли неизбежно дестабилизирует построенную башню; в) притяжение Земли перестанет удерживать кирпичи друг рядом с другом.
Здравый смысл подсказывает нам, что в случае с ядовитыми пулями основным поражающим фактором будет не кинетическая энергия пули, а собственно действие яда. Следовательно, оружие с ядовитыми пулями можно сделать компактным, малошумным и пригодным для маскировки во внешне безобидные предметы без ущерба для смертоносности.
Ну или можно отложить циркуль и угольник в сторонку:
image
Если бросать лучи, то да. MS выигрывает у SS за счёт того, что шейдер считается один раз сразу для многих сэмплов, но чтобы определить, у каких именно — нужна растеризация.

Впрочем, расстояние от источника луча до пересечения — и есть та самая линейная глубина, которая требуется Z-буферу, так что может и возможно вместо бросания лучей зайти на растеризацию.
Так всё равно пришлось же всё проецировать, к 2D-растру сводить, попутно как-то определять, кто кого заслоняет. Так что это вопрос вполне решаемый.
MSAA выполняется «в железе», поэтому с точки зрения программиста ещё более прост: сделай буфер кадра с включённым мультисемплингом, нарисуй туда и выведи. Конечно, до тех пор, пока в игру не вступает клятый deferred shading.
В заголовке написано про восемь с лишним часов, а на приведённом распорядке дня размечено ровно 6 часов под так называемый deep work
image

Information

Rating
3,607-th
Location
Москва и Московская обл., Россия
Registered
Activity