Spriterenderer unity что это
Перейти к содержимому

Spriterenderer unity что это

  • автор:

Spriterenderer unity что это

Компонент Sprite Renderer позволяет вам отображать изображения в виде спрайтов( Sprites ), чтобы использовать их и в 2D и в 3D сценах.

Add it to a GameObject via the Components menu (Component > Rendering > Sprite Renderer or alternatively, you can just create a GameObject directly with a Sprite Renderer already attached (menu: GameObject > 2D Object > Sprite).

Свойство: Функция:
Sprite Спрайт, который надо рендерить. Спрайты можно создать из текстур используя настройку Sprite в импортере текстур (Texture importer).
Color Цвет меша, который рендерится.
Flip Flip the sprite in the X or Y planes.
Material Материал, используемый для рендера спрайта.
Sorting Layer Слой, используемый для задачи приоритета наложения во время рендеринга.
Order In Layer Приоритет наложения спрайта в рамках его слоя. Чем ниже число, тем раньше будет рендериться спрайт, а спрайты с числами повыше, будут рисоваться поверх тех, что ниже.

Детали

В 3D графике внешний вид объекта может быть разным в соответствии с освещением и с точкой обзора на объект. А вот в 2D изображение просто отображается на экране без каких-либо трансформаций, кроме базовых перемещения, масштабирования и вращения. Позиция спрайта задаётся 2D координатами, таким образом здесь нету концепта “глубины” или расстояния от камеры.

Тем не менее, важно иметь способ определения приоритета наложения разных спрайтов(т.е, какие спрайты будут рисоваться поверх других, в случае пересечения). Например, в игре с вождением, автомобиль должен быть виден при проходе по плоским объектам на дороге. Unity использует концепт слоёв сортировки ( sorting layers ), чтобы позволить разделять спрайты на группы с приоритетами наложения. Спрайты, с более низким сортировочным слоем будут рисоваться под спрайтами с более высоким сортировочным слоем.

Иногда, два или более объекта в одном и том же сортировочном слое могут накладываться (например, 2 персонажа в сайд-скроллере). Свойство order in layer может быть использовано, чтобы задать приоритеты спрайтам в одном и том же слое. Так же, как и со слоями сортировки, применяется правило, что сначала рендерятся объекты с более низким значением номера и перекрываются объектами с более высоким значением. Для деталей о редактировании слоёв сортировки см.layer manager.

Рендеринг

Sprite Renderer использует текстуру указанную в свойстве Sprite, но использует шейдер и другие свойства из свойства Material (это выполняется используя за сценой MaterialPropertyBlock). Это значит, что вы можете использовать один и тот же материал для рендера разных спрайтов не трогая каждую текстуру по отдельности.

Спрайт рендерится на меше, который использует позицию, цвет и UV на каждой вершине, но у него нет вектора нормали. Если ваш материал требует векторы нормалей, то вы можете рассчитать их используя вертексный шейдер (см. Surface Shader Examples.

Стандартные шейдеры, используемые для спрайтов:

  • Sprites/Default — простой шейдер с альфа смешиванием, который не взаимодействует с освещением в сцене.
  • Sprites/Diffuse — просто шейдер поверхности с альфа смешиванием который взаимодействует с освещением. Он генерирует переднесторонний вектор нормали (0,0,–1).

Flipping

While Sprites can be flipped by setting negative transform.scale , this has the side effect of also flipping the child GameObjects and also flipping the colliders, which can be performance intensive or otherwise not preferred.

The SpriteRenderer flipping feature provides a lightweight alternative which doesn’t affect any other components or GameObjects. It simply flips the rendered sprite on x or y axis and nothing else.

SpriteRenderer

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Ошибка внесения изменений

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

Ваше имя Адрес вашей электронной почты Предложение * Разместить предложенное

Описание

Визуализирует спрайт для 2D графики.

Переменные

color Визуализация цвета спрайта.
flipX Зеркально отражает спрайт по оси X.
flipY Зеркально отражает спрайт по оси Y.
sprite Спрайт для визуализации.

Унаследованные члены

Переменные

gameObject The game object this component is attached to. A component is always attached to a game object.
tag Тег данного игрового объекта.
transform The Transform attached to this GameObject (null if there is none attached).
hideFlags Should the object be hidden, saved with the scene or modifiable by the user?
name The name of the object.
bounds The bounding volume of the renderer (Read Only).
enabled Makes the rendered 3D object visible if enabled.
isPartOfStaticBatch Has this renderer been statically batched with any other renderers?
isVisible Is this renderer visible in any camera? (Read Only)
lightmapIndex Индекс карты освещения, примененной при визуализации.
lightmapScaleOffset The UV scale & offset used for a lightmap.
localToWorldMatrix Matrix that transforms a point from local space into world space (Read Only).
material Returns the first instantiated Material assigned to the renderer.
materials Returns all the instantiated materials of this object.
probeAnchor Если установлено, Renderer будет использовать позицию Transform’s, чтобы найти интерполированные светопробы.
realtimeLightmapIndex Индекс карты освещения, примененной при визуализации.
realtimeLightmapScaleOffset The UV scale & offset used for a realtime lightmap.
receiveShadows Does this object receive shadows?
reflectionProbeUsage Should reflection probes be used for this Renderer?
shadowCastingMode Does this object cast shadows?
sharedMaterial The shared material of this object.
sharedMaterials All the shared materials of this object.
sortingLayerID Unique ID of the Renderer’s sorting layer.
sortingLayerName Name of the Renderer’s sorting layer.
sortingOrder Renderer’s order within a sorting layer.
useLightProbes Should light probes be used for this Renderer?
worldToLocalMatrix Matrix that transforms a point from world space into local space (Read Only).

Открытые функции

BroadcastMessage Вызывает метод названный methodName на каждом MonoBehaviour этого game object-а или любого из его потомков.
CompareTag Помечен ли этот игровой объект тэгом tag?
GetComponent Возвращает компонент типа type, если он прикреплен к игровому объекту и null, если не прикреплен.
GetComponentInChildren Returns the component of Type type in the GameObject or any of its children using depth first search.
GetComponentInParent Returns the component of Type type in the GameObject or any of its parents.
GetComponents Returns all components of Type type in the GameObject.
GetComponentsInChildren Returns all components of Type type in the GameObject or any of its children.
GetComponentsInParent Returns all components of Type type in the GameObject or any of its parents.
SendMessage Вызывает метод с именем methodName в каждом MonoBehaviour на этом объекте.
SendMessageUpwards Вызывает на каждом MonoBehaviour в данном игровом объекте и на каждом предке скрипта метод с именем methodName.
GetInstanceID Returns the instance id of the object.
ToString Returns the name of the game object.
GetClosestReflectionProbes Returns an array of closest reflection probes with weights, weight shows how much influence the probe has on the renderer, this value is also used when blending between reflection probes occur.
GetPropertyBlock Get per-renderer material property block.
SetPropertyBlock Lets you add per-renderer material parameters without duplicating a material.

Статические функции

Destroy Removes a gameobject, component or asset.
DestroyImmediate Destroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoad Makes the object target not be destroyed automatically when loading a new scene.
FindObjectOfType Returns the first active loaded object of Type type.
FindObjectsOfType Returns a list of all active loaded objects of Type type.
Instantiate Returns a copy of the object original.

Операторы

bool Does the object exist?
operator != Compares if two objects refer to a different object.
operator == Compares two object references to see if they refer to the same object.

Сообщения

OnBecameInvisible OnBecameInvisible is called when the object is no longer visible by any camera.
OnBecameVisible OnBecameVisible is called when the object became visible by any camera.

Unity – создание спрайтов

Спрайты – это простые 2D-объекты, на которых есть графические изображения (так называемые текстуры ). Unity использует спрайты по умолчанию, когда движок находится в режиме 2D. При просмотре в трехмерном пространстве спрайты выглядят тонкими как бумага, потому что у них нет Z-ширины.

Спрайты

Спрайты всегда обращены к камере под перпендикулярным углом, если они не вращаются в трехмерном пространстве.

Всякий раз, когда Unity создает новый спрайт, он использует текстуру. Затем эта текстура применяется к свежему GameObject, и к нему прикрепляется компонент Sprite Renderer . Это делает наш gameObject видимым с нашей текстурой, а также дает ему свойства, связанные с тем, как он выглядит на экране.

Sprite Renderer

Чтобы создать спрайт в Unity, мы должны снабдить движок текстурой .

Давайте сначала создадим нашу текстуру. Получите стандартный файл изображения, такой как PNG или JPG, который вы хотите использовать, сохраните его, а затем перетащите изображение в область ресурсов Unity.

создание текстуры

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

Вид сцены

Давайте рассмотрим следующие моменты при создании спрайта –

  • Перетаскивая из внешнего источника в Unity, мы добавляем актив .
  • Этот актив является изображением, поэтому он становится текстурой.
  • Перетаскивая эту текстуру в иерархию сцены, мы создаем новый GameObject с тем же именем, что и у нашей текстуры, с прикрепленным Sprite Renderer.
  • Этот рендерер спрайтов использует эту текстуру для рисования изображения в игре.

Перетаскивая из внешнего источника в Unity, мы добавляем актив .

Этот актив является изображением, поэтому он становится текстурой.

Перетаскивая эту текстуру в иерархию сцены, мы создаем новый GameObject с тем же именем, что и у нашей текстуры, с прикрепленным Sprite Renderer.

Этот рендерер спрайтов использует эту текстуру для рисования изображения в игре.

Теперь мы создали спрайт в нашей сцене.

На следующем уроке мы рассмотрим некоторые модификаторы для спрайтов, которые у нас есть.

Спрайты в Unity: определение, как их создавать и использовать

Lorem ipsum dolor

Как создать спрайт для Unity? Для этого в игровом движке предусмотрены свои инструменты, о которых мы поговорим чуть ниже.

Спрайт — это графический объект, который используется при создании 2D-игр . Спрайт-технология пришла к нам еще в 80-х год ах . Первые игры делались с применением спрайтов. Все знают, что если взять несколько похожих картинок и в определенной последовательности быстро их «прокрутить», то получится анимация или видео. Многие вспомнят о том, что видео — это 24 кадра в секунду, которые видит человек. Именно по такой «прокрутке» кадров и происходит создание спрайт-объектов. К примеру, берется игровой персонаж , а затем созда ется несколько разных его изображений. Потом эти изображения помещают в контейнер и зацикливают их прокрутку. Таким образом , получается анимация. Если показ картинок «подвязать» к кнопкам управления, тогда появляется полноценный игровой объект, который будет реагировать на нажатие кнопок. Например, при движении вправо показываются одни картинки, влево — другие. А у пользователя создается впечатление, что игровой персонаж анимирован. Повторимся, что по факту происходит только смена картинок в кадре.

В Unity работа со спрайтами внедрена по умолчанию, когда движок настроен на разработку 2D-игр. Если спрайт посмотреть в 3D-режиме, тогда он окажется «плоским», как лист бумаги. Все потому, что спрайт — это 2D-объект и у него нет Z-ширины.

Как создать спрайт для Unity

Когда на Unity создается новый спрайт, ему необходимо задать текстуру. Текстура — это изображение, которое отражает внешний вид спрайта. Такое изображение прикрепляется к спрайту, создавая GameObject, который можно использовать в игре.

Если нет возможности сразу добавить текстуру в проект, но наличие спрайта в игре вам обязательно, тогда можно применить «заполнитель спрайтов» на Unity. Заполнитель — это встроенный инструмент, который создает спрайт в виде простых геометрических фигур типа треугольника, квадрата, круга и заполняет их белым цветом. В дальнейшем всегда будет доступно редактирование «заполнителя».

Чтобы создать спрайт на Unity , пройдите по следующему пути:

Assets → Create → Sprites

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

Редактирование спрайтов в Unity

  1. Открыть 2D-изображение в представлении проекта «Project View». Спрайт, который находится в режиме «Scene View» , редактироваться не может.
  2. Найти кнопку «Sprite Editor». Вам откроется редактор спрайтов, в котором будет несколько доступных инструментов. Например : изменение масштаба, изменение расцветки, изменение местоположения спрайта на экране, поворот спрайта, настроить прозрачность, обрезать и др.

Средство визуализации спрайтов в Unity

Отобразить спрайт в Unity помогает компонент Sprite Renderer. Его нужно добавлять в GameObject через меню Components:

Components → Rendering → Sprite Renderer

Когда создается 3D-графика, тогда способов отразить объемный объект очень много. Например, внешний вид объекта будет зависеть от его положения на экране, освещенности, перемещения, положения камеры и др. С 2D-объектами этого всего нет.

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

Заключение

  • Paint Net;
  • Krita;
  • SAI 2;
  • GIMP;
  • Clip Studio Paint;
  • и др.

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *