|
Axmol 3.0.0-89d6d9a
|
Create resources from MTLDevice. More...
#include <GraphicsDeviceMTL.h>
Inherits GraphicsDevice.
| 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 | |
| GraphicsContext * | createGraphicsContext (SurfaceHandle) override |
| New a GraphicsContext object. | |
| Buffer * | createBuffer (size_t size, BufferType type, BufferUsage usage, const void *initial) override |
| New a Buffer object. | |
| Texture * | createTexture (const TextureDesc &descriptor, std::optional< Color > clearColorHint=std::nullopt) override |
| New a Texture object. | |
| Texture * | createTextureFromNativeHandle (const ExternalTextureDesc &descriptor) override |
| Wrap a backend-native texture owned by an external runtime, not auto released. | |
| DepthStencilState * | createDepthStencilState () override |
| New a DepthStencilState object. | |
| GraphicsPipeline * | createGraphicsPipeline () override |
| New a GraphicsPipeline object. | |
| ComputePipeline * | createComputePipeline (Program *program) override |
| Create a compute pipeline from a compute program, not auto released. | |
| Program * | createProgram (Data vsData, Data fsData) override |
| Create an auto released Program. | |
| 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. | |
Create resources from MTLDevice.
|
overridevirtual |
|
overridevirtual |
New a Buffer object.
| size | Specifies the size in bytes of the buffer object's new data store. |
| type | Specifies the target buffer object. The symbolic constant must be BufferType::VERTEX or BufferType::INDEX. |
| usage | Specifies the expected usage pattern of the data store. The symbolic constant must be BufferUsage::STATIC, BufferUsage::DYNAMIC. |
Implements GraphicsDevice.
|
overridevirtual |
New a Texture object.
| descriptor | Specifies texture description. |
Implements GraphicsDevice.
|
overridevirtual |
New a GraphicsPipeline object.
| descriptor | Specifies render pipeline description. |
Implements GraphicsDevice.
|
overridevirtual |
Create a compute pipeline from a compute program, not auto released.
| program | Specifies the compute program. |
Implements GraphicsDevice.
|
overridevirtual |
Create an auto released Program.
| vsData | Specifes this is a vertex shader data. |
| fsData | Specifes this is a fragment shader data. |
Implements GraphicsDevice.
|
inline |
Get a MTLDevice object.
|
overridevirtual |
|
overridevirtual |
Get the full name of the vendor device.
Implements GraphicsDevice.
|
overridevirtual |
|
overridevirtual |
Check if feature supported by Metal.
| feature | Specify feature to be query. |
Implements GraphicsDevice.