Search Results for

    Show / Hide Table of Contents

    Class GPUBufferDX12

    GPU buffer for DirectX 12 backend.

    Inheritance
    Object
    ScriptingObject
    GPUResource
    GPUBuffer
    GPUResourceBase
    GPUResourceDX12
    GPUBufferDX12
    Inherited Members
    GPUBuffer::_desc
    GPUResourceBase::_device
    ScriptingObject::_gcHandle
    ScriptingObject::_id
    GPUBuffer::_isLocked
    GPUResource::_memoryUsage
    GPUResource::_nameCapacity
    GPUResource::_namePtr
    GPUResource::_nameSize
    ResourceOwnerDX12::_resource
    ResourceOwnerDX12::_subresourcesCount
    ScriptingObject::_type
    ScriptingObject::CanCast(const ScriptingTypeHandle& from, const ScriptingTypeHandle& to)
    ScriptingObject::CanCast(const MClass* from, const MClass* to)
    ScriptingObject::Cast(ScriptingObject* obj)
    ScriptingObject::ChangeID(const Guid& newId)
    ScriptingObject::CreateManaged()
    ScriptingObject::CreateManagedInternal()
    ScriptingObject::Deleted
    Object::DeleteObject(float timeToLive = 0.0f, bool useGameTime=false)
    Object::DeleteObjectNow()
    ScriptingObject::DestroyManaged()
    GPUBuffer::DownloadData(BytesContainer& result)
    GPUBuffer::DownloadDataAsync(BytesContainer& result)
    Object::Flags
    ScriptingObject::FromInterface(void* interfaceObj, const ScriptingTypeHandle& interfaceType)
    ScriptingObject::FromInterface(T* interfaceObj)
    ScriptingObject::GetClass()
    GPUBuffer::GetData(BytesContainer& output)
    GPUBuffer::GetDescription()
    GPUResourceBase::GetDevice()
    GPUBuffer::GetElementsCount()
    GPUBuffer::GetFlags()
    GPUBuffer::GetFormat()
    ScriptingObject::GetID()
    ScriptingObject::GetManagedInstance()
    GPUResource::GetMemoryUsage()
    GPUResource::GetName()
    ScriptingObject::GetOrCreateManagedInstance()
    ResourceOwnerDX12::GetResource()
    GPUBuffer::GetResourceType()
    GPUBuffer::GetSize()
    GPUBuffer::GetStride()
    ResourceOwnerDX12::GetSubresourcesCount()
    ScriptingObject::GetType()
    ScriptingObject::GetTypeHandle()
    GPUBuffer::GetVertexLayout()
    GPUBuffer::GPUBuffer()
    GPUResource::GPUResource()
    GPUResource::GPUResource(const SpawnParams& params)
    GPUResourceBase::GPUResourceBase(DeviceType* device, const StringView& name)
    GPUResourceDX12::GPUResourceDX12(GPUDeviceDX12* device, const StringView& name)
    ScriptingObject::HasManagedInstance()
    GPUBuffer::Init(const GPUBufferDescription& desc)
    ResourceOwnerDX12::initResource(ID3D12Resource* resource, const D3D12_RESOURCE_STATES initialState, const D3D12_RESOURCE_DESC& desc, bool usePerSubresourceTracking=false)
    ResourceOwnerDX12::initResource(ID3D12Resource* resource, const D3D12_RESOURCE_STATES initialState, const uint32 subresourceCount, bool usePerSubresourceTracking=false)
    ResourceOwnerDX12::initResource(const D3D12_RESOURCE_STATES initialState, const uint32 subresourceCount, bool usePerSubresourceTracking=false)
    ScriptingObject::Is(const ScriptingTypeHandle& type)
    ScriptingObject::Is(const MClass* type)
    ScriptingObject::Is()
    GPUBuffer::IsAllocated()
    GPUBuffer::IsDynamic()
    ScriptingObject::IsRegistered()
    GPUBuffer::IsShaderResource()
    GPUBuffer::IsStaging()
    GPUBuffer::IsUnorderedAccess()
    GPUResource::LastRenderTime
    ScriptingObject::NewObject(const ScriptingTypeHandle& typeHandle)
    ScriptingObject::NewObject()
    GPUResource::OnDeleteObject()
    GPUResourceBase::OnDeviceDispose()
    ScriptingObject::OnManagedInstanceDeleted()
    ResourceOwnerDX12::OnRelease
    ScriptingObject::OnScriptingDispose()
    ScriptingObject::RegisterObject()
    GPUResource::ReleaseGPU()
    ResourceOwnerDX12::releaseResource(uint32 safeFrameCount=DX12_RESOURCE_DELETE_SAFE_FRAMES_COUNT)
    GPUResource::Releasing
    GPUBuffer::Resize(uint32 newSize)
    ResourceOwnerDX12::ResourceOwnerDX12()
    ScriptingObject::ScriptingObject(const SpawnParams& params)
    GPUBuffer::SetData(const void* data, uint32 size)
    ScriptingObject::SetManagedInstance(MObject* instance)
    GPUResource::SetName(const StringView& name)
    GPUBufferDX12
    ResourceOwnerDX12::State
    ScriptingObject::ToInterface(ScriptingObject* obj, const ScriptingTypeHandle& interfaceType)
    ScriptingObject::ToInterface(ScriptingObject* obj)
    ScriptingObject::ToManaged(const ScriptingObject* obj)
    ScriptingObject::ToNative(MObject* obj)
    GPUBuffer::ToStagingReadback()
    GPUBuffer::ToStagingUpload()
    GPUBuffer::ToString()
    ScriptingObject::UnregisterObject()
    GPUResource::~GPUResource()
    GPUResourceBase::~GPUResourceBase()
    Object::~Object()
    ResourceOwnerDX12::~ResourceOwnerDX12()
    ScriptingObject::~ScriptingObject()
    Assembly: FlaxEngine.dll
    File: Engine/GraphicsDevice/DirectX/DX12/GPUBufferDX12.h
    Syntax
    public class GPUBufferDX12 : public GPUResourceDX12, public ResourceOwnerDX12

    Constructors

    GPUBufferDX12(GPUDeviceDX12* device, const StringView& name)

    Initializes a new instance of the GPUBufferDX12 class.

    Declaration
    public GPUBufferDX12(GPUDeviceDX12* device, const StringView& name)
    Parameters
    GPUDeviceDX12 device

    The device.

    StringView name

    The name.

    Methods

    AsGPUResource()

    Gets resource owner object as a GPUResource type or returns null if cannot perform cast.

    Declaration
    public virtual GPUResource* AsGPUResource() const override
    Returns
    GPUResource

    Overrides
    ResourceOwnerDX12::AsGPUResource()

    GetCounter()

    Gets the counter resource.

    Declaration
    public GPUBufferDX12* GetCounter() const
    Returns
    GPUBufferDX12

    GetIBView(D3D12_INDEX_BUFFER_VIEW& view)

    Gets index buffer view descriptor. Valid only for the index buffers.

    Declaration
    public void GetIBView(D3D12_INDEX_BUFFER_VIEW& view) const
    Parameters
    D3D12_INDEX_BUFFER_VIEW view

    Returns
    void

    GetLocation()

    Gets buffer location in a GPU memory.

    Declaration
    public D3D12_GPU_VIRTUAL_ADDRESS GetLocation() const
    Returns
    D3D12_GPU_VIRTUAL_ADDRESS

    GetSizeInBytes()

    Gets buffer size in a GPU memory in bytes.

    Declaration
    public uint64 GetSizeInBytes() const
    Returns
    uint64

    GetVBView(D3D12_VERTEX_BUFFER_VIEW& view)

    Gets vertex buffer view descriptor. Valid only for the vertex buffers.

    Declaration
    public void GetVBView(D3D12_VERTEX_BUFFER_VIEW& view) const
    Parameters
    D3D12_VERTEX_BUFFER_VIEW view

    Returns
    void

    Map(GPUResourceMapMode mode)

    Gets a CPU pointer to the resource by mapping its contents. Denies the GPU access to that resource.

    Always call Unmap if the returned pointer is valid to release resources.

    Declaration
    public virtual void* Map(GPUResourceMapMode mode) override
    Parameters
    GPUResourceMapMode mode

    The map operation mode.

    Returns
    void

    The pointer of the mapped CPU buffer with resource data or null if failed.

    Overrides
    GPUBuffer::Map(GPUResourceMapMode mode)

    OnInit()

    Declaration
    protected virtual bool OnInit() override
    Returns
    bool

    Overrides
    GPUBuffer::OnInit()

    OnReleaseGPU()

    Releases GPU resource data (implementation).

    Declaration
    protected virtual void OnReleaseGPU() override
    Overrides
    GPUBuffer::OnReleaseGPU()

    Unmap()

    Invalidates the mapped pointer to a resource and restores the GPU's access to that resource.

    Declaration
    public virtual void Unmap() override
    Overrides
    GPUBuffer::Unmap()

    View()

    Gets the view for the whole buffer.

    Declaration
    public virtual GPUBufferView* View() const override
    Returns
    GPUBufferView

    Overrides
    GPUBuffer::View()

    See Also

    GPUResourceDX12
    • Improve this Doc
    • View Source
    In This Article
    Back to top Copyright © 2012-2024 Wojciech Figat