正在加载视频...

视频加载失败

I built a post-run recap design studio in SwiftUI Live animated map, 2D and 3D rendering, full customization. Here's how everything works 👇

37,931 次观看 • 4 个月前 •via X (Twitter)

20 条评论

JC Builds 的头像
JC Builds4 个月前

The flyover is one MKMapCamera, assigned every frame. No game engine or shaders were needed. The chase-cam "trick" was aiming the heading at a point ~60m down the route and low-pass smooth it. This gives the effect that it's looking AHEAD of the runner (not at them) so the road fills most of the view. "Turning Speed" in my settings panel is literally just the low-pass responsiveness.

JC Builds 的头像
JC Builds4 个月前

Every style is the same route data, but a different renderer: - 3D: a SceneKit scene, scrubbed offscreen with SCNRenderer - 3D Map: a live MKMapView flythrough - Map: one MKMapSnapshotter shot + per-frame overlay at 60fps Three renderers using only one route and one settings struct.

JC Builds 的头像
JC Builds4 个月前

I found the hard part to be turning live MapKit flythrough into an exportable mp4 MapKit wouldn't render tiles off-screen. So... - pre-fly the whole route once to warm the tile cache - scrub the camera frame by frame - capture with drawHierarchy(afterScreenUpdates: true) - feed CVPixelBuffers into AVAssetWriter

TheIndieBuilder 的头像
TheIndieBuilder4 个月前

This is really cool!

JC Builds 的头像
JC Builds4 个月前

Thank you!

David T Kramaley 的头像
David T Kramaley4 个月前

nice hack for tile caching, how's frame accuracy on longer routes? 👍

JC Builds 的头像
JC Builds4 个月前

As far as I know, it should work for longer routes, but need to give it a shot this weekend!

bro 的头像
bro4 个月前

Looks so cleannn! Is this recording the run or importing from ie: Strava?

JC Builds 的头像
JC Builds4 个月前

This is recording the run (but ports runs to Strava if the user signs in)! I plan to create a way for users to pull their run data from other apps like Strava and Apple Activities, so they can animate old runs!

Nick Venturi 的头像
Nick Venturi4 个月前

now i actually have to start running just to use this

JC Builds 的头像
JC Builds4 个月前

Haha appreciate it, definitely encouragement for me too!

Michael 的头像
Michael4 个月前

Looks rad! Where can we get it?

JC Builds 的头像
JC Builds4 个月前

Thanks! It’s called “carve” on the App Store. New version with animations shipping Monday!

Paul Tweets 的头像
Paul Tweets4 个月前

I was kind of hoping for some Wii Miis jumping up and down to cheer you on

JC Builds 的头像
JC Builds4 个月前

lol I’m working on a character for the runner, didn’t even think about spectators! I like where your heads at!

Parth Antala 的头像
Parth Antala4 个月前

Love it! 😍

JC Builds 的头像
JC Builds4 个月前

Thanks, it was a fun process!

PomoFocus 的头像
PomoFocus4 个月前

Good Job

JC Builds 的头像
JC Builds4 个月前

Thanks!

John Kent 的头像
John Kent4 个月前

nice one! i built a version of this too, never released though

相关视频