Как сделать фон в unity 3d
Перейти к содержимому

Как сделать фон в unity 3d

  • автор:

Web server is returning an unknown error Error code 520

There is an unknown connection issue between Cloudflare and the origin web server. As a result, the web page can not be displayed.

What can I do?

If you are a visitor of this website:

Please try again in a few minutes.

If you are the owner of this website:

There is an issue between Cloudflare’s cache and your origin web server. Cloudflare monitors for these errors and automatically investigates the cause. To help support the investigation, you can pull the corresponding error log from your web server and submit it our support team. Please include the Ray ID (which is at the bottom of this error page). Additional troubleshooting resources.

Cloudflare Ray ID: 801e6bdcf0122a08 • Your IP: Click to reveal 86.107.21.84 • Performance & security by Cloudflare

How to Add a Background Image to the UI Canvas of Your Unity Game

Lucy's been with GameDev.tv since the beginning & like Batman she's remained in the shadows — until now. If you have a problem, if no one else can help & if you can find her, wait — that's not Batman!

Lucy Becker

How to Add a Background Image to the UI Canvas of Your Unity Game

In my last article, I promised that I would cover inserting a background image. Start your game engines! Let’s go!

In the Complete Unity Developer course lecture “Adding 2D User Interface Text”, our instructor, Ben Tristem, shows us how to add a background image to the UI (User Interface). Let’s learn how to do this, step by step.

Create the Background Image Element

1). Click on the Game Object Menu, which is located at the top of Unity’s interface.
2). Scroll over UI.
3). Click on the Image option, in the side menu that slides out. (Please refer to picture below).

Picture

Linking Your Image to Source Image & Re-sizing the Image

A thumbnail (small picture of your image) will appear in the Assets section of the Project Tab, at the bottom of your Unity interface. A white blank box will also appear in the canvas, which is in the middle of your screen. We want the image to take the place of that white blank box, and for that to happen we must do the following steps:

1). Go to the Project Tab, which is located on the Bottom-Left. Make sure you have selected Assets, which is located on the Left-Hand side in the Project Tab’s directory. Click on the thumbnail of your image, in the Assets area, and drag it to the blank box next to the word Source Image, which is located on the Bottom-Right of your screen in the Inspector Tab. Please refer to picture below.

Picture

Some of these steps will spoil an instructor challenge! Don’t read on, unless you really want to.

2). We need to resize the image, so that it fits inside of the borders of the Canvas. In order to do this, we need to see the border of the Canvas. To make the border visible, click on the Layers Drop-Down Box, which is located at the Top-Right of the screen. Next, select the Everything option. This will highlight the Canvas and give it a solid white border. Please see picture below.

Picture

3). Select Image, which is located in the list in the Hierarchy Tab, on the Left. Please see picture below.

4). Click on the Move Tool, which is located on the Top-Left. Please see picture below.

5). Click on the center of the Image box, and drag it till it snaps to the center of the Canvas. When it snaps you will see a thin white line appear in the center of the Canvas.

6). You will see the Blue Re-Sizing Handles, which are on the four corners of the Image box (Please see picture below). Click on them, one at a time, and drag them to resize the image.You need the word Prison to fill the upper third of the canvas. My image is a little too big, so please don’t use it as an example.

Picture

Picture

In my next blog, I will show you how to add a background image file to the Assets area of the Project Tab. I have enjoyed showing you how to add a background image to your game, resize it, and make sure it is displaying properly. There is so much more to learn from theComplete Unity Developer! If you want to learn more, this course is a must have!

Until next time, happy programming to all! Have an awesome day!

A little about the author:

Subscribe to GameDev.tv Blog — Learning to Code through Video Game Development

Get the latest posts delivered right to your inbox

How to Call C++ Functions from Blueprint in Unreal

How to Call C++ Functions from Blueprint in Unreal

Blueprint is a wonderful tool, letting you visually assemble code. However there is a point at which its beauty turns into spaghetti, and you’re better-off coding the behaviour in

Resources for Learning Unity and Game Design

Learning how to learn something as complex as the Game Engine Unity can be quite overwhelming. I personally wanted to learn Unity for a year before I actually was able to. I’m still continuing to learn about it to this day. The following

Subscribe to GameDev.tv Blog — Learning to Code through Video Game Development

Stay up to date! Get all the latest & greatest posts delivered straight to your inbox

Как сделать фон в unity 3d

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

Фоновый актор определяется с помощью имени, внешности, видимости и трансформации (такой как положение, поворот, масштаб). Он может изменять внешность, видимость и трансформироваться с течением времени.

Поведение фонов можно настроить с помощью контекстного меню Naninovel -> Configuration -> Backgrounds ; доступные параметры см. в разделе Руководство по конфигурации. Доступ к менеджеру ресурсов фонов можно получить с помощью контекстного меню Naninovel -> Resources -> Backgrounds .

Если у вас много фонов, и их неудобно назначать через меню редактора, можно просто поместить их в папку Resources/Naninovel/Backgrounds , рассортировав их по папкам, соответствующим идентификаторам акторов. Например, чтобы добавить внешность для фонового актора с ID "MainBackground", сохраните текстуры (спрайты) в папке Resources/Naninovel/Backgrounds/MainBackground , и они автоматически будут доступны в сценариях.

Вы можете дополнительно организовать ресурсы внешностей с помощью подпапок, если хотите; в этом случае используйте прямой слеш ( / ) при ссылке на них в сценариях Naninovel. Например, текстура внешности по адресу Resources/Naninovel/Backgrounds/MainBackground/Events/CG251 может быть объявлена как Events/CG251 .

Также можно использовать систему адресируемых ассетов, чтобы вручную распределить ресурсы. Чтобы предоставить доступ к ассету, назначьте адрес, равный пути, который вы использовали бы для его объявления с помощью метода, описанного выше, за исключением опущенной части "Resources/". Например, для объявления внешности "Beach" для фона "MainBackground" назначьте ассету следующий адрес: Naninovel/Backgrounds/MainBackground/Beach . Имейте в виду, что адресируемый провайдер по умолчанию не используется в редакторе; вы можете разрешить его, включив свойство Enable Addressable In Editor в меню конфигурации провайдера ресурсов.

В сценариях Naninovel фоны в основном контролируются с помощью команды @back :

Фоны обрабатываются немного иначе, нежели персонажи, чтобы лучше приспособиться к традиционному течению сценария визуальных новелл. Большую часть времени вы, вероятно, будете иметь одного фонового актора в сцене, который будет постоянно менять внешности. Чтобы избавиться от лишнего повторения одного и того же ID актора в сценариях, можно предоставить только внешность фона и тип перехода (необязательно) в качестве безымянного параметра, что автоматически преобразует актора "MainBackground". Если это не так, ID фонового актора может быть конкретно указан с помощью параметра id :

Запись актора "MainBackground" создается по умолчанию в диспетчере фоновых ресурсов и не может быть переименована или удалена; однако параметры основных фонов (реализация, pivot, PPU и т. д.) могут быть свободно изменены.

Каждый фон имеет свойство Poses , позволяющее задавать различные именованные состояния ("позы").

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

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

Спрайтовые фоны ​

Спрайтовая реализация акторов фона является наиболее распространенной и простой; она использует один спрайтовый

ассет для представления внешности фона. Источником спрайта может быть изображение в формате .jpg или .png .

Видео-фоны ​

Видео-фоны используют ассеты видеоклипов

ассет для представления внешности фона.

Видео-фоны могут управляться только графическим интерфейсом редактора.

Поддерживаемые видеоформаты для каждой платформы см. в разделе документации Unity для видеоресурсов

Для справки, вот подробные параметры видео фонового видеоклипа, который используется в нашей демо-версии WebGL:

А вот настройки импорта Unity для этого видеоклипа:

В зависимости от целевой платформы может потребоваться включение перекодирования в настройках импорта видеоклипов.

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

Имейте в виду, что на WebGL видеоплеер может работать только в потоковом режиме, поэтому все видеоресурсы будут скопированы в папку Assets/StreamingAssets/Backgrounds при создании проигрывателя WebGL. Папка StreamingAssets также появится в выходном каталоге сборки; убедитесь, что вы сохранили ее при публикации сборки, и убедитесь, что ваш веб-сервер позволяет считывать данные из этой папки.

Послойные фоны ​

Послойная реализация позволяет создавать фоны из нескольких спрайтов (слоев), а затем переключать их по отдельности с помощью сценариев Naninovel во время выполнения.

Чтобы создать префаб послойного фона, используйте контекстное меню ассетов Create -> Naninovel -> Background -> Layered . Войдите в режим редактирования префаба

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

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

Не забывайте, что безымянный параметр в команде @back ожидает внешность и тип перехода (а не ID и внешность, как в команде @char ), поэтому указывайте выражения в композиции слоёв следующим образом:

Универсальные фоны ​

Универсальный фон – это наиболее гибкая реализация фонового актора. Он основан на префабе с компонентом BackgroundActorBehaviour , прикрепленным к корневому объекту. Изменения внешности и все остальные фоновые параметры маршрутизируются как события Unity

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

Чтобы создать префаб универсального фона по шаблону, используйте контекстное меню ассета Create -> Naninovel -> Background -> Generic .

Универсальные фоны очень похожи на универсальных персонажей; ознакомьтесь с учебным видео по настройке анимированной 3D-модели в качестве универсального персонажа для одного из возможных примеров использования.

Фоны сцен ​

Вы можете использовать сцену Unity

в качестве заднего плана с реализацией фона сцены.

Фоны сцен могут управляться только графическим интерфейсом редактора; ресурсы сцен должны храниться в папке проекта Assets/Scenes .

Первым делом создайте новую (или переместите существующую) сцену в папку Assets/Scenes и убедитесь, что в ней есть хотя бы одна камера

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

Убедитесь, что объекты сцены расположены в пространстве так, чтобы они не перекрывались объектами из других сцен, которые потенциально могут быть загружены одновременно (например, будучи объявлены в одном сценарии Naninovel). Кроме того, имейте в виду, что в случае, если фоновый объект сцены расположен вблизи начала координат глобального пространства ( x0 y0 z0 ), он может быть визуализирован основной камерой Naninovel; чтобы предотвратить это, сместите все объекты сцены относительно глобального источника, либо используйте Configuration -> Engine -> Override Objects Layer для изоляции связанных с Naninovel объектов с помощью слоёв

После завершения настройки сцены создайте новый фоновый актор через меню Naninovel -> Configuration -> Backgrounds , выберите реализацию SceneBackground и добавьте ассет сцены к ресурсам актора.

При назначении ресурсов для актора фона сцены соответствующие ассеты должны автоматически добавляться в настройки сборки

; если вы получаете сообщение об ошибке, что ресурс сцены не был добавлен в сборку, попробуйте добавить его вручную.

Теперь вы можете использовать команду @back для управления созданным фоновым актором сцены, например:

How to Add a background image in Unity

There are different ways in which you can set the background in Unity. The simplest way is using the UI Canvas to render an image as the camera background. There are other ways like using the skybox or multiple cameras but why bother when you can get it done in a few simple steps.

Unless you are planning to create a parallax background, this method will work regardless of the game being 2D or 3D. In case of scrolling or parallax background, you need to set the image as game objects. We have created a separate tutorial on parallax background for that.

Steps to add a background Image in Unity

1. Import and set properties of your background Image

Drag and drop your background image inside the assets folder. Select the image and set the texture type to 2D and UI.

Set Image type to 2D and UI

2. Adding a UI image to scene

Go to the Scene Hierarchy and add a UI image to it by clicking on the + sign and going to UI>Image.

Adding new UI image to Scene

Rename the image to background and the canvas to background Canvas.

Select the background image element in the hierarchy and set the anchor preset under Rect transform to stretch-stretch as shown in the image below.

Setting the anchor preset for your background

Set the Rect transform’s Left, Right, Top, Bottom, Pos Z to 0. This will stretch the image object to the size of the canvas.

Setting the margins for anchor

Drag and drop your background image to the source image parameter of the Image component. Uncheck the raycast target in the image component. If you don’t have a background image, then you can use stable diffusion AI to create free background image.

Image component with raycast disabled

3. Canvas Settings

Select the background Canvas and go to the Canvas properties in the inspector window. Select the Render mode as Screen Space Camera.

Selecting Render mode in Canvas

Drag and drop your main camera to the Render Camera property and set the Plane distance. Increase the plane distance value if your foreground objects are not visible.

Camera assigned to Canvas property

That’s it, you have successfully added a background image to your scene. Even if you resize the screen, the background will resize with it.

You can play around with the color property of the background image to add color tint and transparency to the background.

You cannot add any UI elements to this canvas. If you need UI in your scene then add a new canvas and set it as screen space overlay.

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

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