Сэмпл Cubemap Texture
These material graph samples demonstrate creation of materials applying custom cubemap textures for reflective and refractive materials.Эти сэмплы графов материалов демонстрируют создание материалов с применением пользовательских текстур кубической текстуры для отражающих и преломляющих материалов.
Cubemap Reflection SampleСэмпл Cubemap Reflection#
First, we get a reflection vector based on current camera's view direction vector and the object's normal vector, both in the world space. So, to the input ports of the Reflect node we connect outputs of the Vertex Normal node and the View Direction node (using the -X|-Y|-Z port adapter to get the opposite direction, as incident vector is the opposite of the view vector).Во-первых, мы получаем вектор отражения, основанный на векторе направления обзора текущей камеры и векторе нормали объекта , оба в мировом пространстве. Итак, к входным портам узла Reflect подключаем выходы узла Vertex Normal и узла View Direction (используя адаптер порта -X|-Y|-Z, чтобы получить противоположное направление, так как вектор падения является обратным к вектору направления обзора).
Then, according to the obtained coordinates in the world space, the Sample Texture node obtains the pixel data from the cubemap (Texture Cube node), sampling a specified MIP-level provided by the Slider parameter node (adjustable via the Parameters panel in UnigineEditor) to fake roughness of the surface. The color value is passed to the Emissive slot of the material.Затем, согласно полученным координатам в мировом пространстве, узел Sample Texture получает пиксельные данные из кубической текстуры (узел Texture Cube), сэмплируя заданный уровень MIP, предоставленный узлом параметра Slider (настраивается через панель Parameters в UnigineEditor), для имитации шероховатости. поверхности. Значение цвета передается в слот Emissive материала.
The zero Albedo value (to preserve initial colors of the cubemap texture) is specified directly.Нулевое значение Albedo (для сохранения исходных цветов текстуры кубической текстуры) указывается напрямую.
Finally, the data output is passed to the Final node.Наконец, выходные данные передаются узлу Final.
Cubemap Refraction SampleСэмпл Cubemap Refraction#
First, we get a refraction vector based on current camera's view direction vector and the object's normal vector, both in the world space. So, to the input ports of the Refract node we connect the outputs of the Vertex Normal node and the View Direction node (using the -X|-Y|-Z port adapter to get the opposite direction, as incident vector is the opposite of the view vector).Во-первых, мы получаем вектор преломления, основанный на векторе направления обзора текущей камеры и векторе нормали объекта, оба в мировом пространстве. Итак, к входным портам узла Refract подключаем выходы узла Vertex Normal и узла View Direction (используя порт адаптер порта -X|-Y|-Z, чтобы получить противоположное направление, так как вектор падения является обратным к вектору направления обзора).
The Refraction Index is the ratio of indices of refraction of two environments, so we pass 1 (IOR of air) divided by the desired IOR value of our material.Refraction Index — это отношение показателей преломления двух сред, поэтому мы передаем 1 (IOR воздуха), деленное на желаемое значение IOR нашего материала.
Then, according to the obtained coordinates in the world space, the Sample Texture node obtains the pixel data from the cubemap (Texture Cube node), sampling a specified MIP-level provided by the Slider parameter node (adjustable via the Parameters panel in UnigineEditor) to fake roughness of the surface. The first three components (x,y,z) of the color value are passed to the Emissive slot of the material.Затем, согласно полученным координатам в мировом пространстве, нода Sample Texture получает пиксельные данные из кубической текстуры (нода Texture Cube), сэмплируя заданный уровень MIP, предоставленный узлом параметра Slider (настраивается через панель Parameters в UnigineEditor), для имитации шероховатости. поверхности. Первые три компонента (x,y,z) значения цвета передаются в слот Emissive материала.
The zero Albedo and Roughness values (to preserve initial colors of the cubemap texture) are specified directly.Нулевые значения Albedo и Roughness (для сохранения исходных цветов текстуры кубической текстуры) указываются напрямую.
Finally, the data output is passed to the Final node.Наконец, выходные данные передаются узлу Final.