librashader_runtime_d3d11/
texture.rs1use crate::error::Result;
2use crate::framebuffer::OwnedImage;
3use librashader_common::{FilterMode, WrapMode};
4use windows::Win32::Graphics::Direct3D11::ID3D11ShaderResourceView;
5
6#[derive(Debug, Clone)]
7pub struct InputTexture {
8 pub view: ID3D11ShaderResourceView,
9 pub filter: FilterMode,
10 pub wrap_mode: WrapMode,
11}
12
13impl InputTexture {
14 pub(crate) fn from_framebuffer(
15 fbo: &OwnedImage,
16 wrap_mode: WrapMode,
17 filter: FilterMode,
18 ) -> Result<Self> {
19 Ok(InputTexture {
20 view: fbo.create_shader_resource_view()?,
21 filter,
22 wrap_mode,
23 })
24 }
25}
26
27impl AsRef<InputTexture> for InputTexture {
28 fn as_ref(&self) -> &InputTexture {
29 self
30 }
31}