pro100denver | Дата: Вторник, 11 Октября 2011, 09:26 | Сообщение # 1 |
участник
Сейчас нет на сайте
|
Описание Следующее руководство опишет процесс быстрого создания новой карты. Все карты в игре Crysis основаны настоящих картах высот, для получения реалистично ландшафта. Создание файла и папки новой карты В меню File выберите New.
Введите название вашей карты в диалоговом поле Level Name, и затем щелкните OK.
После того, как вы нажмёте OK, редактор создаст новую папку в каталоге «Levels», с названием вашей карты, содержащую все необходимые файлы. Самый важный файл в папке карты — это CRY-файл, содержащую всю значительную информацию для редактора. Добавление ландшафт на карту Генерация ландшафта Теперь у нас есть новая пустая карту, и нам нужен ландшафт, по которому мы будем ходить, в этом нам поможет автоматическая генерация. Чтобы создать ландшафт, выберите Edit Terrain в меню Terrain.
Далее, выберите Generate Terrain в меню Tools.
Также попасть в окно Terrain вы можете нажав кнопку Terrain, по умолчанию находящуюся в основной панели редактирования.
Это действие откроет диалоговое окно Generation, в котором вы можете повлиять на внешний вид ландшафта следующими параметрами: Feature Size Определяет количество создаваемой земли Bumpiness/Noise Определяет степень рельефности или деформации поверхности Detail Определяет, сколько раз будут применены настройки Variation Случайность разброса островов Blurring Указывает, сколько раз будет применено сглаживание к шумовому фильтру Sharpness (Exp. Base) Определяет резкость поверхности Sharpness (Freq. Step) Определяет, сколько раз будет применён фильтр резкости к поверхности
Стандартные настройки будут в самый раз, так что нажимаем OK. После завершение генерации, вы должны увидеть что-то такое:
Теперь, закройте окно Terrain нажав кнопку OK и вы увидите изменения в окне перспективы. Ландшафт выглядит серым и напоминает высоту ландшафта. Чем ярче ландшафт, тем он выше. Текстура воды скрывает весь ландшафта, который находится ниже уровня моря давая вам правильное представление о суше. Чтобы получить первое впечатление с стандартной текстурой, необходимо регенерировать текстуру поверхности.
Создание текстуры поверхности на ландшафте Выберите Generate surface texture в меню File.
Появится показанное ниже диалоговое окно — можете ничего не менять, но если хотите можете отметить галочку High Quality (займёт больше времени, но даст более высокое качество). Щелкните OK и подождите пока завершится процесс.
Вы получите нижеследующий результат, дающий вам первое впечатление от вашего ландшафта.
Инструменты
В этой секции вы получите краткое описание наиболее важных инструментов и функций редактора Sandbox 2. Запомните, что все инструменты, находящиеся в этом разделе, доступны по простому переходу в View → Open View Pane и выбору редактора или инструмента, который вы хотите использовать.
Rollup Bar (Сворачивающаяся панель)
Панель RollupBar — это стандартный инструмент, который вы можете увидеть в правой стороне вашего редактора в окне перспективы и разделён на 5 вкладок. Мы изучим всего 3 из них: Create, Terrain и Hide By Category. Остальные две (моделирование и слои) для изучения основ создания уровня не столь важны. Примечание: Если вы открыли меню Archetype Entity или Prefab и не нашли там в списке ничего упомянутого в статье, то вам следует загрузить все необходимые библиотеки через Database View. Чтобы это сделать, следуйте инструкциям, описанным в статье «Импорт основных библиотек».
Панель «Create» (Создать) В этой вкладке вы можете создавать все сущности, доступные в Sandbox 2. Важно использовать весь их диапазон для придания карте разнообразия, но и для того, чтобы сделать карту увлекательной и реалистичной. Например, вы не можете заполнить карту зданиями или хижинами одного типа; будьте креативны и изобретательны, поищите в библиотеках Brush, GeomEntity и Prefab те вещи, которые подойдут для вашей карте и наполнят её. Другое, что следует иметь ввиду — это производительность. Создание сотен Archetype Entity, таких как, враги или техника, может негативно сказаться на производительности вашей карты, а также сделать её скучной и однообразной. Раздел «Prefab» в Rollup Bar — это ещё один полезный ресурс. В нём хранятся сборки уже готовых, полностью обставленных зданий, которые помогут вам застроить вашу карту красивыми объектами без потери нескольких часов на создание каждого. Также, в разделе «Misc» находятся различные инструменты, такие как реки и дороги. С помощью них можно придать карте очень сильный эффект реалистичности. Панель «Terrain» (Ландшафт) Вкладка «Terrain» позволяет редактировать ландшафт и всё, что с ним связано, начиная с простого редактирования карты высот, и заканчивая настройкой наборов растительности. Эти инструменты очень мощны, и их следует использовать для создания основы вашей карты, перед тем как начать добавление других элементов на вашу карту. Используйте инструменты для модификации ландшафта после того, как вы сгенерировали его (ну или сделали с нуля, если вы хотите сделать полностью свою карту высот). Этот инструмент вы будете использовать чаще всего, так что освойте его работу полностью в свободное время. Чтобы узнать более подробную информацию о том, как создавать ландшафт, обратитесь к статье «Изменение ландшафта». Панель «Hide By Category» (Скрыть по категории) Эта вкладка полезна вам, как дизайнеру уровней, так как она скрывает сущности и объекты определённых типов в окнах перспективы и игры, при этом они всё ещё будут существовать (например, если вы скрываете ландшафт, вы всё равно не будете падать сквозь землю), но станут невидимыми, и поэтому не будут отнимать память на отрисовку из вычислительной мощности компьютера. Вкладка очень эффективна по нескольким причинам. Например, если вы хотите заняться текстурированием ландшафта, и чтобы вам не мешали какие-либо объекты дизайна, то вы просто можете скрыть такие объекты, как растительность и геометрические сущности, чтобы освободить рабочее пространство. Также, если уровень очень сильно заполнен динамическими объектами, что становится сложно ориентироваться и из-за всех загруженных сущностей ваш компьютер начинает тормозить, вы можете скрыть всё ненужное, чтобы снизить нагрузку на ваш компьютер.
Flowgraph Editor (Потоковый граф)
В целом, флоуграф — это визуальное представление игрового скрипта. Хотя некоторым он может показаться сложным, но на самом деле это удивительно простой в использовании инструмент, и к тому же очень мощный. Такие действия, как задание пути перемещения персонажей, можно настроить всего несколькими щелчками мыши. Единственный способ мастерски освоить флоуграф (также известный как FG и ФГ), это постоянное его использование.
The Time of Day Editor (Редактор времени для)
Редактор Time of Day (который чаще называют ToD или ТОД) управляет не только временем, но и также всем, что связано с погодными условиями, климатом, общим настроением вашей карты и даже некоторыми настройками графических параметров. С помощью простых в использовании графиков и ползунков, вы можете с лёгкостью настроить различные настройки для разных времён дня, а также установить скорость и зависимость изменения этих настроек.
The Trackview Editor (Редактор кат-сцен)
Редактор Trackview — это чрезвычайно мощный, и наиболее часто игнорируемый вами инструмент в Sandbox2. Он позволяет эффективно задавать параметры перемещения для объектов (включая камеры) с динамическим изменением их свойств во времени, а также привязкой анимаций и действий, контролируемых редактором. Его использование может показаться довольно сложным. На самом же деле он очень просто в использовании и очень функционален, так как с помощью него вы можете с лёгкостью заставить открываться какую-либо дверь, так и создать полномасштабную кат-сцену со спецэффектами. Примеры из игры Crysis, созданные в редакторе Trackview включают себя игровые оповещения при входе в новую зону уровня, самолёты, летящие над картой, и разнообразные кат-сцены.
The Select Objects Tool (Инструмент выбора объектов)
Не думайте, что это самый бесполезный инструмент редактора, он вам может пригодиться. Хотите выбрать все геометрические сущности на карте? Случайно заморозили объект и хотите разморозить его для использования? Этот инструмент позволяет выбирать один или несколько объектов на вашем уровне в зависимости от заданных параметров. Вам следует взять его на вооружение, чтобы за считанные секунды выбирать потерявшиеся объекты.
Методы дизайна уровней
В этой секции вы изучите различные подходы к игровому дизайну, необходимыми для создания интересного уровня — всё, начиная с расстановки растительности, и заканчивая настройкой ИИ. Играбельность
Создавая свою карту, ставьте себя на место игрока — как он будет себя вести, что будет чувствовать на данном участке уровня, как будет взаимодействовать с окружением. Постарайтесь варьировать между плотной расстановкой, и открытыми пространствами, чтобы сделать карту разнообразной. Одна из самых главных составляющих карты — это миссия; если ваш игрок не знает основной цели, то вряд ли он сможет играть на карте правильно. Убедитесь, что с самого начала игрок будет знать цель и идти в правильном направлении, будь то одно- или многопользовательская карта. Используйте различные методы, которые в вашем распоряжении, чтобы создать тонкий, незаметный путь для игрока, по которому игрок будет следовать, но не ограничиваясь им. Посмотрите на стандартные уровни Crysis и посмотрите, как разработчики сделали это: растительность часто используется, чтобы создать путь через ландшафт, в то время как дороги обеспечивают путь игрока через карту, и вносят отличия от троп. Если на вашей карте игроку предстоит долгий путь через зоны, где не будет происходить много действий, постарайтесь оживить такие моменты периодическими нападениями на игрока противников, или например самолётами, летящими над картой (как это сделано на картах Crytek). Перед тем, как выпускать вашу карту, убедитесь в том, ;что вы её как следует протестировали. Ничто не выглядит хуже, чем частично завершённая карта, которая во время игры раскрывает целую кучу багов и ошибок на уровне. Ландшафт
При создании хорошей играбельной карты, огромную роль играет ландшафт. Хотя может показаться, что ландшафт лишь основа для всего остального, он в большой степени способствует пригодности для игры Вашего уровня. Есть множество путей, которыми может ваяться ландшафт. Одни могут создавать его от руки, используя инструменты Flatten (Выравнивание), Rise/Lower (Выше/Ниже) и Smooth (Сглаживание), в то время как другие могут использовать программы от третьих лиц, такие как, например, «L3DT», дающая общее представление о ландшафте, перед импортом в редактор. Во время создания ландшафта стоит принять во внимание не только то, как будет выглядеть конечный продукт, но и то насколько играбельным он будет. Создание огромных горных массивов с разнообразным рельефом может выглядеть красиво, но создание любой миссии будет крайне сложно из-за неиграбельности вашего ландшафта. После создания основной разметки вашего ландшафта, попытайтесь сразу же сделать внешние границы карты. Хотя это не всегда должен быть ландшафт (например, вы можете поместить акул в океан, чтобы игрок не вышел за пределы карты), лучше начинать с карты высот для ограничения игровой зоны естественным путём. Для границ вашей местности, сделайте крутые склоны, которые будет непреодолимы для игрока. Чтобы это проверить, попытайтесь не просто пробовать забраться на гору, но и также забегать на неё в режиме скорости, и запрыгивать в режиме силы, чтобы убедиться, что склон на самом деле достаточен. Также, убедитесь, что зоны действия акул в море находятся на достаточно большом расстоянии от игровой зоны, иначе игрок не сможет заплывать в море, и будет атакован акулами. Попытайтесь сгладить ландшафт как можно сильнее. Ничто не выглядит более поддельным, чем зубчатые следы полигонов на ландшафте в тех местах, где он должен быть гладким. Потратьте некоторое время, проверяя ваш ландшафт на недостатки, воспользуйтесь инструментом Smooth для устранения таковых. Используя инструменты Rise/Lower чтобы редактировать местность, убедитесь что ландшафт не опускается ниже уровня моря, иначе море будет выступать над землей, даже если в этом месте её не должно быть. Если вы хотите сделать большое озеро, то в принципе это приемлемо, но кроме этого не должно быть никаких признаков появления воды над ландшафтом.
Растительность
Хотя растительность может показаться совершенно поверхностным элементом карты, но подумайте, как мрачно и неувлекательно будет выглядеть ваша карта без неё. Растительность может быть использована для определения областей, обеспечения прикрытия для игрока и ИИ, и обеспечения красивого вида окружающей природы. Растительность очень много используется в оригинальных картах. Вообще, в картах Crysis много растительности, а также дорог, через которые почти всегда следует игрок, попав в густой лес, игрок часто может удивиться и заблудиться в нём. Использование метода Crytek, часто даёт игроку чувство свободы, и в сущности, у него есть выбор идти вглубь джунгли, но подсознательно направляет его к цели, которую вы установили. Использование растительности для прикрытия, это ещё один очень важный шаг в дизайне уровня. Вы будете часто находить в ключевых местах действий камень преткновения — множество мест с большими камнями и большими деревьями, которые будут использоваться в качестве прикрытия с обеих сторон, и именно это вы должны добавлять на уровень как дизайнер. Однако, не заходите слишком далеко и размещайте крупные камни вокруг области боя, в противном случае это будет выглядит слишком не реалистично. Важно, найти линию между хорошим прикрытием и красивым видом растительности. (Для получения некоторых классов растительности, которые будут использоваться в качестве прикрытия, смотрите ниже параметр Hideable). Для создания растительности, с таким видом, как и на картах Crytek, у неё надо изменять тип, ориентацию и размеры. Ничто не выглядит так плохо, как 50 пальм размещенных рядом друг с другом, и имеющие одинаковый размер и ориентацию. Просто настроив параметры растительности, вы сможете получить красивую растительность. Параметры, указанные ниже находятся в RollupBar → Terrain → Vegetation, и отображаются под выбранным вами объектом/категорией растительности. Эти параметры должны быть… Size Устанавливает размер растительности, которую вы размещаете. Хотя и полностью зависит от вашей карты, но значение между 1 и 1,5 хорошо для начала. SizeVar Варьирование размера каждого объекта растительности, которые вы размещаете. Например, если значение Size равно 1, а значение SizeVar равно 0,25, каждый объект растительности будет иметь случайное значение размера от 0,75 и до 1,25. RandomRotation Варьирование вращения каждого объекта растительности. Однако это не повлияет уже размещенные объекты, их придётся вращать вручную. AlignToTerrain Если эта галочка отмечена, растительность, которую вы размещаете, будет выровнена по вашему ландшафту, будь он сильно наклонной скалой или плоской равниной. UseTerrainColour Довольно существенный параметр, особенно для травы и т. д. При этом основной диффузный цвет растительности будет соответствовать цвету ландшафта, создавая более реалистичнуб растительность. Hideable Если вы хотите добавить на вашу карту ИИ, и хотите чтобы выбранный объект растительности был использован в качестве прикрытия для ИИ, то выберите соответствующий вариант из выпадающего меню (или оставьте «none», если вы не хотите, чтобы он был использован в качестве прикрытия). Как вы выберите этот параметр, точки скрытия будут автоматически создавать для использования ИИ. AIRadius Настраивать радиус объекта растительности, который может быть использован для прикрытия, так, например, для больших камней вам нужно установить большой радиус, но меньший для деревьев. Density Это значение контролирует количество объектов растительности, которые будут размещены при использовании Vegetation Brush. Чем больше значение вы установите, тем менее плотной будет растительность, когда вы используете кисть. CastShadow и RecvShadow Если ваша карта действительно должна быть оптимизирована для производительности, то оба эти параметра должны быть применены. «CastShadow» определяет, отбрасывают ли объекты тень, и «RecvShadow» определяет, получают объекты тени от других объектов. MaxViewDistRatio Задаёт расстояние, на котором растительность исчезает из окна игры. Если вы хотите чтобы объекты всегда были видны, задайте большое значение, и наоборот. UseSprites Этот параметр определяет, превращается ли объект в «спрайт» после достижения определенного расстояния. Спрайт — это двухмерное изображение, которые вы видите вместо 3D-модели, и используется для оптимизации производительности. Однако, в целом, спрайты очень некрасивы и нереалистичны, поэтому этот параметр часто отключён во многих картах. Помните, что разбросанная и случайная растительность выглядит лучше; равномерные деревья и скалы редко выглядеть естественно, так что имейте в виду, что для красивых лесов и джунглей важно их несовершенство. Чтобы увидетт отличный пример использования растительности, посмотрите «Seith’s Little Island» который был выпущен, для демонстрации в редакторе Sandbox 2, и является захватывающим примером того, как удивительно может быть сделана растительность.
ИИ
Если ваша карта однопользовательская, то ИИ имеет огромное значение в успехе вашей карте. Если все сделано хорошо, то ИИ может значительно улучшить играбельность вашего уровня, поэтому ИИ является почти обязательным аспектом для оттачивания на вашей карте. Сейчас мы только собираетесь обрисовывать основные методы, но для более подробного объяснения вам следует почитать официальную документацию. Существует много различных аспектов ИИ в Crysis, которые должны быть охвачены. Если вы просто перетащить ИИ на уровень, оснастите их оружием, а затем оставить их, то на уровне будет катастрофа. На вашей карте вы должны включать следующие устройства для создания успешного ИИ на уровне. Forbidden Boundarie и Area Важные вещи для любой карты с ИИ, они определяют, где ИИ может и не может ходить на вашей карте. Они должен быть сделан по всем областям и объёмам с водой, на крутых склонах, и любых объектах, в которых может ходить ИИ (включая здания). AI Navigation Modifier Они используются, для определения перемещения ИИ в небольших помещениях, которые требуют более высокой точности, чем базовые навыки навигации ИИ. В основном используется внутри зданий для определения путей по которым следует ИИ, они состоят из точек входа/выхода (определяют, где ИИ может входить в область), точек ИИ (определяют точки, между которыми перемещается ИИ), и точек скрытия (они назначают области, в которых ИИ будет укрываться во время перестрелки). SmartObjects Smart Objects содержат огромный диапазон применений, от назначения областей, где ИИ может спрятаться за заборами до точек прыжка. Вы должны создать несколько, чтобы ознакомиться с основными смарт-объектами, поскольку они могут оказаться очень полезными для почти всех действий, связанных с ИИ на вашей карте. AI Anchors Эти точки лежат в основе маркеров перемещения ИИ, для скрытия во время боя. Их можно разместить в любом месте на карте, и ИИ будет автоматически использовать его, если они в пределах досягаемости, чтобы скрыться от игрока во время перестрелки.
Продолжим теорию.Для комфортной работы в редакторе карт,да и просто для общения с более опытными людьми нужно выучить терминологию.
Сущности и объекты
Сущность (Entity) Сущности — это всё, что может взаимодействовать с чем-либо любым образом, или вещи, которые являются действиями, событиями или могут привести к событият. Они также могут быть добавлены и использованы в потоковых графах, что делает их достаточно универсальными объектами. Однако, добавление множества сущностей может замедлить работу, так что старайтесь не заполнять ими свой уровень. Примеры: Triggers, Earthquakes, Destructible Objects, Lights... Геометрические сущности (Geometry Entity) Геометрические сущности являются объектами, которые могут иметь физические свойства, применяемые к ним, хотя они и содержат только несколько основных параметров, отвечающих за физикализацию и манипуляцию. Однако, они не сильно влияют на производительность, что делает их идеальными для большинства объектов на картах. Примеры: Crates, Furniture, Small Props... Префабы, сборные объекты (Prefab) Префабы являются группами брашов и/или сущностей. Например, вы можете разместить хижину и украсить его реквизитами и поместить внутрь оружие, а затем сделать префаб из всего этого. Если этот префаб находится в нескольких местах, даже на нескольких уровнях, и вы решите что-то изменить в центральном префабе, то это будет отражено во всех префабах этого типа. Подобно архетип-сущностям, префабы хороши для согласования. Для более подробной информация, прочитайте создание и использование префабов. Примеры: Buildings, Water Towers, Rope Bridges... Архетип-сущности (Archetype Entity) Архетип-сущности являются классом сущностей, который постоянен на протяжении всей игры Crysis. Если вы измените свойство сущности в библиотеке архетипов, то это отразится на всех архетипах этого типа, которые размещены на всех уровнях. Архетип-сущности могут также иметь специальные свойства, например, давление барреля нефти. Они могут быть отредактированы в базе данных и применены к сущностям через игру. Примеры: AI Grunts, Weapons, Explosive Barrels... Кисти, браши (Brush) Браши — это статические объекты, которые могут быть манипулированы лишь основными способами (например, действительно ли они отбрасывают тень). Однако, некоторые браши могут быть настроены так, что они остаются в фиксированном положении, но могут разрушится, такие как заборы. Браши не могут быть добавлены или использованы в Flowgraph, а также не сильно влияют на производительность. Они используют ту же библиотеку, что и геометрические сущности, так что модели, которые вы хотите разместить на вашей карте из библиотеки, могут быть размещены по любому. Примеры: Walls, Sandbags, Buildings... Материалы
Редактор материалов (Material Editor) Это база данных всех текстур и шейдеров, которые могут быть применены к сущностям и объектам. По умолчанию, он содержит все материалы CryTek для Crysis, которые могут быть использованы для создания ваших собственных. В редакторе материалов можно задать карты, такие как диффузия, нормали, зеркальность, а также выбрать шейдеры, такие как карта Parallax Occlusion для материала. Карты диффузии (Diffuse Maps) Они добавляют цвет на ваш материала. Это необработанное изображение, которое вы видите на сущностях и объектах. Часто они сделаны из фотографий. Карты нормалей и бампа (Normal and Bump Maps) Они добавляют текстуры, и позволяют отображать на низкополигонной сетке, большее число геометрии, делают они это, путём предоставления информации о свете на поверхности сетки. Карты нормалей представляют собой смесь из голубого, зеленого и красного света, и реагирует в зависимости от высоты поверхности. Карты зеркальности (Specular Maps) Имитирует силу отражения света, который в неё попадёт, не многие объекты распространяют отраженный свет равномерно по своей поверхности. Карты зеркальности имеют черно-белые цвета, и чем белее цвет, тем более сильно отражение света. Карты Parallax Occlusion Они усиляют карты нормалей и бампа, обеспечивая большую глубину. Они работает путём расчета угла к поверхности и сочетанием с картой высоты, которая находится в альфа-канале карты нормалей. Исскуственный интелект
Навигация (Navigation) Они автоматизируют движения искусственного интеллекта по путям. После успешного создания навигации, И.И. автоматически начнёт функционировать с использованием основного поведения. Вэйпойнты, точки пути (Waypoints) Они используются в интерьерах, где настройка навигации более сложна и пути устанавливаются вручную через узлы, называемые точками пути. Они могут сигнализировать о различных вещах, таких как точка входы/выхода, и навигации в интерьере. Якори (Anchors) Эти точки, которые позволяют указывать и уникализировать поведение, созданием точек скрывания И.И., таких как заборы, за которыми может укрыться И.И.. Формы, объемы и области
Запретная область (Forbidden Area) Эта область определяет пространство, в которую И.И. не сможет войти. Это полезно, для избежания ненужных столкновений с объектами, или ограничить свободное перемещение. Запретные границы (Forbidden Boundary) Запретные границы — это объекты типа "форма", которые могут быть использованы для определения границ в вашем уровне, за которые И.И. не будет переходить. В отличие от запретной области, И.И. не будет пытаться покинуть область внутри запрещённой границы. Область видимости (VisArea) Это область, в которой пространство внутри полностью исключается из внешнего мира. Включая источника света, рендеринг (океан, ландшафт, солнце и т.д.). Поэтому полезно для определения интерьеров, в которых VisArea обернет собой стены интерьера. Порталы (Portals) Порталы вместе с VisAreas образуют "окна". Например, соединённые воедино две VisArea, по сути, будут отображать лишь одного игрока. Они могут быть использованы для окон зданий, и дадут возможность просочиться свету в помещение. Они имеют решающее значение для достижения эффективной области видимости. В быту моддеров есть пословица: "Где есть VisArea, будет и портал". Области окклюзии (Occluder Areas) Хотя области окклюзии уже встроены в кисти, вы можете разместить свои собственные. Область окклюзии скрывают любой объект, который на 100% окажется в определенной области, таким образом улучшая частоту кадров. Форма (Shape) Эта область имеет множество применений, и часта связана с триггерами, для активации действия, при достижении сущностей формы. Потоковый граф
Потоковый граф (Flow Graph) Это удобная визуальная система скриптов реализованная в CryENGINE 2. Она используется для создания таких аспектов уровня, как логика миссии, триггеры, активация заскриптованной последовательности и анимации. Ноды, узлы (Nodes) Эти функции, могут помещать сущность на карту, или из большого списка в сам движок. Примеры: DepthOfField, AIShootAt, NanoSuitGet... Связи, соединения (Links) Это соединение между двумя нодами в одной визуальной цепи. Порты (Ports) Вводные и выводные порты, которые соединяют ноды.
Итак: Мы научились создавать простейший уровень,и познакомились с терминологией что бы в более комфортней работать в среде CryEngine.
========== Если понравился туториал то не жалеем "+" в репу =) ==========
Мой блог.DENVER
Сообщение отредактировал pro100denver - Вторник, 11 Октября 2011, 09:46 |
|
| |