Paradox Game Engine  v1.0.0 beta06
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros Pages
SiliconStudio.Paradox.Graphics.Texture3D Class Reference

A Texture 3D frontend to SharpDX.Direct3D11.Texture3D. More...

Inheritance diagram for SiliconStudio.Paradox.Graphics.Texture3D:
SiliconStudio.Paradox.Graphics.Texture SiliconStudio.Paradox.Graphics.GraphicsResource SiliconStudio.Paradox.Graphics.GraphicsResourceBase SiliconStudio.Core.ComponentBase SiliconStudio.Core.IComponent SiliconStudio.Core.ICollectorHolder SiliconStudio.Core.IReferencable SiliconStudio.Core.IReferencable

Public Member Functions

override Texture Clone ()
 Makes a copy of this texture. More...
 
override Texture ToStaging ()
 Return an equivalent staging texture CPU read-writable from this instance. More...
 
- Public Member Functions inherited from SiliconStudio.Paradox.Graphics.Texture
ToTexture< T > (ViewType viewType, int arrayOrDepthSlice, int mipMapSlice)
 Gets a view on this texture for a particular ViewType, array index (or zIndex for Texture3D), and mipmap index. More...
 
abstract Texture ToTexture (ViewType viewType, int arraySlice, int mipMapSlice)
 Gets a view on this texture for a particular ViewType, array index (or zIndex for Texture3D), and mipmap index. More...
 
RenderTarget ToRenderTarget ()
 
MipMapDescription GetMipMapDescription (int mipmap)
 Gets the mipmap description of this instance for the specified mipmap level. More...
 
int GetSubResourceIndex (int arraySlice, int mipSlice)
 Gets the absolute sub-resource index from the array and mip slice. More...
 
int CalculateWidth< TData > (int mipLevel=0)
 Calculates the expected width of a texture using a specified type. More...
 
int CalculatePixelDataCount< TData > (int mipLevel=0)
 Calculates the number of pixel data this texture is requiring for a particular mip level. More...
 
Clone< T > ()
 Makes a copy of this texture with type casting. More...
 
TData[] GetData< TData > (int arraySlice=0, int mipSlice=0)
 Gets the content of this texture to an array of data. More...
 
bool GetData< TData > (TData[] toData, int arraySlice=0, int mipSlice=0, bool doNotWait=false)
 Copies the content of this texture to an array of data. More...
 
unsafe bool GetData< TData > (Texture stagingTexture, TData[] toData, int arraySlice=0, int mipSlice=0, bool doNotWait=false)
 Copies the content of this texture from GPU memory to an array of data on CPU memory using a specific staging resource. More...
 
void SetData< TData > (TData[] fromData, int arraySlice=0, int mipSlice=0, ResourceRegion?region=null)
 Copies the content an array of data on CPU memory to this texture into GPU memory. More...
 
void SetData (DataPointer fromData, int arraySlice=0, int mipSlice=0, ResourceRegion?region=null)
 Copies the content an data on CPU memory to this texture into GPU memory using the specified GraphicsDevice (The graphics device could be deffered). More...
 
unsafe void SetData< TData > (GraphicsDevice device, TData[] fromData, int arraySlice=0, int mipSlice=0, ResourceRegion?region=null)
 Copies the content an array of data on CPU memory to this texture into GPU memory using the specified GraphicsDevice (The graphics device could be deffered). More...
 
unsafe bool GetData (Texture stagingTexture, DataPointer toData, int arraySlice=0, int mipSlice=0, bool doNotWait=false)
 Copies the content of this texture from GPU memory to a pointer on CPU memory using a specific staging resource. More...
 
unsafe void SetData (GraphicsDevice device, DataPointer fromData, int arraySlice=0, int mipSlice=0, ResourceRegion?region=null)
 Copies the content an data on CPU memory to this texture into GPU memory. More...
 
void Save (Stream stream, ImageFileType fileType)
 Saves this texture to a stream with a specified format. More...
 
Image GetDataAsImage ()
 Gets the GPU content of this texture as an Image on the CPU. More...
 
Image GetDataAsImage (Texture stagingTexture)
 Gets the GPU content of this texture to an Image on the CPU. More...
 
void Save (Stream stream, Texture stagingTexture, ImageFileType fileType)
 Saves this texture to a stream with a specified format. More...
 
- Public Member Functions inherited from SiliconStudio.Core.ComponentBase
void Dispose ()
 
override string ToString ()
 

Static Public Member Functions

static Texture3D New (GraphicsDevice device, TextureDescription texture)
 Creates a new texture from a Direct3D11.Texture3D. More...
 
static Texture3D New (GraphicsDevice device, int width, int height, int depth, PixelFormat format, TextureFlags textureFlags=TextureFlags.ShaderResource, GraphicsResourceUsage usage=GraphicsResourceUsage.Default)
 Creates a new Texture3D with a single mipmap. More...
 
static Texture3D New (GraphicsDevice device, int width, int height, int depth, MipMapCount mipCount, PixelFormat format, TextureFlags textureFlags=TextureFlags.ShaderResource, GraphicsResourceUsage usage=GraphicsResourceUsage.Default)
 Creates a new Texture3D. More...
 
static unsafe Texture3D New< T > (GraphicsDevice device, int width, int height, int depth, PixelFormat format, T[] textureData, TextureFlags textureFlags=TextureFlags.ShaderResource, GraphicsResourceUsage usage=GraphicsResourceUsage.Immutable)
 Creates a new Texture3D with texture data for the firs map. More...
 
static Texture3D New (GraphicsDevice device, int width, int height, int depth, MipMapCount mipCount, PixelFormat format, DataBox[] textureData, TextureFlags textureFlags=TextureFlags.ShaderResource, GraphicsResourceUsage usage=GraphicsResourceUsage.Default)
 Creates a new Texture3D. More...
 
static new Texture3D New (GraphicsDevice device, Image image, TextureFlags textureFlags=TextureFlags.ShaderResource, GraphicsResourceUsage usage=GraphicsResourceUsage.Immutable)
 Creates a new Texture3D directly from an Image. More...
 
static new Texture3D Load (GraphicsDevice device, Stream stream, TextureFlags textureFlags=TextureFlags.ShaderResource, GraphicsResourceUsage usage=GraphicsResourceUsage.Immutable)
 Loads a 3D texture from a stream. More...
 
- Static Public Member Functions inherited from SiliconStudio.Paradox.Graphics.Texture
static int CalculateMipSize (int width, int mipLevel)
 
static Texture Load (GraphicsDevice device, Stream stream, TextureFlags textureFlags=TextureFlags.ShaderResource, GraphicsResourceUsage usage=GraphicsResourceUsage.Immutable)
 Loads a texture from a stream. More...
 
static Texture New (GraphicsDevice device, Image image, TextureFlags textureFlags=TextureFlags.ShaderResource, GraphicsResourceUsage usage=GraphicsResourceUsage.Immutable)
 Loads a texture from a stream. More...
 
static Texture New (GraphicsDevice graphicsDevice, TextureDescription description)
 Creates a new texture with the specified generic texture description. More...
 

Static Protected Member Functions

static TextureDescription NewDescription (int width, int height, int depth, PixelFormat format, TextureFlags flags, int mipCount, GraphicsResourceUsage usage)
 
- Static Protected Member Functions inherited from SiliconStudio.Paradox.Graphics.Texture
static DataBox GetDataBox< T > (PixelFormat format, int width, int height, int depth, T[] textureData, IntPtr fixedPointer)
 

Additional Inherited Members

- Public Attributes inherited from SiliconStudio.Paradox.Graphics.Texture
readonly TextureDescription Description
 Common description for the original texture. More...
 
int Width
 The width of this texture view. More...
 
int Height
 The height of this texture view. More...
 
readonly int Depth
 The depth of this texture view. More...
 
readonly PixelFormat ViewFormat
 The format of this texture view. More...
 
readonly ViewType ViewType
 The format of this texture view. More...
 
readonly int MipLevel
 The miplevel index of this texture view. More...
 
readonly int ArraySlice
 The array index of this texture view. More...
 
readonly bool IsBlockCompressed
 Gets a boolean indicating whether this Texture is a using a block compress format (BC1, BC2, BC3, BC4, BC5, BC6H, BC7). More...
 
- Public Attributes inherited from SiliconStudio.Paradox.Graphics.GraphicsResourceBase
Action< GraphicsResourceBaseReload
 
- Public Attributes inherited from SiliconStudio.Core.ComponentBase
PropertyContainer Tags
 Gets the attached properties to this component. More...
 
- Protected Member Functions inherited from SiliconStudio.Paradox.Graphics.Texture
 Texture ()
 
 Texture (GraphicsDevice device, Texture parentTexture, ViewType viewType, int viewArraySlice, int viewMipLevel, PixelFormat viewFormat=PixelFormat.None)
 
 Texture (GraphicsDevice device, TextureDescription description, ViewType viewType, int viewArraySlice, int viewMipLevel, PixelFormat viewFormat=PixelFormat.None)
 
virtual TextureDescription GetCloneableDescription ()
 
override void Destroy ()
 Disposes of object resources. More...
 
- Protected Member Functions inherited from SiliconStudio.Paradox.Graphics.GraphicsResource
 GraphicsResource ()
 
 GraphicsResource (GraphicsDevice device)
 
 GraphicsResource (GraphicsDevice device, string name)
 
- Protected Member Functions inherited from SiliconStudio.Paradox.Graphics.GraphicsResourceBase
 GraphicsResourceBase ()
 Initializes a new instance of the GraphicsResourceBase class. More...
 
 GraphicsResourceBase (GraphicsDevice device)
 Initializes a new instance of the GraphicsResourceBase class. More...
 
 GraphicsResourceBase (GraphicsDevice device, string name)
 Initializes a new instance of the GraphicsResourceBase class. More...
 
- Protected Member Functions inherited from SiliconStudio.Core.ComponentBase
 ComponentBase ()
 Initializes a new instance of the ComponentBase class. More...
 
 ComponentBase (string name)
 Initializes a new instance of the ComponentBase class. More...
 
virtual void OnNameChanged ()
 Called when Name property was changed. More...
 
- Properties inherited from SiliconStudio.Paradox.Graphics.GraphicsResourceBase
GraphicsDevice GraphicsDevice [get, set]
 Gets the graphics device attached to this instance. More...
 
- Properties inherited from SiliconStudio.Core.ComponentBase
long Id [get, set]
 
string Name [get, set]
 Gets or sets the name of this component. More...
 
bool IsDisposed [get, set]
 Has the component been disposed or not yet. More...
 
- Properties inherited from SiliconStudio.Core.IComponent
long Id [get]
 Gets the id of this component. More...
 
string Name [get]
 Gets the name of this component. More...
 
- Properties inherited from SiliconStudio.Core.IReferencable
int ReferenceCount [get]
 Gets the reference count of this instance. More...
 
- Properties inherited from SiliconStudio.Core.ICollectorHolder
ObjectCollector Collector [get]
 Gets the collector. More...
 

Detailed Description

A Texture 3D frontend to SharpDX.Direct3D11.Texture3D.

Definition at line 37 of file Texture3D.cs.

Member Function Documentation

override Texture SiliconStudio.Paradox.Graphics.Texture3D.Clone ( )
virtual

Makes a copy of this texture.

This method doesn't copy the content of the texture.

Returns
A copy of this texture.

Implements SiliconStudio.Paradox.Graphics.Texture.

Definition at line 48 of file Texture3D.cs.

static new Texture3D SiliconStudio.Paradox.Graphics.Texture3D.Load ( GraphicsDevice  device,
Stream  stream,
TextureFlags  textureFlags = TextureFlags.ShaderResource,
GraphicsResourceUsage  usage = GraphicsResourceUsage.Immutable 
)
static

Loads a 3D texture from a stream.

Parameters
deviceThe GraphicsDevice.
streamThe stream to load the texture from.
textureFlagsTrue to load the texture with unordered access enabled. Default is false.
usageUsage of the resource. Default is GraphicsResourceUsage.Immutable
Exceptions
ArgumentExceptionIf the texture is not of type 3D
Returns
A texture

Definition at line 180 of file Texture3D.cs.

static Texture3D SiliconStudio.Paradox.Graphics.Texture3D.New ( GraphicsDevice  device,
TextureDescription  texture 
)
static

Creates a new texture from a Direct3D11.Texture3D.

Parameters
deviceThe GraphicsDevice.
textureThe native texture Direct3D11.Texture3D.
Returns
A new instance of Texture3D class.

<unmanaged-short>ID3D11Device::CreateTexture3D</unmanaged-short>

Definition at line 71 of file Texture3D.cs.

static Texture3D SiliconStudio.Paradox.Graphics.Texture3D.New ( GraphicsDevice  device,
int  width,
int  height,
int  depth,
PixelFormat  format,
TextureFlags  textureFlags = TextureFlags.ShaderResource,
GraphicsResourceUsage  usage = GraphicsResourceUsage.Default 
)
static

Creates a new Texture3D with a single mipmap.

Parameters
deviceThe GraphicsDevice.
widthThe width.
heightThe height.
depthThe depth.
formatDescribes the format to use.
usageThe usage.
textureFlagstrue if the texture needs to support unordered read write.
Returns
A new instance of Texture3D class.

Definition at line 89 of file Texture3D.cs.

static Texture3D SiliconStudio.Paradox.Graphics.Texture3D.New ( GraphicsDevice  device,
int  width,
int  height,
int  depth,
MipMapCount  mipCount,
PixelFormat  format,
TextureFlags  textureFlags = TextureFlags.ShaderResource,
GraphicsResourceUsage  usage = GraphicsResourceUsage.Default 
)
static

Creates a new Texture3D.

Parameters
deviceThe GraphicsDevice.
widthThe width.
heightThe height.
depthThe depth.
mipCountNumber of mipmaps, set to true to have all mipmaps, set to an int >=1 for a particular mipmap count.
formatDescribes the format to use.
usageThe usage.
textureFlagstrue if the texture needs to support unordered read write.
Returns
A new instance of Texture3D class.

Definition at line 108 of file Texture3D.cs.

static Texture3D SiliconStudio.Paradox.Graphics.Texture3D.New ( GraphicsDevice  device,
int  width,
int  height,
int  depth,
MipMapCount  mipCount,
PixelFormat  format,
DataBox[]  textureData,
TextureFlags  textureFlags = TextureFlags.ShaderResource,
GraphicsResourceUsage  usage = GraphicsResourceUsage.Default 
)
static

Creates a new Texture3D.

Parameters
deviceThe GraphicsDevice.
widthThe width.
heightThe height.
depthThe depth.
mipCountNumber of mipmaps, set to true to have all mipmaps, set to an int >=1 for a particular mipmap count.
formatDescribes the format to use.
usageThe usage.
textureFlagstrue if the texture needs to support unordered read write.
Returns
A new instance of Texture3D class.

Definition at line 148 of file Texture3D.cs.

static new Texture3D SiliconStudio.Paradox.Graphics.Texture3D.New ( GraphicsDevice  device,
Image  image,
TextureFlags  textureFlags = TextureFlags.ShaderResource,
GraphicsResourceUsage  usage = GraphicsResourceUsage.Immutable 
)
static

Creates a new Texture3D directly from an Image.

Parameters
deviceThe GraphicsDevice.
imageAn image in CPU memory.
textureFlagstrue if the texture needs to support unordered read write.
usageThe usage.
Returns
A new instance of Texture3D class.

Definition at line 162 of file Texture3D.cs.

References SiliconStudio.Paradox.Graphics.Image.Description, SiliconStudio.Paradox.Graphics.ImageDescription.Dimension, and SiliconStudio.Paradox.Graphics.Image.ToDataBox().

static unsafe Texture3D SiliconStudio.Paradox.Graphics.Texture3D.New< T > ( GraphicsDevice  device,
int  width,
int  height,
int  depth,
PixelFormat  format,
T[]  textureData,
TextureFlags  textureFlags = TextureFlags.ShaderResource,
GraphicsResourceUsage  usage = GraphicsResourceUsage.Immutable 
)
static

Creates a new Texture3D with texture data for the firs map.

Template Parameters
TType of the data to upload to the texture
Parameters
deviceThe GraphicsDevice.
widthThe width.
heightThe height.
depthThe depth.
formatDescribes the format to use.
usageThe usage.
textureDataThe texture data, width * height * depth datas
textureFlagstrue if the texture needs to support unordered read write.
Returns
A new instance of Texture3D class.

The first dimension of mipMapTextures describes the number of is an array ot Texture3D Array

Type Constraints
T :struct 

Definition at line 129 of file Texture3D.cs.

References DirectX.format.

static TextureDescription SiliconStudio.Paradox.Graphics.Texture3D.NewDescription ( int  width,
int  height,
int  depth,
PixelFormat  format,
TextureFlags  flags,
int  mipCount,
GraphicsResourceUsage  usage 
)
staticprotected

Definition at line 188 of file Texture3D.cs.

References DirectX.flags, and DirectX.format.

override Texture SiliconStudio.Paradox.Graphics.Texture3D.ToStaging ( )
virtual

Return an equivalent staging texture CPU read-writable from this instance.

Returns

Implements SiliconStudio.Paradox.Graphics.Texture.

Definition at line 57 of file Texture3D.cs.


The documentation for this class was generated from the following file: