ChartsOrg / ChartsOrg/Charts

Rendering with Core Animation

Open
#3,131 6 comments 0 reactions 0 assignees View on GitHub
discussion idea
Dominant language
Swift
Stars
28k
Forks
6k
PR merge metrics
No merged PRs in 30d

Description

@petester42 @liuxuan30 @danielgindi

Continuing on #29, why have we not considered using Core Animation instead of Core Graphics? Core Animation is what virtually all of iOS's UI is using and was recently rewritten with a Metal backing (iOS 9/macOS 10.11 I believe).

In my experience it has been hard to match the performance of Core Animation with Core Graphics code, which is probably why Core Graphics hasn't been mentioned at WWDC in many years. Given CA heavily relies on the GPU instead of the CPU AND we are not taxing the GPU, any CPU bottlenecks should be gone, performance should improve, and energy consumption should be reduced.

I understand this would be a very big undertaking (one I'd be happy to participate in), but it seems like it would be able to provide significant benefits for consumers. Given Apple's focus on Core Animation, it is likely that it will allow us keep up with modern best practices more easily.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the rendering approach discussed in issue #29 and the current chart-rendering architecture. Evaluate whether replacing Core Graphics with Core Animation is feasible, including performance and energy trade-offs; done would require a concrete, agreed scope rather than this broad proposal.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, swift
Domain
mobile-dev, performance
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.