【问题标题】:Does AMD Mantle API already available?AMD Mantle API 是否已经可用?
【发布时间】:2014-01-07 07:35:48
【问题描述】:

AMD Mantle API 是否已经可供开发人员使用?我们在哪里可以得到它?不能再等了。

阅读链接:

【问题讨论】:

    标签: mantle


    【解决方案1】:

    目前没有可用的官方 Mantle SDK,但有一个测试版驱动程序(适用于 Windows 的 AMD Catalyst™ 14.1 测试版驱动程序)。 Beta 驱动程序包含一个 mantle64.dll 和一个 mantleaxl64.dll 库。 Dependency walker 解开了以下函数定义:

    ******** mantle64.dll ******** 
    IcdDbgMessage 
    DllMain 
    grAllocMemory 
    grAttachImageViewDescriptors 
    grAttachMemoryViewDescriptors 
    grAttachNestedDescriptors 
    grAttachSamplerDescriptors 
    grBeginCommandBuffer 
    grBeginDescriptorSetUpdate 
    grBindObjectMemory 
    grClearDescriptorSetSlots 
    grCmdBeginQuery 
    grCmdBindDescriptorSet 
    grCmdBindDynamicMemoryView 
    grCmdBindIndexData 
    grCmdBindPipeline 
    grCmdBindStateObject 
    grCmdBindTargets 
    grCmdClearColorImage 
    grCmdClearColorImageRaw 
    grCmdClearDepthStencil 
    grCmdCloneImageData 
    grCmdCopyImage 
    grCmdCopyImageToMemory 
    grCmdCopyMemory 
    grCmdCopyMemoryToImage 
    grCmdDbgMarkerBegin 
    grCmdDbgMarkerEnd 
    grCmdDispatch 
    grCmdDispatchIndirect 
    grCmdDraw 
    grCmdDrawIndexed 
    grCmdDrawIndexedIndirect 
    grCmdDrawIndirect 
    grCmdEndQuery 
    grCmdFillMemory 
    grCmdInitAtomicCounters 
    grCmdLoadAtomicCounters 
    grCmdMemoryAtomic 
    grCmdPrepareImages 
    grCmdPrepareMemoryRegions 
    grCmdResetEvent 
    grCmdResetQueryPool 
    grCmdResolveImage 
    grCmdSaveAtomicCounters 
    grCmdSetEvent 
    grCmdUpdateMemory 
    grCmdWriteTimestamp 
    grCreateColorBlendState 
    grCreateColorTargetView 
    grCreateCommandBuffer 
    grCreateComputePipeline 
    grCreateDepthStencilState 
    grCreateDepthStencilView 
    grCreateDescriptorSet 
    grCreateDevice 
    grCreateEvent 
    grCreateFence 
    grCreateGraphicsPipeline 
    grCreateImage 
    grCreateImageView 
    grCreateMsaaState 
    grCreateQueryPool 
    grCreateQueueSemaphore 
    grCreateRasterState 
    grCreateSampler 
    grCreateShader 
    grCreateViewportState 
    grDbgRegisterMsgCallback 
    grDbgSetDeviceOption 
    grDbgSetGlobalOption 
    grDbgSetMessageFilter 
    grDbgSetObjectTag 
    grDbgSetValidationLevel 
    grDbgUnregisterMsgCallback 
    grDestroyDevice 
    grDestroyObject 
    grDeviceWaitIdle 
    grEndCommandBuffer 
    grEndDescriptorSetUpdate 
    grFreeMemory 
    grGetDeviceQueue 
    grGetEventStatus 
    grGetExtensionSupport 
    grGetFenceStatus 
    grGetFormatInfo 
    grGetGpuInfo 
    grGetImageSubresourceInfo 
    grGetMemoryHeapCount 
    grGetMemoryHeapInfo 
    grGetMultiGpuCompatibility 
    grGetObjectInfo 
    grGetQueryPoolResults 
    grInitAndEnumerateGpus 
    grLoadPipeline 
    grMapMemory 
    grOpenPeerImage 
    grOpenPeerMemory 
    grOpenSharedMemory 
    grOpenSharedQueueSemaphore 
    grPinSystemMemory 
    grQueueSetGlobalMemReferences 
    grQueueSubmit 
    grQueueWaitIdle 
    grRemapVirtualMemoryPages 
    grResetCommandBuffer 
    grResetEvent 
    grSetEvent 
    grSetMemoryPriority 
    grSignalQueueSemaphore 
    grStorePipeline 
    grUnmapMemory 
    grWaitForFences 
    grWaitQueueSemaphore 
    grWsiWinCreatePresentableImage 
    grWsiWinGetDisplayModeList 
    grWsiWinGetDisplays 
    grWsiWinGetScanLine 
    grWsiWinQueuePresent 
    grWsiWinReleaseFullscreenOwnership 
    grWsiWinSetGammaRamp 
    grWsiWinSetMaxQueuedFrames 
    grWsiWinTakeFullscreenOwnership 
    grWsiWinWaitForVerticalBlank 
    
    ******** mantleaxl64.dll ******** 
    DllMain 
    grAddPerfExperimentCounter 
    grAddPerfExperimentTrace 
    grCmdBeginPerfExperiment 
    grCmdBindBorderColorPalette 
    grCmdCopyOcclusionData 
    grCmdElse 
    grCmdEndIf 
    grCmdEndPerfExperiment 
    grCmdEndWhile 
    grCmdIf 
    grCmdInsertTraceMarker 
    grCmdResetMemoryPredication 
    grCmdResetOcclusionPredication 
    grCmdSetMemoryPredication 
    grCmdSetOcclusionPredication 
    grCmdWhile 
    grCreateAdvancedMsaaState 
    grCreateBorderColorPalette 
    grCreateFmaskImageView 
    grCreatePerfExperiment 
    grFinalizePerfExperiment 
    grGetExtensionLibraryVersion 
    grQueueDelay 
    grUpdateBorderColorPalette
    

    一些假设: 要初始化 Mantle,需要调用 grCreateDevice。使用渲染管道时,还需要调用 grCreateGraphicsPipeline。关闭应用程序时,需要通过 grDestroyDevice 销毁设备。图形管线对象需要通过 grDestroyObject 销毁。

    【讨论】:

      猜你喜欢
      • 2011-09-24
      • 1970-01-01
      • 1970-01-01
      • 2010-10-22
      • 2012-07-10
      • 1970-01-01
      • 1970-01-01
      • 2020-07-09
      • 2014-08-08
      相关资源
      最近更新 更多