SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
From Flash to Canvas  a penchant for black holes




        @flashpatric
THIS PRESENTATION
            Canvas 2D context
                  History
                   Today
How a display list will make your life easier
   Tools for a better Canvas experience
                   Demo
WHAT’S CANVAS?!
  <canvas id=”canvas”></canvas>

 A part of the HTML5 standard
        Dynamic bitmap
 API’s for drawing and using text
ADVANTAGES
                      From a Flash developers point of view
Low learning curve                       Powerful along with other new functions
Very good performance in new browsers        Semantics
                                             Offline & Storage
Image manipulation down to pixel level
                                             Device access
Lots of proven JS-libraries                  Connectivity
Pretty high market penetration               Audio & video
                                             3D graphics & effects
3D context – WebGL
                                             Performance & Integration
GPU acceleration                             CSS3
HISTORY
                                  Flash vs HTML
                            FutureSplash    1995   HTML 3.2 draft, Internet Explorer
                           Macromedia       1996   I Learned HTML
                                            1998   HTML 4.01 draft
My first Flash applikation, Actionscript 1   2000
                          Actionscript 2    2003   Firefox
                                            2004   WHATWG
                                  Adobe     2005
                          Actionscript 3    2006
                                            2007   HTMLWG, death of XHTML
                             Adobe AIR      2008   Google Chrome
        Mobile Flash Player, Scepticism     2009   HTML5
          Adobe AIR for Android & iOS       2010   IE9
Adobe AIR for iOS, Mobile Flash Player      2011   Shifting focus, comunication fail
TODAY
                   HTML5 Canvas 2D market penetration

Canvas basic support                          Text API for Canvas
71.17%                                        70.56%
Opera Mini has partial support for Canvas     Opera Mini is missing support for Text API


CSS Canvas Drawing                            Full Screen API
35.56% (Chrome, Safari, iOS Safari, Android   0%
browser)                                      Partial support in Firefox, Chrome och Safari
TODAY
                             Canvas 2D Context in Internet Explorer

IE8 and below is missing support for Canvas                      <!DOCTYPE html>
                                                                 <html>
Polyfills can be used for VML in IE7 and IE8                      <head>
                                                                     <meta charset="utf-8">
Explorercanvas.js                                                    <title>Dive Into HTML5 Canvas</title>
                                                                     <!--[if lt IE 9]>
Everything is not supported, there’s limitations!
                                                                           <script src="excanvas.js"></script>

     -   Only linear gradients                                       <![endif]-->
     -   Patterns must repeat in both directions                 </head>
     -   Clipping paths is not supported                         <body> ... </body>
     -   Non-uniform scaling does not scale outlines correctly   </html>
     - Really bad performance
DISADVANTAGES
                 From a Flash developers point of view

Polyfills is needed for older browsers   There is no editor for Canvas yet
No timeline or API for animations       Drawn objects is only pixels
Bad text rendering                      No display list/scene graph
THE OPTIMIST
                       But there’s hope for Canvas

Polyfills cover some needs           Adobe Flash Professional CS6
We’re programmers!                  Dynamic pixels

Web fonts                           Logic display list
WHAT A DISPLAY LIST IS
”A hierarchic list with graphical objects
      described with its properties”
WHAT A DISPLAY LIST IS
Display Object                            Different objects and properties
Family based – parents and children       Stage          x&y

Inherits from an abstract class           Bitmap         alpha

Renders in relation to its parent         Shape          scaleX & scaleY
Its properties determines the rendering   Text           Etc..
THE TOOLS
CREATEJS
A suite of Javascript libraries & tools for building
     rich, interactive experiences with HTML5
EASELJS
          Based on the Flash display list

        Display list and display list objects

                  DOM-elements

Mouse events on objects, even onClick and onPress

                  Touch support
TWEENJS
A Javascript library for tweening and animating HTML5
                 and Javascript properties
SOUNDJS
  A Javascript library that provides a simple API, and
powerful features to make working with audio a breeze
PRELOADJS
A Javascript library that lets you manage and co-ordinate
                   the loading of assets
ZOË
  A stand alone tool for exporting SWF animations as
EaselJS sprite sheets that can be used in Canvas and CSS
DEMO!
Adobe Flash Professional CS6
         Toolkit for CreateJS
                  Nested animations
                  Sounds
                  Dynamic texts
                  Vector objects
                  Armature
                  Shape morphs
DEMO!
Founder of CREATEJS
                            Grant Skinner
                                  gskinner.com
Recognized speaker, leader and innovator within
                              interactive media
                                       Gtween
                                        RegExr
                                      CreateJS
                                       EaselGL
THANKS!
    Patric Jonsson
Interactive Developer

      @flashpatric
 flashpatric@gmail.com

Más contenido relacionado

La actualidad más candente

Hooray Icon Fonts! Artifact Conference
Hooray Icon Fonts! Artifact ConferenceHooray Icon Fonts! Artifact Conference
Hooray Icon Fonts! Artifact Conferencejameswillweb
 
Hooray Icon Fonts workshop
Hooray Icon Fonts workshopHooray Icon Fonts workshop
Hooray Icon Fonts workshopjameswillweb
 
Accessibility in pattern libraries
Accessibility in pattern librariesAccessibility in pattern libraries
Accessibility in pattern librariesRuss Weakley
 
Starting mobile development
Starting mobile developmentStarting mobile development
Starting mobile developmentMihai Corlan
 
Class 4: Introduction to web technology entrepreneurship
Class 4: Introduction to web technology entrepreneurshipClass 4: Introduction to web technology entrepreneurship
Class 4: Introduction to web technology entrepreneurshipallanchao
 
Overview of Using Wordpress for Web Site Design
Overview of Using Wordpress for Web Site DesignOverview of Using Wordpress for Web Site Design
Overview of Using Wordpress for Web Site DesignAmy Goodloe
 
Debugging Web Apps on Real Mobile Devices
Debugging Web Apps on Real Mobile DevicesDebugging Web Apps on Real Mobile Devices
Debugging Web Apps on Real Mobile DevicesDale Lane
 
The Audio User Experience for Widgets
The Audio User Experience for WidgetsThe Audio User Experience for Widgets
The Audio User Experience for Widgetstoddkloots
 
&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />tutorialsruby
 
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...John Hartley
 
Adobe Max 2009 - Learnings
Adobe Max 2009 -  LearningsAdobe Max 2009 -  Learnings
Adobe Max 2009 - Learningsziblu
 
FLASH AND AIR IN EDUCATION
FLASH AND AIR IN EDUCATIONFLASH AND AIR IN EDUCATION
FLASH AND AIR IN EDUCATIONJoseph Labrecque
 
Is the Past. Is the Future. Is the Browser.
Is the Past. Is the Future. Is the Browser.Is the Past. Is the Future. Is the Browser.
Is the Past. Is the Future. Is the Browser.Andre JAY Meissner
 
Titanium appcelerator sdk
Titanium appcelerator sdkTitanium appcelerator sdk
Titanium appcelerator sdkAlessio Ricco
 
Developing Modern Web Interfaces with Dreamweaver CC
Developing Modern Web Interfaces with Dreamweaver CCDeveloping Modern Web Interfaces with Dreamweaver CC
Developing Modern Web Interfaces with Dreamweaver CCjameswillweb
 
Introduction to html5 game programming with ImpactJs
Introduction to html5 game programming with ImpactJsIntroduction to html5 game programming with ImpactJs
Introduction to html5 game programming with ImpactJsLuca Galli
 

La actualidad más candente (20)

Hooray Icon Fonts! Artifact Conference
Hooray Icon Fonts! Artifact ConferenceHooray Icon Fonts! Artifact Conference
Hooray Icon Fonts! Artifact Conference
 
Hooray Icon Fonts workshop
Hooray Icon Fonts workshopHooray Icon Fonts workshop
Hooray Icon Fonts workshop
 
Accessibility in pattern libraries
Accessibility in pattern librariesAccessibility in pattern libraries
Accessibility in pattern libraries
 
Starting mobile development
Starting mobile developmentStarting mobile development
Starting mobile development
 
Class 4: Introduction to web technology entrepreneurship
Class 4: Introduction to web technology entrepreneurshipClass 4: Introduction to web technology entrepreneurship
Class 4: Introduction to web technology entrepreneurship
 
Overview of Using Wordpress for Web Site Design
Overview of Using Wordpress for Web Site DesignOverview of Using Wordpress for Web Site Design
Overview of Using Wordpress for Web Site Design
 
Debugging Web Apps on Real Mobile Devices
Debugging Web Apps on Real Mobile DevicesDebugging Web Apps on Real Mobile Devices
Debugging Web Apps on Real Mobile Devices
 
The Audio User Experience for Widgets
The Audio User Experience for WidgetsThe Audio User Experience for Widgets
The Audio User Experience for Widgets
 
&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />
 
Adobe XD
Adobe XD Adobe XD
Adobe XD
 
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
 
Adobe Max 2009 - Learnings
Adobe Max 2009 -  LearningsAdobe Max 2009 -  Learnings
Adobe Max 2009 - Learnings
 
FLASH AND AIR IN EDUCATION
FLASH AND AIR IN EDUCATIONFLASH AND AIR IN EDUCATION
FLASH AND AIR IN EDUCATION
 
Explaining Ajax
Explaining AjaxExplaining Ajax
Explaining Ajax
 
Is the Past. Is the Future. Is the Browser.
Is the Past. Is the Future. Is the Browser.Is the Past. Is the Future. Is the Browser.
Is the Past. Is the Future. Is the Browser.
 
Titanium appcelerator sdk
Titanium appcelerator sdkTitanium appcelerator sdk
Titanium appcelerator sdk
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Developing Modern Web Interfaces with Dreamweaver CC
Developing Modern Web Interfaces with Dreamweaver CCDeveloping Modern Web Interfaces with Dreamweaver CC
Developing Modern Web Interfaces with Dreamweaver CC
 
Introduction to html5 game programming with ImpactJs
Introduction to html5 game programming with ImpactJsIntroduction to html5 game programming with ImpactJs
Introduction to html5 game programming with ImpactJs
 
WebDU Keynote
WebDU KeynoteWebDU Keynote
WebDU Keynote
 

Destacado

The high resolution web
The high resolution webThe high resolution web
The high resolution webPatric Lanhed
 
Mobilapp på 30 minuter
Mobilapp på 30 minuterMobilapp på 30 minuter
Mobilapp på 30 minuterPatric Lanhed
 
Pioneers Festival 2014
Pioneers Festival 2014Pioneers Festival 2014
Pioneers Festival 2014Patric Lanhed
 
Från Flash till Canvas - en förkärlek till svarta hål
Från Flash till Canvas - en förkärlek till svarta hålFrån Flash till Canvas - en förkärlek till svarta hål
Från Flash till Canvas - en förkärlek till svarta hålPatric Lanhed
 
Successful OTC Branding for a demanding consumer audience in 2012
Successful OTC Branding for a demanding consumer audience in 2012Successful OTC Branding for a demanding consumer audience in 2012
Successful OTC Branding for a demanding consumer audience in 2012Design Bridge
 

Destacado (8)

The high resolution web
The high resolution webThe high resolution web
The high resolution web
 
NFC Power
NFC PowerNFC Power
NFC Power
 
Mobilapp på 30 minuter
Mobilapp på 30 minuterMobilapp på 30 minuter
Mobilapp på 30 minuter
 
Pioneers Festival 2014
Pioneers Festival 2014Pioneers Festival 2014
Pioneers Festival 2014
 
Från Flash till Canvas - en förkärlek till svarta hål
Från Flash till Canvas - en förkärlek till svarta hålFrån Flash till Canvas - en förkärlek till svarta hål
Från Flash till Canvas - en förkärlek till svarta hål
 
Successful OTC Branding for a demanding consumer audience in 2012
Successful OTC Branding for a demanding consumer audience in 2012Successful OTC Branding for a demanding consumer audience in 2012
Successful OTC Branding for a demanding consumer audience in 2012
 
Firebase
FirebaseFirebase
Firebase
 
The Upgraded Human
 The Upgraded Human The Upgraded Human
The Upgraded Human
 

Similar a From Flash to Canvas - a penchant for black holes

HTML5 Technical Executive Summary
HTML5 Technical Executive SummaryHTML5 Technical Executive Summary
HTML5 Technical Executive SummaryGilad Khen
 
Dive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDoris Chen
 
WordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWebWordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWebGeorge Kanellopoulos
 
Adobe Flash Professional with CreateJS
Adobe Flash Professional with CreateJSAdobe Flash Professional with CreateJS
Adobe Flash Professional with CreateJSJoseph Labrecque
 
HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1James Pearce
 
An introduction to html5 by Devs
An introduction to html5 by DevsAn introduction to html5 by Devs
An introduction to html5 by DevsDebidatta Satapathy
 
Rich Media Advertising with SVG and JavaScript
Rich Media Advertising with SVG and JavaScriptRich Media Advertising with SVG and JavaScript
Rich Media Advertising with SVG and JavaScriptGjokica Zafirovski
 
An Intro to Mobile HTML5
An Intro to Mobile HTML5An Intro to Mobile HTML5
An Intro to Mobile HTML5James Pearce
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)Shumpei Shiraishi
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFrançois Le Droff
 
Dive Into HTML5
Dive Into HTML5Dive Into HTML5
Dive Into HTML5Doris Chen
 
HTML5 Intoduction for Web Developers
HTML5 Intoduction for Web DevelopersHTML5 Intoduction for Web Developers
HTML5 Intoduction for Web DevelopersSascha Corti
 
A Snapshot of the Mobile HTML5 Revolution
A Snapshot of the Mobile HTML5 RevolutionA Snapshot of the Mobile HTML5 Revolution
A Snapshot of the Mobile HTML5 RevolutionJames Pearce
 
Smart phone development
Smart phone developmentSmart phone development
Smart phone developmentMyles Eftos
 
Easy charting with
Easy charting withEasy charting with
Easy charting withMajor Ye
 

Similar a From Flash to Canvas - a penchant for black holes (20)

HTML5 Technical Executive Summary
HTML5 Technical Executive SummaryHTML5 Technical Executive Summary
HTML5 Technical Executive Summary
 
Dive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDive into HTML5: SVG and Canvas
Dive into HTML5: SVG and Canvas
 
WordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWebWordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWeb
 
Word camp nextweb
Word camp nextwebWord camp nextweb
Word camp nextweb
 
Word camp nextweb
Word camp nextwebWord camp nextweb
Word camp nextweb
 
Adobe Flash Professional with CreateJS
Adobe Flash Professional with CreateJSAdobe Flash Professional with CreateJS
Adobe Flash Professional with CreateJS
 
HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1
 
An introduction to html5 by Devs
An introduction to html5 by DevsAn introduction to html5 by Devs
An introduction to html5 by Devs
 
Rich Media Advertising with SVG and JavaScript
Rich Media Advertising with SVG and JavaScriptRich Media Advertising with SVG and JavaScript
Rich Media Advertising with SVG and JavaScript
 
Practical html5
Practical html5Practical html5
Practical html5
 
Echo HTML5
Echo HTML5Echo HTML5
Echo HTML5
 
An Intro to Mobile HTML5
An Intro to Mobile HTML5An Intro to Mobile HTML5
An Intro to Mobile HTML5
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
 
Dive Into HTML5
Dive Into HTML5Dive Into HTML5
Dive Into HTML5
 
HTML5 Intoduction for Web Developers
HTML5 Intoduction for Web DevelopersHTML5 Intoduction for Web Developers
HTML5 Intoduction for Web Developers
 
A Snapshot of the Mobile HTML5 Revolution
A Snapshot of the Mobile HTML5 RevolutionA Snapshot of the Mobile HTML5 Revolution
A Snapshot of the Mobile HTML5 Revolution
 
Spsmi13 charts
Spsmi13 chartsSpsmi13 charts
Spsmi13 charts
 
Smart phone development
Smart phone developmentSmart phone development
Smart phone development
 
Easy charting with
Easy charting withEasy charting with
Easy charting with
 

Último

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 

Último (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

From Flash to Canvas - a penchant for black holes

  • 1. From Flash to Canvas a penchant for black holes @flashpatric
  • 2. THIS PRESENTATION Canvas 2D context History Today How a display list will make your life easier Tools for a better Canvas experience Demo
  • 3. WHAT’S CANVAS?! <canvas id=”canvas”></canvas> A part of the HTML5 standard Dynamic bitmap API’s for drawing and using text
  • 4. ADVANTAGES From a Flash developers point of view Low learning curve Powerful along with other new functions Very good performance in new browsers Semantics Offline & Storage Image manipulation down to pixel level Device access Lots of proven JS-libraries Connectivity Pretty high market penetration Audio & video 3D graphics & effects 3D context – WebGL Performance & Integration GPU acceleration CSS3
  • 5. HISTORY Flash vs HTML FutureSplash 1995 HTML 3.2 draft, Internet Explorer Macromedia 1996 I Learned HTML 1998 HTML 4.01 draft My first Flash applikation, Actionscript 1 2000 Actionscript 2 2003 Firefox 2004 WHATWG Adobe 2005 Actionscript 3 2006 2007 HTMLWG, death of XHTML Adobe AIR 2008 Google Chrome Mobile Flash Player, Scepticism 2009 HTML5 Adobe AIR for Android & iOS 2010 IE9 Adobe AIR for iOS, Mobile Flash Player 2011 Shifting focus, comunication fail
  • 6. TODAY HTML5 Canvas 2D market penetration Canvas basic support Text API for Canvas 71.17% 70.56% Opera Mini has partial support for Canvas Opera Mini is missing support for Text API CSS Canvas Drawing Full Screen API 35.56% (Chrome, Safari, iOS Safari, Android 0% browser) Partial support in Firefox, Chrome och Safari
  • 7. TODAY Canvas 2D Context in Internet Explorer IE8 and below is missing support for Canvas <!DOCTYPE html> <html> Polyfills can be used for VML in IE7 and IE8 <head> <meta charset="utf-8"> Explorercanvas.js <title>Dive Into HTML5 Canvas</title> <!--[if lt IE 9]> Everything is not supported, there’s limitations! <script src="excanvas.js"></script> - Only linear gradients <![endif]--> - Patterns must repeat in both directions </head> - Clipping paths is not supported <body> ... </body> - Non-uniform scaling does not scale outlines correctly </html> - Really bad performance
  • 8. DISADVANTAGES From a Flash developers point of view Polyfills is needed for older browsers There is no editor for Canvas yet No timeline or API for animations Drawn objects is only pixels Bad text rendering No display list/scene graph
  • 9. THE OPTIMIST But there’s hope for Canvas Polyfills cover some needs Adobe Flash Professional CS6 We’re programmers! Dynamic pixels Web fonts Logic display list
  • 10. WHAT A DISPLAY LIST IS ”A hierarchic list with graphical objects described with its properties”
  • 11. WHAT A DISPLAY LIST IS Display Object Different objects and properties Family based – parents and children Stage x&y Inherits from an abstract class Bitmap alpha Renders in relation to its parent Shape scaleX & scaleY Its properties determines the rendering Text Etc..
  • 13. CREATEJS A suite of Javascript libraries & tools for building rich, interactive experiences with HTML5
  • 14. EASELJS Based on the Flash display list Display list and display list objects DOM-elements Mouse events on objects, even onClick and onPress Touch support
  • 15. TWEENJS A Javascript library for tweening and animating HTML5 and Javascript properties
  • 16. SOUNDJS A Javascript library that provides a simple API, and powerful features to make working with audio a breeze
  • 17. PRELOADJS A Javascript library that lets you manage and co-ordinate the loading of assets
  • 18. ZOË A stand alone tool for exporting SWF animations as EaselJS sprite sheets that can be used in Canvas and CSS
  • 19. DEMO!
  • 20. Adobe Flash Professional CS6 Toolkit for CreateJS Nested animations Sounds Dynamic texts Vector objects Armature Shape morphs
  • 21. DEMO!
  • 22. Founder of CREATEJS Grant Skinner gskinner.com Recognized speaker, leader and innovator within interactive media Gtween RegExr CreateJS EaselGL
  • 23. THANKS! Patric Jonsson Interactive Developer @flashpatric flashpatric@gmail.com