Текстуры
Вы можете добавлять текстуры на поверхность terrain’а для создания окраски и мелких деталей. Так как terrain’ы довольно большие объекты, к ним обычно применяют текстуры, которые можно бесшовно стыковать, чтобы замостить ими поверхность (повтор обычно не заметен с точи зрения персонажа, который находится близко к земле). Одна текстура будет служить как “фоновая” картинка по всему ландшафту, но вы также можете рисовать области, используя другие текстуры, чтобы симулировать различные покрытия, такие как трава, пустыня и снег. Нарисованные текстуры могут быть применены с разной прозрачностью, так, чтобы у вас получился плавный переход между травянистой местностью и песчаным пляжем, например.
Включение текстур
Кнопка с кистью на панели инструментов включает рисование текстур.
Изначально у terrain’а не будет текстур, назначенных для рисования. Если вы кликнете кнопку Edit Textures и из выпавшего меню выберите Add Texture, вы увидите окно, в котором вы можете указать текстуру и её свойства.
Depending on the material type you set in Terrain Settings, the color channels of the main texture map may have different uses. These are listed below in Terrain Texture Settings.
Click on Select to see your texture assets in a separate Select Texture window (not shown). Click on the texture you want and it displays in the Add Terrain Texture window. (See Add Terrain Texture window, before and after, in Fig 1 below.)
Нанесение текстур на ландшафт
Depending on the material type you set in Terrain Settings, the color channels of the main texture map may have different uses. The different Add Terrain Texture windows are listed here.
Standard [image above in Fig 1]: RGB channels are the albedo color of the terrain surface, while alpha channel controls the smoothness. There is also a ‘Metallic’ slider which controls the overall look of the surface.
Diffuse: RGB channels are the diffuse color. Alpha channel is not used.
Specular: RGB channels are the diffuse color. Alpha channel is the gloss map.
Custom: How the splat map is used depends on your custom shader, but usually you want the RGB channels to be the base color.
Besides the main texture map, you can also specify a normal texture for all of the 3 built-in material types. The texture type of the normal texture used here must be ‘Normal Map’ (you can change the texture type of a texture asset in its import settings). Shader code that handles normal map will be turned on only when at least one normal texture is set for the terrain, so you don’t need to pay the performance cost of normal map if you don’t use them.
Свойство Size (прямо под селекторами текстур) позволяет вам установить ширину и высоту на которую будет растягиваться изображение по поверхности terrain’а. Свойство Offset определяет, как далеко от точки вращения terrain’а будет начинаться тайлинг; вы можете установить его в 0, чтобы начать тайлинг прямо от угла. После того как вы установили текстуру и нужные вам свойства, нажмите на кнопку Add, чтобы сделать текстуру доступной terrain’у.
To make changes to an added terrain texture, select its thumbnail, click the ‘Edit Textures’ button and select ‘Edit Texture…’ from the menu. Or, you can simply double click on its thumbnail. To remove a terrain texture, select its thumbnail, click the ‘Edit Textures’ button and select ‘Remove Texture’ from the menu.
Рисование текстурами
Первая текстура, которую вы добавите, будет использоваться в качестве “фона” для покрытия terrain’а. Однако, вы можете добавить сколько угодно текстур; последующие текстуры будут доступны для рисования с помощью привычных кистей. Под текстурами в инспекторе terrain’а вы увидите не только обычные опции Brush Size и Opacity, но и дополнительную опцию Target Strength. Она устанавливает максимальную степень непрозрачности, которую достигнет кисть, даже если повторно пройдётся по одной и той же точке. Это может быть полезно при добавлении едва заметных островков разнообразия цветов на одном типе terrain’а для разбавления монотонности большой, плоской области с такой же затайленой текстурой, повторяющейся снова и снова.
Текстуры и видео
Normally, the mesh geometry of an object only gives a rough approximation of the shape while most of the fine detail is supplied by Textures. A texture is just a standard bitmap image that is applied over the mesh surface. You can think of a texture image as though it were printed on a rubber sheet that is stretched and pinned onto the mesh at appropriate positions. The positioning of the texture is done with the 3D modelling software that is used to create the mesh.
Unity can import textures from most common image file formats.
Textures for use on 3D models
Textures are applied to objects using Materials. Materials use specialised graphics programs called Shaders to render a texture on the mesh surface. Shaders can implement lighting and colouring effects to simulate shiny or bumpy surfaces among many other things. They can also make use of two or more textures at a time, combining them for even greater flexibility.
Вы должны создавать ваши текстуры с размерами, являющимися степенями двойки (например, 32х32, 64х64, 128х128, 256х256 и т.д.). Просто поместите их в папку Assets вашего проекта, этого будет достаточно, затем они появятся в окне Project View.
После того как ваша текстура будет импортирована, вы должны будете назначить ее материалу. После этого материал может быть применен к мешу, системе частиц( Particle System ) или GUI текстуре( GUI Texture ). Используя настройки импорта( Import Settings ), текстуру также можно конвертировать в Cubemap или Normalmap для различного применения в игре. Более подробную информацию об импорте текстур, пожалуйста, читайте на странице компонента Texture.
2D графика
In 2D games, the Sprites are implemented using textures applied to flat meshes that approximate the objects’ shapes.
An object in a 2D game may require a set of related graphic images to represent animation frames or different states of a character. Special techniques are available to allow these sets of images to be designed and rendered efficiently. See the manual page about the Sprite Editor for more information.
Видео
Unity can use a video file in most places where it can use a static texture image. On a desktop platform, these Movie Textures can be used to play back video on objects in the scene, so you could have a TV screen within the game itself or use an abstract moving image to create “chameleon” effects on a object’s surface. Mobile devices are limited to playing back a video full-screen, optionally with Play/Pause and other controls. See the Movie Textures reference page for further details about importing and using videos in Unity.
GUI
A game’s graphic user interface (GUI) consists of graphics that are not used directly in the game scene but are there to allow the player to make choices and see information. For example, the score display and the options menu are typical examples of game GUI. These graphics are clearly very different from the kind used to detail a mesh surface but they are handled using standard Unity textures nevertheless. See the manual chapter on GUI Scripting Guide for further details about Unity’s GUI system.
Particles
Meshes are ideal for representing solid objects but less suited for things like flames, smoke and sparkles left by a magic spell. This type of effect is handled much better by Particle Systems. A particle is a small 2D graphic representing a small portion of something that is basically fluid or gaseous, such as a smoke cloud. When many of these particles are created at once and set in motion, optionally with random variations, they can create a very convincing effect. For example, you might display an explosion by sending particles with a fire texture out at great speed from a central point. A waterfall could be simulated by accelerating water particles downward from a line high in the scene.
Unity’s particle systems have a wealth of options for creating all kinds of fluid effects. See the manual chapter on the subject for further information.
Terrain Heightmaps
Textures can even be used in cases where the image will never be viewed at all, at least not directly. In a greyscale image, each pixel value is simply a number corresponding to the shade of grey at that point in the image (this could be a value in the range 0..1 where zero is black and one is white, say). Although an image like this can be viewed, there is no reason why the numeric pixel values can’t be used for other purposes as well, and this is precisely what is done with Terrain Heightmaps.
A terrain is a mesh representing an area of ground where each point on the ground has a particular height from a baseline. The heightmap for a terrain stores the numeric height samples at regular intervals as greyscale values in an image where each pixel corresponds to a grid coordinate on the ground. The values are not shown in the scene as an image but are converted to coordinates that are used to generate the terrain mesh.
Interestingly, even though a heightmap is not viewed directly as an image, there are still common image processing techniques that are useful when applied to the height data. For example, adding noise to a heightmap will create the impression of rocky terrain while blurring will smooth it out to produce a softer, rolling landscape.
More information about terrains in Unity can be found in this section of the manual.
Game Development | Урок 5 — Материалы,текстуры и шейдеры Unity3D.
Чек-лист успешной адаптации или как пройти испытательный срок в компании?
10 ключевых ошибок во время собеседования
Подготовка к собеседованию в IT
Активный поиск первой работы в IT – советы и частые ошибки
IТ в период войны: как найти первую работу
Использование и оптимизация UI системы при создании игр в Unity.
Тема урока наложение текстур, настройка материалов и выбор шейдеров. Также в уроке: Как создавать карты нормалей (normal map) средствами Unity3D? Реализация мультипликационной графики. Получайте знания вместе с ITVDN.
Покупай подписку с доступом ко всем курсам и сервисам
Библиотека современных IT знаний в удобном формате
Выбирай свой вариант подписки в зависимости от задач, стоящих перед тобой. Но если нужно пройти полное обучение с нуля до уровня специалиста, то лучше выбирать Базовый или Премиум. А для того чтобы изучить 2-3 новые технологии, или повторить знания, готовясь к собеседованию, подойдет Пакет Стартовый.
- Все видеокурсы на 3 месяца
- Тестирование по 10 курсам
- Проверка 5 домашних заданий
- Консультация с тренером 30 мин
Halloween
- Все видеокурсы на 1 год
- Тестирование по 24 курсам
- Проверка 20 домашних заданий
- Консультация с тренером 120 мин
- Скачивание видео уроков
- Возможность приостановки обучения
- Все видеокурсы на 6 месяцев
- Тестирование по 16 курсам
- Проверка 10 домашних заданий
- Консультация с тренером 60 мин
Использование текстуры детализации для получения высшего качества реализма (подробнее)
Текстуры детализации (Detail Textures) на узоре текстуры, которые будут исчезать на поверхности, когда камера будет постепенно отдаляться. Это может быть использовано для имитации грязи, погодных условий или другой подобной детали на поверхности, не добавляя к визуализации (rendering) лишних расходов, когда камера находится слишком далеко, чтобы увидеть разницу.
Получение текстуры
Текстуры детализации (Detail Textures) на черно-белом изображении, которые используются для осветления или затемнения другой выбранной текстуры. Где пиксель имеет значение яркости от 0 до 127, изображение будет затемнено (0 обозначает максимальное затемнение), когда значение находится между 129 и 255, изображение будет освещено (255 означает максимальное освещение). Значение ровно 128 нейтральное и оставит часть изображения (с пикселями яркости 128) без изменений.
Если детализация изображения имеет среднюю яркость больше или меньше чем 128, всё изображение будет казаться светлее или темнее, это даст неправильный эффект, когда камера приближается. Поэтому важно убедиться, что уровень яркости в изображении примерно симметрично равен 128. Вы можете проверить это дело во многих ПО для редактирования изображений, глядя на гистограмму изображения (image histogram) или регулировку уровня яркости ( Levels adjustment ) ( как правило, тоже показывает гистограмму). Если гистограмма показывает симметричное «вздутие» (bulge), то есть чуть-чуть влево или вправо от центра, вы можете с помощью скобок «вздутия» с min/max стрелками, отрегулировать уровень так, чтобы получить яркость, равную 128.
Во избежание видимости рамок, когда детализированная текстура обёртывается (wraps) поверх другой текстуры, необходимо в идеале использовать изображение, которое можно замостить не выходя из-за границ другой текстуры. Если изображение создается с использованием функции шума (noise) в графическом редакторе, результатом будет, тем что наша детализированная текстура будет без артефактов. Кроме того фильтры, такие как Difference Clouds часто имеют настройку, которая сделает в результате качественную обертку (wrap) изображения. Простые эффекты, которые могут сделать вполне эффективные карты детализации для симуляции грязи, зернистых поверхностей или эрозий.
Настройки импорта детализированной текстуры в Unity
После того, как вы сохранили изображение в проект Unity, вы можете выбрать его, чтобы увидеть его настройки импорта в панели Inspector.
Установите texture type на значение Advanced, а затем включите параметр Generate Mip Maps и параметр Fadeout Mip Maps так же включите. Вы должны увидеть регулятор диапазона в параметре Fade Range; числовые значения для диапазона не указаны, но настройки по умолчанию подходят для большинства случаев. Если уменьшить значения в этом регуляторе, то детализированная текстура будет видна с маленького расстояния. Если увеличить этот диапазон, то будет видна с дальнего расстояния. в Fade Range указаны значения расстояния, на котором детализированная текстуры будет постепенно исчезать, покуда не станут невидимыми.
Материал для детализированной текстуры
Для использования детализированной текстуры, вы должны установить материал, используя Diffuse Detail шейдер с помощью меню в Material Inspector (Инспекторе материалов).
В дополнение к базовой текстуре (base texture), вы увидите второе окно (Detail), для установки детализированной текстуры, которую вы только что импортировали.
Как правило, вы хотите установить свои значения Tiling побольше (обычно устанавливают около 10).
Детализированный материал (Detail material) теперь может быть применен к любому подходящему объекту, чтобы отобразить эффект детализации.
- unity3d уроки
- game development
- разработка игр
- tutorial
- руководство для разработчика
- Texture
- Unity3d
- unity