Exemple #1
0
        /////////////////////////////////////////

        static string GetCacheFileName()
        {
            if (Bgfx.GetCurrentBackend() == RendererBackend.Noop)
            {
                return("");
            }

            string folder = PathUtility.Combine(VirtualFileSystem.Directories.Project, @"Caches\ShaderCache");

            string name = "";

            if (Bgfx.GetCurrentBackend() == RendererBackend.Direct3D11 || Bgfx.GetCurrentBackend() == RendererBackend.Direct3D12)
            {
                name = "Direct3D11";
            }
            else if (Bgfx.GetCurrentBackend() == RendererBackend.OpenGLES)
            {
                name = "OpenGLES";
            }
            else if (Bgfx.GetCurrentBackend() == RendererBackend.Vulkan)
            {
                name = "Vulkan";
            }
            else
            {
                Log.Fatal("GpuProgramManager: Shader model is not specified. Bgfx.GetCurrentBackend() == {0}.", Bgfx.GetCurrentBackend());
            }

            return(Path.Combine(folder, name + ".cache"));

            //return Path.Combine( folder, Bgfx.GetCurrentBackend().ToString() + ".cache" );
        }
        static string GetShaderPath()
        {
            switch (Bgfx.GetCurrentBackend())
            {
            case RendererBackend.Direct3D11:
            case RendererBackend.Direct3D12:
                return(Path.Combine("./shaders", "dx11"));

            case RendererBackend.OpenGL:
                return(Path.Combine("./shaders", "glsl"));

            default:
                throw new InvalidOperationException("Unsupported renderer backend.");
            }
        }
Exemple #3
0
        static string GetShaderPath()
        {
            switch (Bgfx.GetCurrentBackend())
            {
            case RendererBackend.Direct3D11:
            case RendererBackend.Direct3D12:
                return(Path.Combine(RootPath, "Shaders/bin/dx11/"));

            case RendererBackend.OpenGL:
                return(Path.Combine(RootPath, "Shaders/bin/glsl/"));

            case RendererBackend.OpenGLES:
                return(Path.Combine(RootPath, "Shaders/bin/gles/"));

            case RendererBackend.Direct3D9:
                return(Path.Combine(RootPath, "Shaders/bin/dx9/"));

            default:
                throw new InvalidOperationException("Unknown renderer backend type.");
            }
        }