Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group
Learn more about our biggest redesign in 10 years — click here

iOS & Swift Tutorials 

The highest quality iOS and Swift tutorials on the web - over 3,000 and counting!

Metal by Tutorials: First 8 Chapters Available Now!

The first 8 chapters of our book Metal by Tutorials are now available! And if you’re wondering if the Metal updates announced at WWDC will be covered, then we have some news on that too!

We’re excited to announce that the first 8 chapters of our book, Metal by Tutorials, are now available!

This update adds four new chapters to the book, which is in early release and available on our online store:

  • Chapter 5, Lighting Fundamentals: Lighting and beyond! In this chapter you’ll learn basic lighting; but more importantly, you’ll learn how to craft data in shaders, and be on the path to mastering shader artistry. Lighting, shadows, non-photorealistic rendering – these are all techniques that start with the methods that you’ll learn in this chapter.
  • Chapter 6, Textures and Samplers: Now that you have light in your scene, the next step is to add color to it. In this chapter you’ll learn about UV coordinates, texturing a model, samplers, mipmaps, and the asset catalog.
  • Chapter 7, Maps and Materials: This is the final chapter on how to render still models. In the previous chapter, you rendered a simple house with a single color texture imported using Model I/O. In this chapter you’ll find out how to use material groups to describe a surface, and how to design textures for micro detail.
  • Learn about lighting, maps and materals, textures and more in Metal!

  • Chapter 8, Character Animation: Rendering still models is a great achievement, but rendering models that move is even more fun. So far your models have been simple inanimate props. You’ll now render characters with body movement and give them personality. In this chapter, you’ll start off by bouncing a ball, and then move on to rendering a friendly skeleton.

WWDC 2018 Metal Changes

With OpenGL and OpenCL now deprecated, WWDC 2018 brings Metal to the forefront of graphics and compute on macOS, iOS and tvOS!

We’re tremendously excited about the new features in Metal 2, and, of course, we will be covering these in upcoming editions of our book:

  • Ray tracing using Metal Performance Shaders: Ray tracing is far more accurate than rasterization, and real-time ray tracing is the ultimate goal of rendering. Ray tracing is traditionally performed on the CPU, but using Metal Performance Shaders, you’ll be able parallelize it on the GPU. If you have multiple external GPUs, you’ll be able to achieve phenomenal performance.
  • GPU-Driven Command Encoding: You can now encode your commands on the GPU rather than the CPU, using a compute shader.
  • New GPU debugging tools: These look simply magnificent! The dependency viewer visualizes all your render passes and combines them into a beautifully rendered flowchart. The interactive shader debugger lets you examine your pixels as you step through your shader functions and change your shader output on the fly.

    Vertices aren’t forgotten – you can inspect them with the new geometry viewer. This has a free-fly camera so that you can investigate issues outside your camera frame. If you have an iPhone X or newer, you’ll be able to use the A11 shader profiler to see how long each statement in your shaders takes to execute. Apple have really worked hard on these and other GPU profiling tools!

And as always, you’ll receive free updates for this book when you purchase the early-access version!

Where to Go From Here?

Here’s how you can get your hands on a copy of Metal by Tutorials:

The Metal by Tutorials book team and I hope you enjoy this second early-access edition of the book!

Contributors

Comments

Create your free learning account today!

With a free raywenderlich.com account, you can download source code from our tutorials, track your progress, personalize your learner profile, participate in open discussion forums and more!