Lagrange
default_shaders.h
1/*
2 * Copyright 2021 Adobe. All rights reserved.
3 * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License. You may obtain a copy
5 * of the License at http://www.apache.org/licenses/LICENSE-2.0
6 *
7 * Unless required by applicable law or agreed to in writing, software distributed under
8 * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9 * OF ANY KIND, either express or implied. See the License for the specific language
10 * governing permissions and limitations under the License.
11 */
12#pragma once
13
14#include <lagrange/ui/api.h>
15#include <lagrange/ui/Entity.h>
16#include <lagrange/ui/types/ShaderLoader.h>
17
18namespace lagrange {
19namespace ui {
20
22{
23 constexpr static const StringID Simple = "Simple"_hs;
24 constexpr static const StringID PBR = "PBR"_hs;
25 constexpr static const StringID PBRSkeletal = "PBRSkeletal"_hs;
26 constexpr static const StringID TextureView = "TextureView"_hs;
27 constexpr static const StringID TrianglesToLines = "TrianglesToLines"_hs;
28 constexpr static const StringID Outline = "Outline"_hs;
29 constexpr static const StringID ShadowDepth = "ShadowDepth"_hs;
30 constexpr static const StringID ShadowCubemap = "ShadowCubemap"_hs;
31 constexpr static const StringID SurfaceVertexAttribute = "SurfaceVertexAttribute"_hs;
32 constexpr static const StringID LineVertexAttribute = "LineVertexAttribute"_hs;
33 constexpr static const StringID SurfaceEdgeAttribute =
34 "SurfaceEdgeAttribute"_hs; // Uses special edge attribute interpolation
35 constexpr static const StringID ObjectID = "ObjectID"_hs;
36 constexpr static const StringID MeshElementID = "MeshElementID"_hs;
37 constexpr static const StringID Skybox = "Skybox"_hs;
38 constexpr static const StringID EdgesToLines = "EdgesToLines"_hs;
39};
40
42{
43 constexpr static const StringID Passthrough = 0;
44 constexpr static const StringID Texture = 1;
45};
46
48{
49 constexpr static const StringID BaseColor = "material_base_color"_hs;
50 constexpr static const StringID Roughness = "material_roughness"_hs;
51 constexpr static const StringID Normal = "material_normal"_hs;
52 constexpr static const StringID WorldSpaceNormal = "material_world_space_normal"_hs;
53 constexpr static const StringID Metallic = "material_metallic"_hs;
54 constexpr static const StringID Opacity = "material_opacity"_hs;
55 constexpr static const StringID BackfaceLighting = "material_backface_lighting"_hs;
56 constexpr static const StringID IndexOfRefraction = "material_index_of_refraction"_hs;
57 constexpr static const StringID Glow = "material_glow"_hs;
58 constexpr static const StringID Translucence = "material_translucence"_hs;
59 constexpr static const StringID InteriorColor = "material_interior_color"_hs;
60 constexpr static const StringID GlowIntensity = "material_glow_intensity"_hs;
61};
62
64{
65 constexpr static const StringID ElementMode = "element_mode"_hs;
66};
67
68LA_UI_API void register_default_shaders(Registry& r);
69
70} // namespace ui
71} // namespace lagrange
Definition: Texture.h:30
Lagrange UI Viewer and mini 3D engine.
Definition: AcceleratedPicking.h:22
Main namespace for Lagrange.
Definition: AABBIGL.h:30
Definition: default_shaders.h:42
Definition: default_shaders.h:22
Definition: default_shaders.h:64
Definition: default_shaders.h:48