For those interested in learning more about programming for AMD’s Mantle API, AMD sends word today that the public API reference documentation is now available. So pull up a chair, get comfortable, and find large quantities of caffeine as this isn’t the sort of material for a quick read – the PDF weighs in at a hefty 435 pages. That’s pretty much par for the course when it comes to API guides though – the Direct3D 11 API is almost certainly just as long (though I couldn’t seem to find a comparable PDF).

And it’s not just about Mantle, as earlier this month it was announced that the next generation OpenGL, Vulkan, will build off of AMD’s work with Mantle. The Vulkan API hasn’t been finalized yet, but the Mantle API should serve as a good primer if you’re interested. With the full API and reference guide now publicly available, we should hopefully see more games and applications leverage Mantle going forward.

Source: AMD

Comments Locked

16 Comments

View All Comments

  • ddriver - Wednesday, March 18, 2015 - link

    Such elegance, such beauty:

    CreateAndBindDescriptorSetMemory(device, descSet);
    GR_IMAGE_VIEW_ATTACH_INFO imgViewAttach = {};
    imgViewAttach.state = GR_IMAGE_STATE_COMPUTE_SHADER_READ_WRITE;

    Congrats, they've sunk as low as MS with their C APIs...
  • gdansk - Wednesday, March 18, 2015 - link

    I take it you wanted some cryptic and short posix-style names?

    Most game development is done in an IDE. Most of which will gladly complete those names for you. Heck, even my vim setup (with clang_complete) will complete C code well enough. At least you can't fault them for having cryptic names.
  • Zizy - Thursday, March 19, 2015 - link

    Yeah, this is pretty bad, mixing ancient C way of CAPS_AND_UNDERSCORES and sensible modern camelCase. Can't they kill that abomination, it is a freaking new API, not DX or OGL with tons of legacy junk.

    I just hope you don't want the return of GISCSRW, which would stand for GR_IMAGE_STATE_COMPUTE_SHADER_READ_WRITE. Sensible IDE would enable toggling between short and long versions anyway, but API should always stick to meaningful long names.
  • ruggia - Thursday, March 19, 2015 - link

    I have no clue what's the current standard in industry is, but isn't it pretty common to use ALL CAPS for shared/global constant variables while using CamelCase and lower case for object/variable/function names?
  • basroil - Monday, March 30, 2015 - link

    In MS stuff, cap+underscore means some sort of macro, enum, or other fixed amount, while camel case/ camel case with underscore are variables and functions. Quite easy to read not only the purpose but possible pitfalls as well
  • sheh - Thursday, March 19, 2015 - link

    I vote for CreateBindDsctorSetMem, etc.
  • mdriftmeyer - Thursday, March 19, 2015 - link

    I prefer self-documenting methods names, ala Objective-C. You want short-hand, take a course in it.
  • BlueBlazer - Wednesday, March 18, 2015 - link

    Waste of internet bandwidth downloading the file. Mantle is pretty much dead in the eyes of developers, with DirectX 12 coming up.
  • testbug00 - Thursday, March 19, 2015 - link

    You mean Vulkan, right? Given it gets a clean low level API... Well, it should in theory run with few tweaks on the PS4/Xbox One (given Mantle appears to be a large part of it's base) as well as Linux, OSX and Windows.

    Major code once, minor revisions for every platform. My guess is DirectX 12 will be aimed only at Windows and the Xbox One. Given the PS4 has between 1.5-2x the sales of Xbox One (depends on who you ask, I believe it is closer to 1.5x) well, the choice which to use should be simple.

    Granted, I really just want Blizzard to release all their games on Linux with good multithreading. So, I won't get what I want anytime soon.
  • JonnyDough - Friday, March 27, 2015 - link

    I don't care what Blizzard does. In my opinion StarCraft 2 was the last great game. :)

Log in

Don't have an account? Sign up now