28 #ifndef __D3D11PIXELBUFFER_H__ 29 #define __D3D11PIXELBUFFER_H__ 35 struct ID3D11Resource;
76 void _map(ID3D11Resource *res, D3D11_MAP flags,
PixelBox & box);
79 void _unmap(ID3D11Resource *res);
107 if (mSliceTRT.size() > zoffset)
109 mSliceTRT[zoffset] = 0;
void fromD3DLock(PixelBox &rval, const DXGI_MAPPED_RECT &lrect)
Util functions to convert a D3D locked box to a pixel box.
int8 * mDataForStaticUsageLock
size_t getSubresourceIndex() const
Specialisation of HardwareBuffer for a pixel buffer.
ID3D11Resource * mStagingBuffer
PixelBox lockImpl(const Image::Box lockBox, LockOptions options)
Lock a box.
D3D11Texture * mParentTexture
PixelFormat
The pixel format used for images, textures, and render surfaces.
~D3D11HardwarePixelBuffer()
Structure used to define a box in a 3-D integer space.
void _unmapstagingbuffer(bool copyback=true)
void unlockImpl(void)
Unlock a box.
void _map(ID3D11Resource *res, D3D11_MAP flags, PixelBox &box)
void * _mapstaticbuffer(PixelBox lock)
This class represents a RenderTarget that renders to a Texture.
void createStagingBuffer()
Usage
Enums describing buffer usage; not mutually exclusive.
LockOptions mCurrentLockOptions
Shared pointer implementation used to share pixel buffers.
void blit(const HardwarePixelBufferSharedPtr &src, const Image::Box &srcBox, const Image::Box &dstBox)
Copies a box from another PixelBuffer to a region of the this PixelBuffer.
D3D11Device & mDevice
D3DDevice pointer.
LockOptions
Locking options.
D3D11HardwarePixelBuffer(D3D11Texture *parentTexture, D3D11Device &device, size_t subresourceIndex, size_t width, size_t height, size_t depth, size_t face, PixelFormat format, HardwareBuffer::Usage usage)
RenderTexture * getRenderTarget(size_t zoffset)
Get rendertarget for z slice.
void blitToMemory(const Image::Box &srcBox, const PixelBox &dst)
Copies a region of this pixelbuffer to normal memory.
D3D11_BOX OgreImageBoxToDx11Box(const Image::Box &inBox) const
This source file is part of OGRE (Object-oriented Graphics Rendering Engine) For the latest info...
vector< RenderTexture * >::type SliceTRT
Render targets.
void * _mapstagingbuffer(D3D11_MAP flags)
void blitFromMemory(const PixelBox &src, const Image::Box &dstBox)
Copies a region from normal memory to a region of this pixelbuffer.
A primitive describing a volume (3D), image (2D) or line (1D) of pixels in memory.
void _unmap(ID3D11Resource *res)
void _genMipmaps()
Internal function to update mipmaps on update of level 0.
virtual const PixelBox & lock(const Image::Box &lockBox, LockOptions options)
Lock the buffer for (potentially) reading / writing.
void _unmapstaticbuffer()
D3D11Texture * getParentTexture() const
virtual void _clearSliceRTT(size_t zoffset)
Notify TextureBuffer of destruction of render target.