53 lines
2.0 KiB
C++
53 lines
2.0 KiB
C++
#pragma once
|
|
|
|
#include <XCEngine/Core/IO/IResourceLoader.h>
|
|
|
|
namespace XCEngine {
|
|
namespace Resources {
|
|
|
|
enum class BuiltinPrimitiveType {
|
|
Cube,
|
|
Sphere,
|
|
Capsule,
|
|
Cylinder,
|
|
Plane,
|
|
Quad
|
|
};
|
|
|
|
bool IsBuiltinResourcePath(const Containers::String& path);
|
|
bool IsBuiltinMeshPath(const Containers::String& path);
|
|
bool IsBuiltinMaterialPath(const Containers::String& path);
|
|
bool IsBuiltinShaderPath(const Containers::String& path);
|
|
bool IsBuiltinTexturePath(const Containers::String& path);
|
|
bool TryGetBuiltinShaderPathByShaderName(
|
|
const Containers::String& shaderName,
|
|
Containers::String& outPath);
|
|
bool TryResolveBuiltinShaderAssetPath(
|
|
const Containers::String& builtinShaderPath,
|
|
Containers::String& outPath);
|
|
|
|
const char* GetBuiltinPrimitiveDisplayName(BuiltinPrimitiveType primitiveType);
|
|
Containers::String GetBuiltinPrimitiveMeshPath(BuiltinPrimitiveType primitiveType);
|
|
Containers::String GetBuiltinDefaultPrimitiveMaterialPath();
|
|
Containers::String GetBuiltinForwardLitShaderPath();
|
|
Containers::String GetBuiltinUnlitShaderPath();
|
|
Containers::String GetBuiltinDepthOnlyShaderPath();
|
|
Containers::String GetBuiltinShadowCasterShaderPath();
|
|
Containers::String GetBuiltinObjectIdShaderPath();
|
|
Containers::String GetBuiltinObjectIdOutlineShaderPath();
|
|
Containers::String GetBuiltinSkyboxShaderPath();
|
|
Containers::String GetBuiltinVolumetricShaderPath();
|
|
Containers::String GetBuiltinColorScalePostProcessShaderPath();
|
|
Containers::String GetBuiltinFinalColorShaderPath();
|
|
Containers::String GetBuiltinDefaultPrimitiveTexturePath();
|
|
|
|
bool TryParseBuiltinPrimitiveType(const Containers::String& path, BuiltinPrimitiveType& outPrimitiveType);
|
|
|
|
LoadResult CreateBuiltinMeshResource(const Containers::String& path);
|
|
LoadResult CreateBuiltinMaterialResource(const Containers::String& path);
|
|
LoadResult CreateBuiltinShaderResource(const Containers::String& path);
|
|
LoadResult CreateBuiltinTextureResource(const Containers::String& path);
|
|
|
|
} // namespace Resources
|
|
} // namespace XCEngine
|