use crate::{render_passes::shader_cache_key::ShaderCacheKeyRenderPass, shaders::ShaderCacheKey};
#[derive(Hash, Debug, Clone, PartialEq, Eq, Default)]
pub struct ShaderCacheKeyOcclusionCull;
impl From<ShaderCacheKeyOcclusionCull> for ShaderCacheKey {
fn from(key: ShaderCacheKeyOcclusionCull) -> Self {
ShaderCacheKey::RenderPass(ShaderCacheKeyRenderPass::OcclusionCull(key))
}
}
#[derive(Hash, Debug, Clone, PartialEq, Eq, Default)]
pub struct ShaderCacheKeyOcclusionCompaction {
pub write_first_instance: bool,
}
impl From<ShaderCacheKeyOcclusionCompaction> for ShaderCacheKey {
fn from(key: ShaderCacheKeyOcclusionCompaction) -> Self {
ShaderCacheKey::RenderPass(ShaderCacheKeyRenderPass::OcclusionCompaction(key))
}
}