Глубина резкости в компьютерной графике

использованная литература

Источники

  • Адамс, Ансель (1980). . Нью-Йоркское графическое общество. ISBN . Адамс, Ансель. 1980. Камера .
  • Гибсон, Х. Лу. 1975. Крупный план и фотомакрография . 2-е объединенное изд. Публикация Kodak № N-16. Рочестер, штат Нью-Йорк: Компания Eastman Kodak, Том II: Фотомакрография. ISBN  0-87985-160-0
  • Хопкинс, HH 1955. Частотная характеристика расфокусированной оптической системы. Труды Королевского общества A , 231: 91–103.
  • Лефковиц, Лестер. 1979 Руководство по макросъемке . Гарден-Сити, Нью-Йорк: Амфото. ISBN  0-8174-2456-3
  • Рэй, Сидни Ф. 1994. Фотографические линзы и оптика . Оксфорд: Focal Press. ISBN  0-240-51387-8
  • Рэй, Сидни Ф. 2000. Геометрия формирования изображения. В Руководстве по фотографии: фотографические и цифровые изображения , 9-е изд. Эд. Ральф Э. Якобсон, Сидни Ф. Рэй, Джеффри Г. Аттеридж и Норман Р. Аксфорд. Оксфорд: Focal Press. ISBN  0-240-51574-9
  • Шипман, Карл. 1977. Справочник фотографа SLR . Тусон: Книги HP. ISBN  0-912656-59-X
  • Стоксет, Пер А. 1969. Свойства расфокусированной оптической системы. Журнал Оптического общества Америки 59:10, октябрь 1969, 1314–1321.
  • Штробель, Лесли. 1976. Техника просмотра камеры . 3-е изд. Лондон: Focal Press. ISBN  0-240-50901-3
  • Tillmanns, Urs. 1997. Творческий большой формат: основы и приложения . 2-е изд. Фейертхален, Швейцария: Sinar AG. ISBN  3-7231-0030-9
  • фон Рор, Мориц . 1906. Die optischen Instrumente . Лейпциг: Б.Г. Тойбнер
  • Уильямс, Чарльз С., и Беклунд, Орвилл. 1989. Введение в оптическую передаточную функцию . Нью-Йорк: Вили. Перепечатано в 2002 г., Беллингхэм, Вашингтон: SPIE Press, 293–300. ISBN  0-8194-4336-0
  • Уильямс, Джон Б. 1990. Четкость изображения: фотография с высоким разрешением . Бостон: Focal Press. ISBN  0-240-80033-8
  • Эндрю Кей, Джонатан Мэзер и Гарри Уолтон, «Увеличенная глубина резкости за счет цветной аподизации», Optics Letters, Vol. 36, выпуск 23, стр. 4614–4616 (2011).

Lecture

1. Terminology

The V-Ray Physical Camera is based on a real-world camera so the concepts of photography apply. Here’s some terms to be aware of when thinking about the Physical Camera

  • Aperture
    • The hole in a camera lens that allows light to travel through to the inside of a camera
  • Bokeh (pronounced BOH-Kay)

    The way a lens renders out of focus points of light

  • Shutter Speed (or Exposure Time)
    • The length of time when the film or digital sensor inside the camera is exposed to light
  • ISO (International Standards Organization)

    A camera’s sensor (or film) sensitivity to light, which can help balance effects during the exposure process

2. Physical Camera

a) Aperture

  • Referred to as F-number in V-Ray Physical camera
  • The opening in the camera lens that allows more or less light to pass through into the camera
  • The smaller the opening the smaller the amount of light in the exposure
  • Plays a huge role on Depth of Field
    • The larger the opening (smaller F-number) the shallower the focus area is in depth
    • The smaller the opening, the more distance between objects that are still in focus

b) Bokeh

  • Most visible around small background highlights
  • The shape of the bokeh is effected by the number of blades in the lens that make up the aperture
  • Normally seen in macro or long telephoto lenses because of the shallow Depth of Field

c) Shutter Speed

  • The amount of light that reaches the film or image sensor is proportional to the exposure time

    1/500th of a second will let half as much light in as 1/250th

  • Plays a huge role on Motion Blur
    • Faster Shutter Speeds can capture fast moving objects with less motion blur
    • Slower Shutter Speeds allow more light into the camera during the exposure process

d) Physical Camera Overview

  • To convert an existing Maya camera to a V-Ray Physical Camera, we add the Physical Camera Attribute from the menu in the Attribute Editor

    The camera’s shape node must be selected

  • This will add Extra V-Ray Attributes to the bottom of the Attribute Editor

    Camera is not a V-Ray Physical camera until the checkbox Treat as VRay Physical camera is Enabled

  • The Camera settings (extra attributes) overrides some of the Camera settings from the V-Ray Render Settings
    • These settings control the way geometry is projected into the image
    • Allows each camera to have different render settings

  • F-number – determines the width of the camera aperture
  • Shutter speed – 

    If the shutter’s speed was 1/30s the value of the parameter would be 30

    the speed of the camera shutter in inverse sec.

  • ISO – 

    Smaller values make the image darker, larger values make it brighter

    determines the film power (sensitivity)

  • Lens Shift – enter values to shift the lens to mimic real life Tilt-Shift lens effects, which is particularly popular in architectural photography
  • Aperture Map – this attribute allows you to map a custom shaped aperture for your camera for more advanced control over the Bokeh shape

е) Motion Blur
 

Without Motion Blur

With Motion Blur

f) Shutter Speed

  • Determines how long the camera will be open to expose an image
    • The longer this time is (small shutter speed value) – the more blurry the motion will be
    • In reverse — if the shutter speed is shorter, fast motion will appear more frozen in place

Shutter speed: 10

Shutter speed: 20

g) ISO

  • Determines the sensitivity (brightness) of the image

Shutter speed: 10   ISO: 20

Shutter speed: 40   ISO: 80

 h) Depth of Field

 

Without Depth of Field

With Depth of Field

 i) Bokeh Effects

  • Shape of out of focus highlights is affected by the aperture shape
  • Number of blades and blade rotation
  • Aperture Mapping
    • Adds a texture to aperture shape
    • Can also affect exposure level due to any darkness in the map

Without Aperture Map

With Triangular Aperture Map

j) F-number

  • Lowering the F-number value will narrow the area of what’s in focus with Depth of Field
  • Increasing the F-number will allow more of your subject (or the area around it) to be in focus

F-number: 2.0

F-number: 5.5

k) ISO

  • Just like with adjusting the Shutter, we can use the ISO setting to correct the exposure when adjusting the F-number

F-number: 2.0   ISO: 100

F-number: 5.5   ISO: 800

 l) Focal Length

  • Smaller focal lengths will expand the area of what’s in focus with Depth of Field
    • In the examples below, the Focal length has been changed from 55mm to 35mm
    • The camera has been translated forward to try to match the position on the front of the train
    • Notice how the tree to the left of the train is much more in focus and he bubbles are more clear

Focal length: 50mm

Focal length: 35mm   (camera dollied in)

Формулы DOF

В этом разделе рассматриваются некоторые дополнительные формулы для оценки глубины резкости; Однако все они подвержены значительные упрощающие допущения: например, они предполагают параксиальное приближение в гауссовой оптике . Они подходят для практической фотографии, дизайнеры объективов использовали бы значительно более сложные.

Фокус и f-число от пределов глубины резкости

Для данных ближнего и дальнего DOF пределов и , требуемая е -номер является наименьшим , когда фокус установлен на
DN{\ Displaystyle D _ {\ mathrm {N}}}DF{\ Displaystyle D _ {\ mathrm {F}}}

sзнак равно2DNDFDN+DF,{\ displaystyle s = {\ frac {2D _ {\ mathrm {N}} D _ {\ mathrm {F}}} {D _ {\ mathrm {N}} + D _ {\ mathrm {F}}}},}

средняя гармоническая из ближних и дальних расстояний. На практике это эквивалентно среднему арифметическому для малой глубины резкости. Иногда пользователи камеры зрения относятся к разнице в качестве распространения фокуса .
vN-vF{\ displaystyle v _ {\ mathrm {N}} -v _ {\ mathrm {F}}}

Размытие переднего и заднего плана

Если объект находится на расстоянии, а передний план или фон находятся на расстоянии , пусть расстояние между объектом и передним планом или фоном будет обозначено
s{\ displaystyle s}D{\ displaystyle D}

Иксdзнак равно|D-s|.{\ Displaystyle х _ {\ mathrm {d}} = | Ds |.}

Диаметр диска нерезкости из деталей на расстоянии от объекта съемки может быть выражен в виде функции от предмета увеличения , фокусное расстояние , ф -номер , или , альтернативно , в отверстии , в соответствии с
б{\ displaystyle b}Иксd{\ Displaystyle х _ {\ mathrm {d}}}мs{\ Displaystyle м _ {\ mathrm {s}}}ж{\ displaystyle f} N{\ displaystyle N} d{\ displaystyle d}

бзнак равножмsNИксds±Иксdзнак равноdмsИксdD.{\ displaystyle b = {\ frac {fm _ {\ mathrm {s}}} {N}} {\ frac {x _ {\ mathrm {d}}} {s \ pm x _ {\ mathrm {d}}}} = dm _ {\ mathrm {s}} {\ frac {x _ {\ mathrm {d}}} {D}}.}

Знак минус применяется к объекту переднего плана, а знак плюс применяется к фоновому объекту.

Размытие увеличивается по мере удаления от объекта; когда меньше круга нечеткости, детализация находится в пределах глубины резкости.
б{\ displaystyle b}

Преодоление ограничений глубины резкости

Некоторые методы и оборудование позволяют изменять видимую глубину резкости, а некоторые даже позволяют определять глубину резкости после создания изображения. Например, наложение фокуса объединяет несколько изображений, сфокусированных на разных плоскостях, в результате получается изображение с большей (или меньшей, если желательно) кажущейся глубиной резкости, чем любое из отдельных исходных изображений. Точно так же, чтобы восстановить трехмерную форму объекта, карта глубины может быть создана из нескольких фотографий с разной глубиной резкости. Ксион и Шафер, в частности, пришли к выводу, что «… улучшение точности определения дальности фокуса и диапазона расфокусировки может привести к эффективным методам восстановления формы».

Другой подход — это свипирование фокуса. Фокальная плоскость перемещается по всему соответствующему диапазону во время одной экспозиции. Это создает размытое изображение, но с ядром свертки, которое почти не зависит от глубины объекта, так что размытие почти полностью удаляется после вычислительной деконволюции. Это дает дополнительное преимущество, заключающееся в значительном уменьшении размытости при движении.

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

Дизайн объектива можно изменить еще больше: при аподизации цвета объектив видоизменяется таким образом, что каждый цветовой канал имеет разную диафрагму. Например, красный канал может быть f / 2,4, зеленый может быть f / 2,4, а синий канал может быть f / 5,6. Следовательно, синий канал будет иметь большую глубину резкости, чем другие цвета. Обработка изображения определяет размытые области в красном и зеленом каналах и в этих областях копирует данные с более резкими краями из синего канала. В результате получается изображение, сочетающее в себе лучшие черты различных f- чисел.

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

Нововведения в шейдерах V-Ray

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

VRmats

Стала доступна поддержка шейдеров VRmats с поддержкой собственного редактора, доступного из интерфейса шейдера VRayVRmatMtl в редакторе материалов 3ds Max. В VRmats можно создать 8 типов шейдеров, в основе которых лежат компоненты, входящие в базовые шейдеры V-Ray. К поддерживаемым шейдерам, относятся: Angle Blend, Multi Material, Skp Two Sided, Standard, Toon, Two Sided, V-Ray Material и Wrapper Material. Все они универсальны для любого пакета, где установлен V-Ray, и содержат привычные для пользователей параметры.

VRayLightMtl

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

V-Ray Fur

Значительно оптимизирован шейдер волос и меха. Как и в предыдущих версиях V-Ray, пользователи могут использовать как стандартную систему Hair & Fur в 3ds Max, так и систему волос V-Ray Fur. Однако, теперь можно увеличить скорость визуализации от 5 до 15 раз!

Новые шейдеры и поддержка OSL

С выходом V-Ray 3.0 пользователи получат не только новый универсальный формат шейдеров, но и шейдеры, полностью оптимизированные под новые возможности движка визуализации:

  • интуитивный Skin Shader, позволяющий создавать комплексный многослойный шейдер кожи;
  • повышенную производительность визуализации SSS-шейдера, включая поддержку трассировки луча;
  • возможность использования стандарта OSL для создания собственных материалов.

ActiveShadе

ActiveShade теперь полностью интегрирован, а также стал более гибким и надежным. Вы получаете необходимый результат практически мгновенно! Даже при использовании сложных инструментов вы в режиме реального времени видите все изменения, добавляемые в сцену. Это стало возможно благодаря гибридному ускорению CPU и GPU с использованием CUDA. Вы экономите массу времени при работе со сложной сценой, поскольку после внесения каждого изменения теперь не нужно делать новые рендеры.

Обзор инструментов

После конвертации объекта в режим полигонов откроется перечень основных инструментов:

  • • Selection (1) — позволяет выбрать нужный уровень.
  • • Soft Selection (2) — выделение отдельных подобъектов с расширенным набором функций.
  • • Edit geometry (3) — режим редактирования геометрии подобъектов.
  • • Attach (4) — присоединяет к текущему объекту элементы каркаса, тем самым образуя новую фигуру.
  • • Detach (5) — отсоединяет выбранный подобъект с преобразованием в отдельный элемент.

Рассмотрим инструменты на уровне Vertex :

  • • Remove Isolated Vertices (6) — позволяет убрать отдельно лежащие точки объекта.
  • • Collapse (7) — объединяет все точки (вершины) в одну центральную.
  • • Cut (8) — позволяет вставить новые ребра в полисетку: их можно провести между вершинами либо имеющимися ребрами.
  • • Make Planar (9) — располагает выбранные точки в единой плоскости.
  • • Break (10) — добавляет разрыв между точками в выбранном участке.

Ключевые опции на уровне Edge:

  • • Select and Rotate (11) — выделение и вращение ребер.
  • • Connect (12) — соединение двух ребер в середине с созданием нового ребра.
  • • Chamfer (13)— образует скругления на редактируемых ребрах.
  • • Bridge (14) — выстраивает полигон (мост) от одного выделенного ребра ко второму.
  • • Create Shape (15)— преобразует выбранные ребра в отдельные линии.

Наконец, на уровне подобъектов-полигонов пользователю становятся доступны следующие инструменты:

  • • Extrude (16) — выдавливает или вдавливает полигон на нужную величину.
  • • Outline (17) — позволяет расширить или сузить полигон.
  • • Inset (18) — уменьшает или увеличивает площадь полигона без изменения его размера.
  • • Flip (19) — меняет местами стороны полигонов.
  • • Create (20) — создает новый полигон между четырьмя точками.

Полигональное моделирование

Полигональное моделирование дает возможность производить различные манипуляции с сеткой 3d объекта на уровне подобъектов: вершин, ребер, граней. Сам полигон состоит из граней, но в системах, которые поддерживают многосторонние грани, полигоны и грани будут равнозначны.

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

Полигональное моделирование подразделяется на три типа: низкополигональное, среднеполигональное и высокополигональное.

  1. низкополигональное моделирование (Low-Poly) предназначено для создания объектов с небольшим числом полигонов, обычно, для экономии ресурсов, когда не требуется высокая детализация, а так же для создания низкополигональных иллюстраций, которые набирают большую популярность в последнее время;
  2. среднеполигональное моделирование (Mid-Poly) ориентировано, обычно, только на необходимый результат при рендеринге, то есть при моделировании нужной геометрии, например, с применением булевых операций; над полигональной сеткой никакие работы по её оптимизации не производят, или они минимальны;
  3. высокополигональное моделирование (High-Poly) представляет собой создание объекта с большим числом полигонов, обычно, точной его копии.

Стандартная схема High-Poly моделирования происходит с постепенным наращиванием уровня детализации 3d объекта:

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

На рисунке представлены все вышеперечисленные уровни при High-Poly моделировании на примере теннисного мяча.

Это интересно: Как сделать подъемный кран своими руками для дачи: это надо знать

Basic

Это свиток с первичными настройками камеры. Самая важная функция здесь – это Targeted. Смысл функции в том, что у камеры создается точка, за которой следит камера. Эта точка всегда находится в фокусе камеры, объекты около нее тоже будут в фокусе. На рендере эта точка отображаться не будет. Ее можно передвигать встроенными инструментами 3ds Max, или настраивать удаление от камеры параметром Target Distance.

Свиток Show Cone позволяет выбрать отображение «конуса» — абстрактного объекта, который примерно показывает область захвата камеры. Также можно выбрать отображение линии горизонта. Горизонт можно увидеть только из вида самой камеры. Чтобы в него перейти нужно нажать клавишу «C» на клавиатуре. Чтобы выйти из нее, клавишу «P».

Зачем нужен датчик глубины резкости в телефоне?

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

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

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

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

  • Размыть задний фон на изображении можно не только во время съемки, но и тогда, когда фотография уже готова. Датчик позволяет выделить объект в фокусе или его часть и наложить на них другой цветовой фильтр или эффект.
  • Датчик позволяет размывать задний план во время съемки видеороликов, хотя это может выглядеть недостаточно аккуратно.
  • Датчик глубины — сенсор, превращающий изображение в 3D-карту. Его используют для создания трехмерных моделей, измерения расстояния и размеров предметов.
  • Датчик может использоваться для сохранения конфиденциальности. Например, во время видеоконференций или звонков пользователь может вручную скрыть задний план от посторонних.

Датчик используется не только для определения глубины резкости во время съемки — его возможности намного шире. Определяя расположение предметов, он поддерживает технологию виртуальной реальности для мобильных пользователей. И если сейчас сенсор работает неидеально, в будущем датчик глубины на телефоне может стать таким же эффективным, как и VR-очки.

Методы расчета объектного поля

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

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

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

Дифракция и глубина резкости

Дифракция приводит к потере резкости изображений при высоких значениях F-числа и, следовательно, ограничивает потенциальную глубину резкости. В обычной фотографии это редко бывает проблемой; поскольку большие числа f обычно требуют длительного времени экспозиции, размытость при движении может привести к большей потере резкости, чем потеря из-за дифракции. Однако дифракция является более серьезной проблемой при макросъемке, и компромисс между глубиной резкости и общей резкостью может стать весьма заметным, поскольку фотографы пытаются максимизировать глубину резкости с очень маленькими диафрагмами.

Хансма и Петерсон обсудили определение комбинированных эффектов расфокусировки и дифракции с использованием квадратно-квадратичной комбинации отдельных пятен размытия. Подход Хансмы определяет число f , которое даст максимально возможную резкость; Подход Петерсона определяет минимальное число f , которое даст желаемую резкость в окончательном изображении, и дает максимальную глубину резкости, для которой может быть достигнута желаемая резкость. В сочетании эти два метода можно рассматривать как дающие максимальное и минимальное f-число для данной ситуации, при этом фотограф может выбирать любое значение в пределах диапазона, если позволяют условия (например, потенциальное размытие при движении). Гибсон дает аналогичное обсуждение, дополнительно рассматривая эффекты размытия аберраций объектива камеры, увеличивающую дифракцию объектива и аберрации, негативную эмульсию и бумагу для печати. Кузен дал формулу, по существу такую ​​же, как формулу Хансмы для оптимального f-числа , но не обсуждал ее вывод.

Хопкинс, Стоксет, Уильямс и Беклунд обсудили комбинированные эффекты, используя передаточную функцию модуляции .

Шкала глубины резкости

Деталь от объектива, установленного на f / 11. Точка на полпути между отметками 1 м и 2 м, предел глубины резкости при f / 11, представляет собой фокусное расстояние приблизительно 1,33 м (величина, обратная среднему значению обратных величин 1 и 2, составляет 4/3).

Шкала глубины резкости на циферблате фокусировки Tessina

Многие линзы включают шкалы, которые показывают глубину резкости для заданного фокусного расстояния и числа f ; объектив 35 мм на изображении типичен. Эта линза включает шкалу расстояний в футах и ​​метрах; когда отмеченное расстояние установлено напротив большой белой индексной метки, фокус устанавливается на это расстояние. Шкала глубины резкости под шкалами расстояний включает отметки по обе стороны от индекса, соответствующие числам f . Когда объектив настроен на заданное число f, глубина резкости простирается между расстояниями, которые совпадают с отметками числа f .

Фотографы могут использовать шкалы объектива, чтобы работать в обратном направлении от желаемой глубины резкости, чтобы найти необходимое фокусное расстояние и диафрагму. Для показанного 35-миллиметрового объектива, если требуется, чтобы глубина резкости увеличивалась от 1 м до 2 м, фокус был бы установлен таким образом, чтобы индексная метка была центрирована между метками для этих расстояний, а диафрагма была бы установлена ​​на f / 11. .

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

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
3D-тест
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: