C# Class Axiom.RenderSystems.DirectX9.D3DHardwarePixelBuffer

DirectX implementation of HardwarePixelBuffer
Inheritance: Axiom.Graphics.HardwarePixelBuffer
Afficher le fichier Open project: WolfgangSt/axiom Class Usage Examples

Protected Properties

Свойство Type Description
HWMipmaps bool
device SlimDX.Direct3D9.Device
doMipmapGen bool
fsaaSurface SlimDX.Direct3D9.Surface
mipTex SlimDX.Direct3D9.BaseTexture
sliceTRT List
surface SlimDX.Direct3D9.Surface
tempSurface SlimDX.Direct3D9.Surface
tempVolume SlimDX.Direct3D9.Volume
volume SlimDX.Direct3D9.Volume

Méthodes publiques

Méthode Description
Bind ( SlimDX.Direct3D9 device, SlimDX.Direct3D9 surface, bool update ) : void

Call this to associate a D3D surface with this pixel buffer

Blit ( Axiom.Graphics.HardwarePixelBuffer src, BasicBox srcBox, BasicBox dstBox ) : void

Copies a box from another PixelBuffer to a region of the this PixelBuffer.

The source and destination regions dimensions don't have to match, in which case scaling is done. This scaling is generally done using a bilinear filter in hardware, but it is faster to pass the source image in the right dimensions. Only call this function when both buffers are unlocked.

BlitFromMemory ( PixelBox src, BasicBox dstBox ) : void

Copies a region from normal memory to a region of this pixelbuffer. The source image can be in any pixel format supported by Axiom, and in any size.

The source and destination regions dimensions don't have to match, in which case scaling is done. This scaling is generally done using a bilinear filter in hardware, but it is faster to pass the source image in the right dimensions. Only call this function when both buffers are unlocked.

BlitToMemory ( BasicBox srcBox, PixelBox dst ) : void

Copies a region of this pixelbuffer to normal memory.

The source and destination regions don't have to match, in which case scaling is done. Only call this function when the buffer is unlocked.

ClearSliceRTT ( int zoffset ) : void

Notify TextureBuffer of destruction of render target

D3DHardwarePixelBuffer ( BufferUsage usage ) : System
GenMipmaps ( ) : void

Internal function to update mipmaps on update of level 0

GetRenderTarget ( int zoffset ) : RenderTexture

Get rendertarget for z slice

GetSurface ( Device d3D9Device ) : Surface
LockDeviceAccess ( ) : void
SetMipmapping ( bool doMipmapGen, bool HWMipmaps, SlimDX.Direct3D9 mipTex ) : void

Function to set mipmap generation

UnlockDeviceAccess ( ) : void

Méthodes protégées

Méthode Description
CreateRenderTextures ( bool update ) : void

Create (or update) render textures for slices

DestroyRenderTextures ( ) : void

Destroy render textures for slices

FromD3DLock ( PixelBox rval, SlimDX rectangle ) : void

Util functions to convert a D3D locked rectangle to a pixel box

LockImpl ( BasicBox lockBox, BufferLocking options ) : PixelBox

Lock a box

ToD3DBox ( BasicBox lockBox ) : SlimDX.Direct3D9.Box

Convert Axiom Box to D3D box

ToD3DBoxExtent ( PixelBox lockBox ) : SlimDX.Direct3D9.Box

Convert Axiom PixelBox extent to D3D box

ToD3DRectangle ( BasicBox lockBox ) : Rectangle

Convert Axiom integer Box to D3D rectangle

ToD3DRectangleExtent ( PixelBox lockBox ) : Rectangle

Convert Axiom PixelBox extent to D3D rectangle

UnlockImpl ( ) : void

Unlock a box

dispose ( bool disposeManagedResources ) : void

Method Details

Bind() public méthode

Call this to associate a D3D surface with this pixel buffer
public Bind ( SlimDX.Direct3D9 device, SlimDX.Direct3D9 surface, bool update ) : void
device SlimDX.Direct3D9
surface SlimDX.Direct3D9
update bool
Résultat void

Blit() public méthode

Copies a box from another PixelBuffer to a region of the this PixelBuffer.
The source and destination regions dimensions don't have to match, in which case scaling is done. This scaling is generally done using a bilinear filter in hardware, but it is faster to pass the source image in the right dimensions. Only call this function when both buffers are unlocked.
public Blit ( Axiom.Graphics.HardwarePixelBuffer src, BasicBox srcBox, BasicBox dstBox ) : void
src Axiom.Graphics.HardwarePixelBuffer Source/dest pixel buffer
srcBox Axiom.Media.BasicBox Image.BasicBox describing the source region in this buffer
dstBox Axiom.Media.BasicBox Image.BasicBox describing the destination region in this buffer
Résultat void

BlitFromMemory() public méthode

Copies a region from normal memory to a region of this pixelbuffer. The source image can be in any pixel format supported by Axiom, and in any size.
The source and destination regions dimensions don't have to match, in which case scaling is done. This scaling is generally done using a bilinear filter in hardware, but it is faster to pass the source image in the right dimensions. Only call this function when both buffers are unlocked.
public BlitFromMemory ( PixelBox src, BasicBox dstBox ) : void
src Axiom.Media.PixelBox PixelBox containing the source pixels and format in memory
dstBox Axiom.Media.BasicBox Image.BasicBox describing the destination region in this buffer
Résultat void

BlitToMemory() public méthode

Copies a region of this pixelbuffer to normal memory.
The source and destination regions don't have to match, in which case scaling is done. Only call this function when the buffer is unlocked.
public BlitToMemory ( BasicBox srcBox, PixelBox dst ) : void
srcBox Axiom.Media.BasicBox BasicBox describing the source region of this buffer
dst Axiom.Media.PixelBox PixelBox describing the destination pixels and format in memory
Résultat void

ClearSliceRTT() public méthode

Notify TextureBuffer of destruction of render target
public ClearSliceRTT ( int zoffset ) : void
zoffset int
Résultat void

CreateRenderTextures() protected méthode

Create (or update) render textures for slices
protected CreateRenderTextures ( bool update ) : void
update bool are we updating an existing texture
Résultat void

D3DHardwarePixelBuffer() public méthode

public D3DHardwarePixelBuffer ( BufferUsage usage ) : System
usage BufferUsage
Résultat System

DestroyRenderTextures() protected méthode

Destroy render textures for slices
protected DestroyRenderTextures ( ) : void
Résultat void

FromD3DLock() protected static méthode

Util functions to convert a D3D locked rectangle to a pixel box
protected static FromD3DLock ( PixelBox rval, SlimDX rectangle ) : void
rval Axiom.Media.PixelBox
rectangle SlimDX
Résultat void

GenMipmaps() public méthode

Internal function to update mipmaps on update of level 0
public GenMipmaps ( ) : void
Résultat void

GetRenderTarget() public méthode

Get rendertarget for z slice
public GetRenderTarget ( int zoffset ) : RenderTexture
zoffset int
Résultat Axiom.Graphics.RenderTexture

GetSurface() public méthode

public GetSurface ( Device d3D9Device ) : Surface
d3D9Device Device
Résultat Surface

LockDeviceAccess() public static méthode

public static LockDeviceAccess ( ) : void
Résultat void

LockImpl() protected méthode

Lock a box
protected LockImpl ( BasicBox lockBox, BufferLocking options ) : PixelBox
lockBox Axiom.Media.BasicBox
options BufferLocking
Résultat Axiom.Media.PixelBox

SetMipmapping() public méthode

Function to set mipmap generation
public SetMipmapping ( bool doMipmapGen, bool HWMipmaps, SlimDX.Direct3D9 mipTex ) : void
doMipmapGen bool
HWMipmaps bool
mipTex SlimDX.Direct3D9
Résultat void

ToD3DBox() protected static méthode

Convert Axiom Box to D3D box
protected static ToD3DBox ( BasicBox lockBox ) : SlimDX.Direct3D9.Box
lockBox Axiom.Media.BasicBox
Résultat SlimDX.Direct3D9.Box

ToD3DBoxExtent() protected static méthode

Convert Axiom PixelBox extent to D3D box
protected static ToD3DBoxExtent ( PixelBox lockBox ) : SlimDX.Direct3D9.Box
lockBox Axiom.Media.PixelBox
Résultat SlimDX.Direct3D9.Box

ToD3DRectangle() protected static méthode

Convert Axiom integer Box to D3D rectangle
protected static ToD3DRectangle ( BasicBox lockBox ) : Rectangle
lockBox Axiom.Media.BasicBox
Résultat System.Drawing.Rectangle

ToD3DRectangleExtent() protected static méthode

Convert Axiom PixelBox extent to D3D rectangle
protected static ToD3DRectangleExtent ( PixelBox lockBox ) : Rectangle
lockBox Axiom.Media.PixelBox
Résultat System.Drawing.Rectangle

UnlockDeviceAccess() public static méthode

public static UnlockDeviceAccess ( ) : void
Résultat void

UnlockImpl() protected méthode

Unlock a box
protected UnlockImpl ( ) : void
Résultat void

dispose() protected méthode

protected dispose ( bool disposeManagedResources ) : void
disposeManagedResources bool
Résultat void

Property Details

HWMipmaps protected_oe property

Hardware Mipmaps?
protected bool HWMipmaps
Résultat bool

device protected_oe property

D3DDevice pointer
protected Device,SlimDX.Direct3D9 device
Résultat SlimDX.Direct3D9.Device

doMipmapGen protected_oe property

Doing Mipmapping?
protected bool doMipmapGen
Résultat bool

fsaaSurface protected_oe property

FSAA Surface abstracted by this buffer
protected Surface,SlimDX.Direct3D9 fsaaSurface
Résultat SlimDX.Direct3D9.Surface

mipTex protected_oe property

The Mipmap texture?
protected BaseTexture,SlimDX.Direct3D9 mipTex
Résultat SlimDX.Direct3D9.BaseTexture

sliceTRT protected_oe property

Render targets
protected List sliceTRT
Résultat List

surface protected_oe property

Surface abstracted by this buffer
protected Surface,SlimDX.Direct3D9 surface
Résultat SlimDX.Direct3D9.Surface

tempSurface protected_oe property

Temporary surface in main memory if direct locking of mSurface is not possible
protected Surface,SlimDX.Direct3D9 tempSurface
Résultat SlimDX.Direct3D9.Surface

tempVolume protected_oe property

Temporary volume in main memory if direct locking of mVolume is not possible
protected Volume,SlimDX.Direct3D9 tempVolume
Résultat SlimDX.Direct3D9.Volume

volume protected_oe property

Volume abstracted by this buffer
protected Volume,SlimDX.Direct3D9 volume
Résultat SlimDX.Direct3D9.Volume