mirror of https://github.com/axmolengine/axmol.git
49 lines
1.8 KiB
Objective-C
49 lines
1.8 KiB
Objective-C
|
|
#ifndef __EFFEKSEERRENDERER_METAL_RENDERER_H__
|
|
#define __EFFEKSEERRENDERER_METAL_RENDERER_H__
|
|
|
|
#include "../../EffekseerRendererCommon/EffekseerRenderer.Renderer.h"
|
|
#include "EffekseerRendererMetal.Base.h"
|
|
#include <functional>
|
|
|
|
#import <MetalKit/MetalKit.h>
|
|
|
|
@class MTLRenderPassDescriptor;
|
|
@protocol MTLDevice, MTLCommandBuffer, MTLRenderCommandEncoder, MTLTexture;
|
|
|
|
namespace EffekseerRendererMetal
|
|
{
|
|
|
|
::Effekseer::MaterialLoaderRef CreateMaterialLoader(::Effekseer::Backend::GraphicsDeviceRef graphicsDevice, ::Effekseer::FileInterfaceRef fileInterface = NULL);
|
|
|
|
::Effekseer::Backend::GraphicsDeviceRef CreateDevice();
|
|
|
|
::EffekseerRenderer::RendererRef Create(
|
|
::Effekseer::Backend::GraphicsDeviceRef graphicsDevice,
|
|
int32_t squareMaxCount,
|
|
MTLPixelFormat renderTargetFormat,
|
|
MTLPixelFormat depthStencilFormat,
|
|
bool isReversedDepth);
|
|
|
|
/**
|
|
@brief Create an instance
|
|
@param device metal device
|
|
@param isReversedDepth is depth reversed
|
|
@param squareMaxCount the number of maximum sprites
|
|
@return instance
|
|
*/
|
|
::EffekseerRenderer::RendererRef Create(int32_t squareMaxCount,
|
|
MTLPixelFormat renderTargetFormat,
|
|
MTLPixelFormat depthStencilFormat,
|
|
bool isReversedDepth);
|
|
|
|
Effekseer::Backend::TextureRef CreateTexture(::Effekseer::Backend::GraphicsDeviceRef graphicsDevice, id<MTLTexture> texture);
|
|
|
|
void BeginCommandList(Effekseer::RefPtr<EffekseerRenderer::CommandList> commandList, id<MTLRenderCommandEncoder> encoder);
|
|
|
|
void EndCommandList(Effekseer::RefPtr<EffekseerRenderer::CommandList> commandList);
|
|
|
|
} // namespace EffekseerRendererMetal
|
|
|
|
#endif
|