Электронная библиотека » Дмитрий Рябцев » » онлайн чтение - страница 26


  • Текст добавлен: 10 ноября 2013, 00:19


Автор книги: Дмитрий Рябцев


Жанр: Программы, Компьютеры


сообщить о неприемлемом содержимом

Текущая страница: 26 (всего у книги 31 страниц) [доступный отрывок для чтения: 8 страниц]

Шрифт:
- 100% +
Отбрасывание теней

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

В 3ds Max 2009 для лучшей визуализации сцен и придания реалистичности используется несколько разновидностей теней (рис. 5.24). По умолчанию в списке установлены тени типа Shadows Map (Карта теней). Этот тип отображает мягкие тени со слегка размытыми краями, потому что рассчитывается как центральные проекции освещаемых предметов из точки расположения источника света на поверхность падения теней. Далее в списке имеется еще несколько типов теней. Тени типа Ray Traced Shadows (Тени прохождения лучей) формируются как области, абсолютно неосвещенные лучами источника, которые трассируются (отслеживаются) к точке наблюдения от источника. Данный метод применяется для построения теней с резким переходом от светлой области к темной. Тени получаются правильно вычерченными геометрически, но требуют много времени на визуализацию. Способ построения теней Adv.Ray Traced (Усовершенствованное прохождение лучей) схож со способом трассировки лучей и имеет дополнительные параметры настройки – Adv. Ray Traced Params (Параметры усовершенствованных трассированных теней) (рис. 5.25) и Optimisation (Оптимизация), которые в основном применяются в случае, когда необходимо настроить тени от фотометрических площадных источников света. Тени, образованные прохождением лучей, четко повторяют контуры отбрасывающих их предметов, но выглядят не совсем естественными и слишком резкими. В реальности источники света не испускают свет из одной точки, как стандартные источники в 3ds Max 2009. Обычно область испускания света имеет определенные размеры, и у объекта, отбрасывающего тени, есть точки, в которых источник света заслоняется не полностью, а частично – они дают области мягкого перехода от света к тени, следовательно, тени не будут такими резкими.

Рис. 5.24. Список типов теней


Рис. 5.25. Расширенные параметры трассируемых теней


При использовании теней типа Area Shadows (Тени области) источник освещения заменяется несколькими точечными осветителями, равномерно расположенными в пределах заданной области. Для настройки теней области надо после установки источника в сцене перейти на вкладку Modify (Модификация) командной панели и в списке раздела Basic Options (Стандартные параметры) свитка Area Shadows (Тени области) выбрать один из вариантов источника света, который будет отбрасывать тени области:

• Simple (Простой) – точечный источник без расчета теней области;

• Rectangle Light (Прямоугольник света) – точечные излучатели, испускающие свет, представляют собой прямоугольную решетку;

• Disc Light (Дисковый источник) – точечные источники расположены вдоль окружностей;

• Box Light (Источник в виде параллелепипеда) – точечные источники представляют собой прямоугольную трехмерную решетку;

• Sphere Light (Сферический источник) – точечные источники располагаются в пределах сферы.

Выбрав вариант источника света для теней области, необходимо настроить его воображаемые длину (Lenght), ширину (Width) и высоту (Height) в пространстве (рис. 5.26).

Рис. 5.26. Параметры теней области


Прозрачность тени или подсвечивание ее определенным цветом можно настроить в свитке Shadows Parameters (Параметры теней) раздела Lighting (Освещение), изменяя цвет и плотность (рис. 5.27).

Рис. 5.27. Параметры теней источников освещения 3ds Max 2009


Завершая обзор настройки теней, стоит заметить, что тени типа Shadows Map (Карта теней) являются самыми простыми и примитивными, но самыми выгодными в смысле скорости расчета. Тени, основанные на прохождении лучей, и тени области получаются самыми правдоподобными, но требуют больше времени на расчеты и больших вычислительных мощностей. Кроме того, в 3ds Max 2009 возможно указать, отбрасывает ли тень каждый отдельно взятый объект в сцене.

Алгоритмы расчета освещенности

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

Осветить сцену в 3ds Max 2009 можно при помощи нескольких алгоритмов расчета освещения. По умолчанию программа предлагает визуализацию сцены, применяя Mental Ray без просчета глобального освещения. В этом случае программа не учитывает рассеянное освещение (Indirect Illumination), которое формируется при отражении света от предметов. Если нужен расчет глобального освещения, то необходимо в настройках Mental Ray включить расчет GI либо воспользоваться встроенным в 3ds Max 2009 модулем расчета переноса излучения (Radiosity). Стоит напомнить, что в прошлой версии программы разработчики улучшили метод разбиения поверхностей для метода Radiosity (Перенос излучения) – radiosity adaptive subdivision (адаптивное разбиение для переноса излучения). При использовании этого алгоритма время визуализации существенно увеличивается, но результат выглядит реалистичнее, нежели в более ранних версиях. При помощи модулей внешнего рендеринга Mental Ray, Brazil, VRay и других расчет и отображение глобального освещения происходит более качественно, вследствие чего визуализированные изображения претендуют на фотореалистичность. Далее рассмотрены способы освещения и визуализации сцены с помощью разных алгоритмов.

Конечно, можно было не рассматривать освещение сцены с помощью стандартных источников освещения 3ds Max 2009, а перейти сразу к описанию визуализации модулями, использующими просчет GI (Глобального освещения). Но во-первых, стандартные источники входят по умолчанию в состав 3ds Max 2009 и не упомянуть о них нельзя, а во-вторых, если научиться правильно и красиво освещать сцену стандартными источниками света, в дальнейшем не составит труда освоить любой модуль внешнего рендеринга с расчетом GI (Глобального освещения). Кроме того, даже при помощи стандартных источников освещения можно довольно прилично сымитировать глобальное освещение.

Подготовка сцены к установке осветителей

Прежде всего для установки освещения сцену нужно определенным образом подготовить. Многие специалисты трехмерной графики предпочитают устанавливать освещение в сцене, когда все объекты в ней без текстур и материалов. То есть если освещенная сцена без материалов выглядит реалистичной, то с текстурами она будет смотреться еще лучше. Точно так же поступим с описываемой сценой. Есть только одна загвоздка – материалы для сцены уже созданы и назначены ее объектам, а удалить их все и после установки освещения назначить заново – работа довольно трудоемкая. И здесь нужно помнить, что один из самых важных инструментов специалиста 3D-графики – время. Поэтому необходимо воспользоваться инструментом Manage Scene States (Управление данными сцены), появившимся в восьмой версии. С его помощью можно осуществлять гибкое управление свойствами материалов, осветителей, объектов, камер и т. д. В частности нам понадобится сохранить все материалы, а затем назначить всем объектам сцены, кроме материалов потолка и той части стены, которая будет окрашена в белый цвет, одинаковый стандартный серый материал. У объектов с белым материалом оставьте его неизменным, кроме того, не стоит изменять материалы оконных рам и стен помещения, для того чтобы проверить влияние света на них и при необходимости подправить материал. Для этого проделайте следующее.

1. Откройте сцену Walls&materials_Std_cam.max или загрузите ее с DVD-диска, прилагаемого к книге. Открыв пункт меню Tools (Сервисные инструменты), выберите из свитка Manage Scene States (Управление данными сцены). В открывшейся диалоговой панели (рис. 5.28) нажмите кнопку Save (Сохранить) и в открывшейся далее панели выберите тип ресурсов Materials (Материалы) и сверху введите имя ресурса Mat_Std_Scn (см. рис. 5.28). Нажмите кнопку Save (Сохранить), и имя ресурса отобразится в первом диалоговом окне.

Рис. 5.28. Диалоговые панели управления ресурсами сцены


2. После этого, выделяя по очереди группы объектов всей сцены, назначьте им серый стандартный материал. Как уже было сказано, стены, рамы и объекты с белым материалом оставьте неизменными. Теперь, когда после установки освещения понадобится вернуть обратно все материалы сцены, достаточно вновь вызвать диалоговое окно управления ресурсами и, выбрав из списка нужный, нажать кнопку Restore (Вернуть).

3. Выберите в видовом окне Perspective (Перспектива) вид из камеры 2. Продолжая подготавливать сцену к освещению, для ускорения тестовых просчетов скройте слой мебели второго этажа и стойку домашнего кинотеатра, которая не видна в камеру. Также можно скрыть модели дверных коробок и молдингов.

4. Создайте три новых слоя. В один из них – Sun_Light далее поместим источники света, отвечающие за имитацию света солнца и неба. Эти источники будут одинаковыми при визуализации первого и второго этажей. Другие два слоя назовите Lights F Floor и Lights_S_Floor, в них поместим дополнительную подсветку для первого и второго этажа соответственно. Назовите сцену как Walls&materials_Std_Gray.max. Сцена готова к установке освещения. Если компьютер не очень мощный и видеоадаптер не обладает достаточным количеством памяти, то стоит скрыть все модели мебели и обязательно скройте объект, имитирующий шкуру, так как он сильно замедляет визуализацию за счет использования Hair&Fur (Волосы и шерсть).

Стандартное освещение сцены

В данной сцене интерьера с помощью стандартных источников попробуем сымитировать дневное освещение (свет из окна) с помощью источников света в помещении. Дневное освещение в помещении строится из нескольких составляющих: яркий прямой солнечный свет, рассеянный свет неба, которые проникают в помещение через окно, и последняя составляющая – это отраженный свет стен, потолка и предметов в помещении. Для каждого вида света необходимо как можно точнее настроить цвет (цветовую температуру) источника. Так цветовая температура солнечного света в яркий день равна примерно 5500 К. Подобный цвет можно воспроизвести, используя аддитивную цветовую модель (R – 250, G – 230, B – 195). Свет ясного неба имеет температуру 10 000-20 000 К, который также можно воссоздать с помощью аддитивной модели отображения цветов (серо-голубоватый цвет). Однако программа трехмерной графики имеет свои особенности и ограничения на воспроизведение цветов источников света и реакции объектов на них. То есть в сцене правильно заданная температура источника не обязательно будет давать нужный эффект. Поэтому цвета излучения осветителей для наиболее приемлемого результата, как правило, приходится подбирать вручную.

Следующая особенность, которую стоит учитывать при моделировании освещения в трехмерной сцене, – цветовая адаптация зрения человека. В реальной жизни, например, невозможно встретить чистых цветов спектра. Как правило, цвет предмета, который непосредственно виден человеку, является результатом взаимодействия цвета освещающих его лучей, отраженного предметом света и отраженного света, окружающих его предметов (эффект «color bleeding»). Однако при этом человек почти всегда наверняка получает от мозга информацию об основном цвете предмета. Это и есть одно из проявлений цветовой адаптации зрения, обусловленной особенностями восприятия цвета человеком и его накопленного опыта. Например, вечером потолок в комнате кажется темно-серым из-за недостаточного освещения его искусственными источниками и частично окрашенным в цвета световых лучей этих источников, но мы знаем, что потолок белый, и с некоторым допущением можно сказать, что мы видим этот цвет. Или, иначе говоря, мозг преподносит нам картину окружающего мира с учетом цветовой адаптации зрения. Это стоит помнить при имитации реалистичного освещения трехмерных сцен. Если же вдруг понадобится увидеть истинный цвет объекта в данный момент времени, а цветовая адаптация сбивает с толку, то достаточно взглянуть на объект, расположив рядом с ним чистый лист белой бумаги, сложенный в несколько раз.

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

Существует несколько способов установки освещения. Например, вначале устанавливаются направленные источники света, точечные осветители. Затем постепенно добавляются источники рассеянного (заполняющего) света, который смешивается с прямым светом. Либо наоборот: вначале нужно установить в сцене источники рассеянного света, а затем добавить световые акценты. С точки зрения простоты настройки для освещения сцены интерьера, описываемой в проекте, нам больше подойдет первый способ настройки.

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

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

1. Продолжаем работать с файлом Walls&materials_Std_Gray.max. Если он не открыт, загрузите его с DVD-диска из папки Scenes_assembly. Выберите вид из камеры номер 2, чтобы в видовом окне были видны все окна помещения (см. рис. 5.15). Это нужно для того, чтобы видеть свет от источников, которые будут установлены для имитации света из окна. Сделайте активным слой Sun_Light.

2. Для прямого света из окна используем один источник. На вкладке Create (Создать) командной панели нажмите кнопку Lights (Осветители) и выберите тип источника Target Direct (Нацеленный направленный). Щелкнув левой кнопкой мыши в видовом окне Top (Сверху), установите источник в сцену так, чтобы сам источник был снаружи, а его цель была в середине стены помещения. Если же смотреть на сцену сбоку, то направление света должно быть сверху под наклоном (рис. 5.29). Установите флажок On (Вкл) в области Shadows (Тени), выберите тип теней Ray Traced Shadows (Тени прохождения лучей). Данный тип теней понадобится для того, чтобы имитировать резкие тени от источника солнечного света. Параметр Multiplier (Множитель) сделайте равным 3, так как это должен быть самый яркий источник. Цвет источника сделайте близким по цветовой температуре к солнечному цвету (Red – 250, Green – 230, Blue – 160). В свитке Directional Parameters (Параметры направленного источника) установите флажок Show Cone (Показывать конус), тип луча – Rectangle (Прямоугольный), размерам Hotspot/Beam (Точка/Луч) и Falloff/Field (Спад/Поле) присвойте значения 200 см и 220 см соответственно (рис. 5.30). Если сейчас визуализировать сцену, то вследствие отсутствия отражения света окна будут ярко засвечены, а остальная часть сцены будет покрыта мраком.

Рис. 5.29. Расположение осветителя для имитации солнечного света


Рис. 5.30. Параметры настройки источника, имитирующего солнце


3. Далее необходимо ввести в сцену дополнительные источники. Во-первых, нужно создать источники, имитирующие рассеянный свет неба. Для каждого этажа это будут отдельные источники. Сделайте активным слой Lights_F_Floor. На виде справа создайте источник типа Free Spot (Свободный прожекторный) по размеру одной рамы окна напротив первого этажа и расположите его сразу за рамой (рис. 5.31). Множитель установите равным 0,5, включите дальнее затухание, начало которого установите равным 500 см, а окончание – 1050 см. Цвет источника (R – 215, G – 225, B – 240) – близкий по цветовой температуре к цвету неба. В свитке Spotlight Parameters (Параметры пятна) в полях Hospot/Beam (Яркое пятно/Луч) и Falloff/Field (Спад пятна/Поле) поставьте значения 80 и 92 соответственно. Установите значение Aspect (Аспект) равным 1,5 для коррекции прямоугольной формы источника. Сделайте копию осветителя типа Instance (Экземпляр) и разместите напротив рамы второго этажа. Тип теней, которые нужно использовать у данного типа источников, должен быть Area Shadows (Тени области) или Adv. Ray Traced (Усовершенствованные трассированные тени) с включенным параметром прозрачности, для того чтобы были видны мягкие размытые тени, однако это во много раз увеличит время визуализации изображения, поэтому для указанных источников можно использовать тени типа Area Shadows (Тени области) вида Simple (Простые). Более правильно было бы использовать тени области вида Rectangle Light (Прямоугольный свет) – только при условии хорошей вычислительной мощности компьютера, так как использование этого вида теней увеличивает время визуализации сцены в 6–7 раз, хотя данные тени выглядят более правильно и реалистично. Визуализируйте сцену и увидите, что она по-прежнему выглядит слишком темной, хотя и на объектах виден рассеянный голубоватый свет, имитирующий небесный. Это происходит потому, что от стены не отражается свет, который должен подсвечивать все объекты изнутри помещения.

Рис. 5.31. Расположение источников рассеянного света


4. Теперь необходимо сымитировать рассеянное освещение (GI – глобальное освещение) в пространстве первого этажа. На виде сверху создайте источник Omni (Всенаправленный). Тип теней установите Shadows Map (Карта теней), Multiplier (Множитель) – 0,03, а цвет источника сделайте нейтрального белого цвета. В свитке Advanced Effects (Расширенные эффекты) снимите флажок у параметра Specular (Блик), оставив только у параметра Diffuse (Диффузный). В свитке Shadow Map Parameters (Параметры карты теней) установите параметры отображения теней (рис. 5.32), так тени будут более рассеянными и качественными. Сделайте четыре копии источника типа Instance (Экземпляр) и разместите их по форме окна внутри помещения сразу за рамой (рис. 5.33). Это необходимо для того, чтобы измененные у одного светильника параметры автоматически изменялись у всех остальных, продублированных таким способом. Выделите пять только что созданных источников, перейдите в окно вида Right (Справа) и сделайте еще шесть копий Instance (Экземпляр), разместив их по высоте рамы (см. рис. 5.33). Соберите тридцать всенаправленных источников в группу Frame GI и поместите в слой Sun_light. Данные источники будут имитировать глобальное освещение в зоне окна. Их положение и параметры будут неизменны при визуализации как первого, так и второго этажа. Расположив светильники, визуализируйте сцену (рис. 5.34). Естественно, помещение будет казаться достаточно темным, так как света от источников хватает только чтобы осветить пространство около окна. Сохраните файл как Walls&materials_Std_Gray1.max, чтобы в случае непредвиденных ошибок можно было вернуться к предыдущему варианту. Файл закрывать не нужно.

Рис. 5.32. Параметры карты теней источников рассеянного света


Рис. 5.33. Расположение источников имитации GI в области окна


Рис. 5.34. Визуализированное изображение сцены с имитацией солнца из окна и рассеянным светом


5. Далее освещаем пространство в области лестницы. Его тоже можно отнести к освещению, визуализируемому для первого и второго этажа. Сделайте копию типа Copy (Копия) группы источников глобального освещения в области окна и переместите в зону лестницы (рис. 5.35). Установите множитель осветителей новой группы равным 0,02. Откройте группу и удалите источники, пересекающиеся с геометрией сцены. Для освещения ниш в области лестницы создайте две группы из четырех всенаправленных источников, расположенных вертикально, с параметрами, описанными выше (см. рис. 5.35). Назовите новую группу Stair_Zone_GI и поместите в слой Sun_Light.

Рис. 5.35. Размещения источников глобального освещения с области лестницы


6. Теперь пора осветить остальную часть первого этажа с помощью таких же групп источников типа Omni (Всенаправленный). Сделайте на виде сверху копию группы Frame GI типа Copy (Копия), чтобы изменение параметров новой группы не повлияло на уже созданные. Выровняйте источники в одну линию и расположите в середине помещения. Открыв группу, удалите лишние осветители так, чтобы по вертикали в помещении первого этажа было три группы источников. Сделайте еще три группы типа Copy (Копия) и распределите их по площади помещения (рис. 5.36). Назовите группы источников GI_F_Floor01-GI_F_Floor05. Поместите данные группы в слой Lights_F_Floor. Параметр Multiplier (Множитель) первой от окна группы сделайте равным 0,02 и далее по убыванию в глубину помещения. Множитель группы, расположенный около модели стойки домашнего кинотеатра, должен быть равен 0,006. Таким образом, мы сымитируем затухание света в глубине виртуального помещения. Визуализировав сцену, мы увидим, что изображение стало светлее, более того, получилась довольно сносная имитация глобального освещения (рис. 5.37). Ступенчатость теней от источника, имитирующего солнце, можно убрать, изменив вид теней Ray Traced Shadows (Трассированные тени) на Adv. Ray Traced (Улучшенная трассировка лучей) или Area Shadows (Тени области).

Рис. 5.36. Расположение источников имитации GI в помещении первого этажа


Рис. 5.37. Имитация глобального освещения в помещении первого этажа


7. Для подсветки картин добавьте в сцену три источника типа Target Spot (Направленный прожекторный). Теперь можно отобразить все объекты первого этажа сцены и сделать окончательную ее визуализацию с имитацией дневного света (рис. 5.38). Сохраните файл как Walls&materials_Std_Gray_Fin.max. Для управления всеми источниками сцены в программе 3ds Max 2009 существует такой инструмент, как Light Lister (Список осветителей), который находится в меню Tools (Сервисные инструменты). Он позволяет управлять всеми, параметрами источников света из одного диалогового окна (рис. 5.39). Включите материалы сцены, воспользовавшись инструментом Manage Scene States (Управление данными сцены). Для этого необходимо нажать кнопку Restore (Вернуть) в окне вышеуказанного инструмента. При визуализации стало ясно, что материал типа Shallec (Оболочка), присвоенный модели занавески слишком сильно замедляет визуализацию. Поэтому лучше будет заменить, его материалом Double Sided (Двусторонний), или архитектурным с шаблоном Paper Tranlucent (Полупрозрачная бумага). В этом случае на слоты Tranparency (Прозрачность) и Translucency (Светимость) назначьте карту Falloff (Спад).

Рис. 5.38. Визуализированное изображение окончательного варианта дневного освещения


Рис. 5.39. Список осветителей сцены


8. Сцена выглядит неплохо, но нужно подрегулировать некоторые материалы. Начнем с того, что у архитектурного материала черного стекла на стене плохо читается отражение. Его можно заменить материалом Raytrace (Трассировка лучей) со значением отражения, равным 50, и черным диффузным цветом. Кроме того, некоторые материалы, в частности материалы ступеней и дверных коробок, лучше сделать менее насыщенными. Для этого в данных материалах уменьшите влияние карты на диффузный цвет, то есть параметр Diffuse (Диффузный) установите равным 50. Имитировать цветопередачу и менять цвет глобального освещения в нашей сцене можно, меняя цвет излучения групп всенаправленных источников, имитирующих GI.

9. Теперь с помощью инструмента Batch Render (Пакетный рендер) можно визуализировать сцену из четырех установленных камер. Данный инструмент можно запустить из меню Rendering (Визуализация). В открывшемся окне (рис. 5.40) нажмите кнопку Add (Добавить), чтобы создать вид для визуализации. Внизу из раскрывающихся списков выберите нужные камеру и установки, затем, нажав кнопку Output Path (Путь конечного изображения), выберите каталог, в который хотите поместить изображение. Запустите сцену на просчет и после сравните получившийся результат с изображением (рис. 5.41). Сохраните файл как Walls&materials_Std_Day_Fin.max и завершите с ним работу.

Рис. 5.40. Окно пакетного рендеринга


Рис. 5.41. Окончательная визуализация сцены из разных камер


Пользуясь описанными выше способами, произведите визуализацию второго этажа сцены интерьера самостоятельно. Если материал зеркала будет слишком искажать отражение, увеличьте значение параметра Size (Размер) карты Noise (Шум) до 8000.

Сильно замедляет визуализацию занавеска, поэтому при использовании слабого компьютера эту модель лучше скрыть. Визуализация, выполненная при помощи стандартного сканирующего рендера 3ds Max, подходит, например, для создания анимации, так как расчет одного кадра данной сцены на компьютере с процессором Core 2 Duo 6600 ГГц и 2048 Мбайт оперативной памяти с разрешением изображения 640 х 480 занимает около 15 минут при условии использования качественных теней области (типа Rectangle light или Disc light) и около 10 минут при условии использования теней области типа Simple (Простые). Конечно, для анимации и этого времени много, но по сравнению с другими алгоритмами визуализации этот наиболее подходящий, так как другие модули при визуализации данной сцены затратят в несколько раз больше времени.


Страницы книги >> Предыдущая | 1 2 3 4 5 6 7 8
  • 3.7 Оценок: 6

Правообладателям!

Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.

Читателям!

Оплатили, но не знаете что делать дальше?


Популярные книги за неделю


Рекомендации