ngfx::MatrixMultiplyGPUOp

Inherits from ngfx::MatrixMultiplyOp, ngfx::ComputeOp

Protected Classes

Name
struct UboData

Public Functions

Name
MatrixMultiplyGPUOp(GraphicsContext * ctx, MatrixParam src0, MatrixParam src1, MatrixParam dst)
virtual ~MatrixMultiplyGPUOp()
virtual void apply(CommandBuffer * commandBuffer =nullptr, Graphics * graphics =nullptr)
virtual void update(MatrixParam src0, MatrixParam src1)

Protected Functions

Name
void createPipeline()

Public Attributes

Name
std::unique_ptr< Buffer > bUbo
std::unique_ptr< Buffer > bSrc0
std::unique_ptr< Buffer > bSrc1
std::unique_ptr< Buffer > bDst

Protected Attributes

Name
ComputePipeline * computePipeline
uint32_t U_UBO
uint32_t SSBO_SRC0
uint32_t SSBO_SRC1
uint32_t SSBO_DST
MatrixParam dst

Additional inherited members

Public Classes inherited from ngfx::MatrixMultiplyOp

Name
struct MatrixParam

Public Functions inherited from ngfx::MatrixMultiplyOp

Name
MatrixMultiplyOp(GraphicsContext * ctx)
virtual ~MatrixMultiplyOp()

Public Functions inherited from ngfx::ComputeOp

Name
ComputeOp(GraphicsContext * ctx)
virtual ~ComputeOp()

Protected Attributes inherited from ngfx::ComputeOp

Name
GraphicsContext * ctx

Public Functions Documentation

function MatrixMultiplyGPUOp

MatrixMultiplyGPUOp(
    GraphicsContext * ctx,
    MatrixParam src0,
    MatrixParam src1,
    MatrixParam dst
)

function ~MatrixMultiplyGPUOp

virtual ~MatrixMultiplyGPUOp()

function apply

virtual void apply(
    CommandBuffer * commandBuffer =nullptr,
    Graphics * graphics =nullptr
)

Reimplements: ngfx::MatrixMultiplyOp::apply

function update

virtual void update(
    MatrixParam src0,
    MatrixParam src1
)

Reimplements: ngfx::MatrixMultiplyOp::update

Protected Functions Documentation

function createPipeline

void createPipeline()

Public Attributes Documentation

variable bUbo

std::unique_ptr< Buffer > bUbo;

variable bSrc0

std::unique_ptr< Buffer > bSrc0;

variable bSrc1

std::unique_ptr< Buffer > bSrc1;

variable bDst

std::unique_ptr< Buffer > bDst;

Protected Attributes Documentation

variable computePipeline

ComputePipeline * computePipeline;

variable U_UBO

uint32_t U_UBO = 0;

variable SSBO_SRC0

uint32_t SSBO_SRC0 = 1;

variable SSBO_SRC1

uint32_t SSBO_SRC1 = 2;

variable SSBO_DST

uint32_t SSBO_DST = 3;

variable dst

MatrixParam dst;

Updated on 3 April 2021 at 20:21:51 PDT