Skip to content
44: Episode 44 - Sudo OCD episode artwork

Oct 10, 2014 1 hr 3 min

44: Episode 44 - Sudo OCD

from iOhYes Hosted by Darryl Thomas & John Sextro

Tweet Shoutouts NONE Send us your shoutouts: @iohyespodcast The Discussion Quick revisit of Widgets and Extensions What “Today view” widgets are you using? Darryl - Transit, Pedometer++. I wish I could move the Tomorrow Summary above 3rd party widgets John - Paste+ Jason - Omnifocus, Yahoo News Digest, Duolingo Chad - e*trade What extensions are you using? Darryl - ¯\_(?)_/¯ Jason - Camera+ photo editing, 1Password Safari extension Chad - 1Password, Transmit What do you still want to see exist? Jason - VSCO CAM photo editing, more 3rd-party 1Password integration Chad - Better YouTube support Metal - Low-overhead GPU access for iOS 8 What is Metal? Modern, Thin API for GPU programming (graphics and simd compute) Designed for A7 and newer SoCs (iPhone 5S and newer) Shader/kernel language based on C++11 Who should/will use Metal? In-house/roll-your-own 3D engines/frameworks For most folks, using Metal or OpenGL directly is overkill (but fun!) Alternative, higher-level APIs include SceneKit (3D) and SpriteKit (2D), which provide much more than just graphics rendering support, including graph management Third-party 3D engines/frameworks Compute-heavy applications and filters with highly parallelizable work DSP Image filters Protein folding? Note: Swift currently doesn’t support importing C unions or SIMD vector types. Chris Lattner acknowledged this, citing feature prioritization (so it’s reasonable to be hopeful it’s coming in the not-so-distant future). In the meantime, if you need to work with SIMD, you may want to stick with Objective-C when using Metal. Practical differences between Metal and OpenGL ES In Metal, command buffers are exposed, giving control over when the commands are sent to the GPU to the application and putting the onus of asynchronous framing on the application Most state is stored in immutable state objects that are created at setup, not in each draw cycle, allowing for quick state change that doesn’t require expensive recompilation of shaders/validation Streamlined API. OpenGL provides many ways to do (effectively) the same task largely due to its evolution. Metal sheds many of the legacy techniques. Metal provides direct access to the A7’s shared memory. Thread safety/synchronization is the responsibility of the app. Additional resources AnandTech : Some Thoughts on Apple’s Metal API Rendering Pipeline: What’s the Big Deal with Apple’s Metal API? Unity Blog: Metal, A New Graphics API for iOS 8 Obligatory Ray Wenderlich link: iOS 8 Metal Tutorial with Swift Metal By Example Open-Source Project of the Week ScrimpyCat's Metal Examples There are surprisingly few open source projects using Metal so far, but here’s a repo with some sample code illustrating the use of basic Metal APIs and shaders. git clone https://github.com/ScrimpyCat/Metal-Examples.git Picks John Follow @johnsextro Razer Tartarus a game controller repurposed (note: I’m actually using an older version called the Nostromo N52) Darryl Follow @dh_thomas Mike Ash: Swift and C Swift provides rich facilities for OO and functional programming, but it also allows extensive bridging to C APIs. Learn all about how to call C functions, work with "unsafe" pointers, manage memory, and more. Chad Follow @jazzychad AWS iOS SDK AWS Mobile Analytics “100 million free events per month” “$1.00 per million events per month” Jason Follow @jak UX Companion iOS app A glossary of user experience terms, with links on how to apply and learn more about each topic. Basically, a phrase book for speaking to designers that you work with. Alternative show title suggestions You are ruining his segue The patron saint of brown-nosers Sudo OCD Drunk Darryl Are you learning English? Emoticon for shrugging shoulders Too old a man Long story short Boy have they Sure Are you using the knob at all? That’s a lot of letters

Episode details come from the podcast's RSS feed.

Embed this episode

Ready to play

44: Episode 44 - Sudo OCD

0:00 1:03:46

No transcript yet.

Requests help us decide what to transcribe next.

Frequently asked questions

How long is this episode of iOhYes?

This episode is 1 hour and 3 minutes long.

When was this iOhYes episode published?

This episode was published on October 10, 2014.

Can I download this iOhYes episode?

Yes. Use the download control on the episode player to save the publisher-provided media file.