Loading [MathJax]/extensions/MathZoom.js

⚠️ This documentation corresponds to the latest development branch of axmol. It might diverge from the official releases.

Axmol Engine 3.0.0-ff0e11a
Loading...
Searching...
No Matches
DriverImpl Class Reference

Create resources from MTLDevice. More...

#include <DriverMTL.h>

Inherits DriverBase.

Public Member Functions inherited from DriverBase
virtual BuffercreateBuffer (size_t size, BufferType type, BufferUsage usage, const void *inital=nullptr)=0
 New a Buffer object, not auto released.
virtual bool hasExtension (std::string_view) const
 Check does device has extension.
virtual std::string dumpExtensions () const
 Dump all extensions to string.
int getMaxTextureSize () const
 Get maximum texture size.
int getMaxAttributes () const
 Get maximum attribute counts.
int getMaxTextureUnits () const
 Get maximum texture unit.
int getMaxSamplesAllowed () const
 Get maximum sampler count.

Setters & Getters

below is driver info

RenderContextcreateRenderContext (void *) override
 New a RenderContext object.
BuffercreateBuffer (std::size_t size, BufferType type, BufferUsage usage, const void *initial) override
 New a Buffer object.
TexturecreateTexture (const TextureDesc &descriptor) override
 New a Texture object.
DepthStencilStatecreateDepthStencilState () override
 New a DepthStencilState object.
RenderPipelinecreateRenderPipeline () override
 New a RenderPipeline object.
ProgramcreateProgram (std::string_view vertexShader, std::string_view fragmentShader) override
 New a Program, not auto release.
id< MTLDevice > getMTLDevice () const
 Get a MTLDevice object.
std::string getVendor () const override
 Get vendor device name.
std::string getRenderer () const override
 Get the full name of the vendor device.
std::string getVersion () const override
 Get featureSet name.
bool checkForFeatureSupported (FeatureType feature) override
 Check if feature supported by Metal.

Additional Inherited Members

Static Public Member Functions inherited from DriverBase
static DriverBasegetInstance ()
 Returns a shared instance of the DriverBase.

Detailed Description

Create resources from MTLDevice.

Member Function Documentation

◆ createRenderContext()

RenderContext * createRenderContext ( void * )
overridevirtual

New a RenderContext object.

Returns
A RenderContext object.

Implements DriverBase.

◆ createBuffer()

Buffer * createBuffer ( std::size_t size,
BufferType type,
BufferUsage usage,
const void * initial )
override

New a Buffer object.

Parameters
sizeSpecifies the size in bytes of the buffer object's new data store.
typeSpecifies the target buffer object. The symbolic constant must be BufferType::VERTEX or BufferType::INDEX.
usageSpecifies the expected usage pattern of the data store. The symbolic constant must be BufferUsage::STATIC, BufferUsage::DYNAMIC.
Returns
A Buffer object.

◆ createTexture()

Texture * createTexture ( const TextureDesc & descriptor)
overridevirtual

New a Texture object.

Parameters
descriptorSpecifies texture description.
Returns
A Texture object.

Implements DriverBase.

◆ createRenderPipeline()

RenderPipeline * createRenderPipeline ( )
overridevirtual

New a RenderPipeline object.

Parameters
descriptorSpecifies render pipeline description.
Returns
A RenderPipeline object.

Implements DriverBase.

◆ createProgram()

Program * createProgram ( std::string_view vertexShader,
std::string_view fragmentShader )
overridevirtual

New a Program, not auto release.

Parameters
vertexShaderSpecifes this is a vertex shader source.
fragmentShaderSpecifes this is a fragment shader source.
Returns
A Program instance.

Implements DriverBase.

◆ getMTLDevice()

id< MTLDevice > getMTLDevice ( ) const
inline

Get a MTLDevice object.

Returns
A MTLDevice object.

◆ getVendor()

std::string getVendor ( ) const
overridevirtual

Get vendor device name.

Returns
Vendor device name.

Implements DriverBase.

◆ getRenderer()

std::string getRenderer ( ) const
overridevirtual

Get the full name of the vendor device.

Returns
The full name of the vendor device.

Implements DriverBase.

◆ getVersion()

std::string getVersion ( ) const
overridevirtual

Get featureSet name.

Returns
FeatureSet name.

Implements DriverBase.

◆ checkForFeatureSupported()

bool checkForFeatureSupported ( FeatureType feature)
overridevirtual

Check if feature supported by Metal.

Parameters
featureSpecify feature to be query.
Returns
true if the feature is supported, false otherwise.

Implements DriverBase.


The documentation for this class was generated from the following file:
  • DriverMTL.h