Cubemap
Наследует: ImageTextureLayered < TextureLayered < Texture < Resource < RefCounted < Object
Шесть квадратных текстур, представляющих грани куба. Обычно используются как скайбокс.
Описание
Кубическая карта состоит из 6 текстур, организованных в слои. Обычно они используются для имитации отражений в 3D-рендеринге (см. ReflectionProbe). Ее можно использовать, чтобы заставить объект выглядеть так, как будто он отражает свое окружение. Обычно это обеспечивает гораздо лучшую производительность, чем другие методы отражения.
Этот ресурс обычно используется как униформа в пользовательских шейдерах. Несколько основных методов Godot используют ресурсы Cubemap.
Чтобы создать такой файл текстуры самостоятельно, повторно импортируйте файлы изображений с помощью предустановок импорта редактора Godot. Чтобы создать Cubemap из кода, используйте ImageTextureLayered.create_from_images() для экземпляра класса Cubemap.
Ожидаемый порядок изображений: X+, X-, Y+, Y-, Z+, Z- (в системе координат Godo, поэтому Y+ — «вверх», а Z- — «вперед»). Вы можете использовать один из следующих шаблонов в качестве основы:
Примечание: Godot не поддерживает использование кубических карт в PanoramaSkyMaterial. Чтобы использовать кубическую карту в качестве скайбокса, преобразуйте PanoramaSkyMaterial по умолчанию в ShaderMaterial с помощью раскрывающегося списка ресурсов Преобразовать в ShaderMaterial, затем замените его код следующим:
shader_type sky;
uniform samplerCube source_panorama : filter_linear, source_color, hint_default_black;
uniform float exposure : hint_range(0, 128) = 1.0;
void sky() {
//При импорте кубической карты из другого движка вам может потребоваться перевернуть один из компонентов `EYEDIR` ниже.
// заменив его на `-EYEDIR`.
vec3 eyedir = vec3(EYEDIR.x, EYEDIR.y, EYEDIR.z);
COLOR = texture(source_panorama, eyedir).rgb * exposure;
}
После замены кода шейдера и сохранения укажите импортированный ресурс Cubemap в разделе Shader Parameters ShaderMaterial в инспекторе.
В качестве альтернативы вы можете использовать этот инструмент для преобразования кубической карты в равнопрямоугольную карту неба и использовать PanoramaSkyMaterial как обычно.
Методы
create_placeholder() const |
Описания метода
Resource create_placeholder() const 🔗
Создает версию-заполнитель этого ресурса (PlaceholderCubemap).