SlideShare una empresa de Scribd logo
1 de 47
Best Practices For Webcam AR
Blake Callens




                                      The Importance of Practicality
                                                  Using the Flex SDK
                                    Speeding Up Data Structure Use
                Integration with Preexisting CMS and HTTP Services
                                          Integrating Motion Capture
                           Flash AR Engine Porting and Development
About Me
                                                         Blake Callens
                                         Sr. Software Engineer, Zugara
                                                        @blakecallens




Sr. Developer on:
WSS, Fashionista, ZugMo, ZugSTAR, ZBR (in development)
Creator of ARtisan - Flex FLARToolkit and Papervision3D Manager
The Importance of Practicality
The Importance of Practicality



• Nobody reuses a gimmick
The Importance of Practicality



• Nobody reuses a gimmick
• Over-saturation of services
The Importance of Practicality



• Nobody reuses a gimmick
• Over-saturation of services
• Stagnation of the industry
The Importance of Practicality



• Nobody reuses a gimmick
• Over-saturation of services
• Stagnation of the industry
• Sustainable business models
The Importance of Practicality



• Nobody reuses a gimmick
• Over-saturation of services
• Stagnation of the industry
• Sustainable business models
• Emergence of the NUI
Using the Flex SDK

                                                                   MXML Components
AS3
var loader:Loader = new Loader();
loader.load(new URLRequest(”http://yoursite.com/image.png”));
loader.x = 10;
loader.y = 10;
loader.addEventListener(MouseEvent.CLICK, onClick);
addChild(loader);




                                                                                              Flex
 <mx:Image id=”image” source=”http://yoursite.com/image.png” x=”10” y=”10” click=”onClick(event)”/>
Using the Flex SDK

                                        “Programmer’s Flash”
Flash IDE
              Flex SDK
                         • Standard application components
                         • CSS Integration
                         • Command line compilation
                         • Full Adobe support
                         • 100% free to use
Using the Flex SDK

                                                                                                                                                             Brevity of Code
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:artisan="com.onezerothrice.artisan.* "xmlns:local="*" backgroundColor="#000000" preloader="Preloader" width="640" height="480"
layout="absolute" clipContent="false" applicationComplete="init();">
	     <mx:Script>
	     	     <![CDATA[
	     	     	     import com.onezerothrice.artisan.calculations.ReturnType;
	     	     	     import com.onezerothrice.artisan.events.ARtisanSettingsEvent;
	     	     	
	     	     	     private function init():void
	     	     	     {
	     	     	     	     artisan.addEventListener(ARtisanSettingsEvent.AR_PARAMETERS_LOADED, onARParametersLoaded);
	     	     	     }

	    	     	     private function onARParametersLoaded(event:ARtisanSettingsEvent):void
	    	     	     {
	    	     	     	     sceneHolder.init(event.extraInfo);
	    	     	     }

	     	     	      private function onARtisanOutput(result:Array):void
	     	     	      {
	     	     	      	     sceneHolder.updateObjectPositions(result);
	     	     	      }	    	
	     	     ]]>
	     </mx:Script>
	     <artisan:ARtisan id="artisan" outputFunction="{onARtisanOutput}" returnType="{ReturnType.XYZ}" smoothing="true" scaleX="-1" x="{width}"/>
	     <local:SceneHolder id="sceneHolder" scaleX="-1" x="{width}"/>
</mx:Application>
                                                                                                                                                        Flex FLAR examples at:
                                                                                                                                                        code.google.com/p/artisanmanager
Speeding Up Data Structure Use
aka (speed tweaks)
Speeding Up Data Structure Use
aka (speed tweaks)

     •   Use as few event listeners as possible
Speeding Up Data Structure Use
aka (speed tweaks)

     •   Use as few event listeners as possible

     •   Pass related variables through custom events
Speeding Up Data Structure Use
aka (speed tweaks)

     •   Use as few event listeners as possible

     •   Pass related variables through custom events

     •   Use subscriber functions whenever possible
Speeding Up Data Structure Use
aka (speed tweaks)

     •   Use as few event listeners as possible

     •   Pass related variables through custom events

     •   Use subscriber functions whenever possible

     •   Arrays should only be used for holding multiple object types
Speeding Up Data Structure Use
aka (speed tweaks)

     •   Use as few event listeners as possible

     •   Pass related variables through custom events

     •   Use subscriber functions whenever possible

     •   Arrays should only be used for holding multiple object types

     •   Initialize arrays as: array:Array = [];
Speeding Up Data Structure Use
aka (speed tweaks)

     •   Use as few event listeners as possible

     •   Pass related variables through custom events

     •   Use subscriber functions whenever possible

     •   Arrays should only be used for holding multiple object types

     •   Initialize arrays as: array:Array = [];

     •   Use state constants to switch between dynamic layouts
Speeding Up Data Structure Use
aka (speed tweaks)

     •   Use as few event listeners as possible

     •   Pass related variables through custom events

     •   Use subscriber functions whenever possible

     •   Arrays should only be used for holding multiple object types

     •   Initialize arrays as: array:Array = [];

     •   Use state constants to switch between dynamic layouts

     •   Manually use System.gc();
Integration with Existing
CMS and HTTP Services
Integration with Existing
                      CMS and HTTP Services

•   Pass relative and absolute URLs through FlashVars
Integration with Existing
                      CMS and HTTP Services

•   Pass relative and absolute URLs through FlashVars

•   Create a custom class(es) to handle all communications
Integration with Existing
                      CMS and HTTP Services

•   Pass relative and absolute URLs through FlashVars

•   Create a custom class(es) to handle all communications

•   Flex HTTPService class
Integration with Existing
                       CMS and HTTP Services

•   Pass relative and absolute URLs through FlashVars

•   Create a custom class(es) to handle all communications

•   Flex HTTPService class

•   Parse all data before sending it to the main application
Integration with Existing
                       CMS and HTTP Services

•   Pass relative and absolute URLs through FlashVars

•   Create a custom class(es) to handle all communications

•   Flex HTTPService class

•   Parse all data before sending it to the main application

•   Utilize SWC library creation whenever possible
Integration with Existing
                       CMS and HTTP Services

•   Pass relative and absolute URLs through FlashVars

•   Create a custom class(es) to handle all communications

•   Flex HTTPService class

•   Parse all data before sending it to the main application

•   Utilize SWC library creation whenever possible

•   Maintain embeddability whenever possible
Integrating Motion Capture
Integrating Motion Capture




              •   Technically AR
Integrating Motion Capture




              •   Technically AR

              •   Moving the user away from the keyboard
Integrating Motion Capture




              •   Technically AR

              •   Moving the user away from the keyboard

              •   Potentially processor intensive
Integrating Motion Capture




              •   Technically AR

              •   Moving the user away from the keyboard

              •   Potentially processor intensive

              •   Pushes applications towards NUI
Integrating Motion Capture
Integrating Motion Capture




• Working in 2D
Integrating Motion Capture




• Working in 2D
• Make room for the user
Integrating Motion Capture




• Working in 2D
• Make room for the user
• Keep everything in Reach
Integrating Motion Capture




• Working in 2D
• Make room for the user
• Keep everything in Reach
• Easy to understand controls
Integrating Motion Capture




• Working in 2D
• Make room for the user
• Keep everything in Reach
• Easy to understand controls
• Motion speed calculation
Flash AR Engine
Porting and Development
Flash AR Engine
            Porting and Development

•   Take advantage of ActionScript features
Flash AR Engine
            Porting and Development

•   Take advantage of ActionScript features
    •Descriptive variable names
Flash AR Engine
            Porting and Development

•   Take advantage of ActionScript features
    •Descriptive variable names
    •Fast drawing functionality
Flash AR Engine
            Porting and Development

•   Take advantage of ActionScript features
    •Descriptive variable names
    •Fast drawing functionality
    •BitmapData manipulation
Flash AR Engine
            Porting and Development

•   Take advantage of ActionScript features
    •Descriptive variable names
    •Fast drawing functionality
    •BitmapData manipulation
    •Extensive third party libraries
Flash AR Engine
            Porting and Development

•   Take advantage of ActionScript features
    •Descriptive variable names
    •Fast drawing functionality
    •BitmapData manipulation
    •Extensive third party libraries

•   Think outside of the box
Flash AR Engine
            Porting and Development

•   Take advantage of ActionScript features
    •Descriptive variable names
    •Fast drawing functionality
    •BitmapData manipulation
    •Extensive third party libraries

•   Think outside of the box

•   Know when to stay vigilant and when to move on
Flash AR Engine
            Porting and Development

•   Take advantage of ActionScript features
    •Descriptive variable names
    •Fast drawing functionality
    •BitmapData manipulation
    •Extensive third party libraries

•   Think outside of the box

•   Know when to stay vigilant and when to move on

•   Think about how other developers will interact with your engine
Questions?

Más contenido relacionado

La actualidad más candente

Productionize Serverless Application Building and Deployments with AWS SAM - ...
Productionize Serverless Application Building and Deployments with AWS SAM - ...Productionize Serverless Application Building and Deployments with AWS SAM - ...
Productionize Serverless Application Building and Deployments with AWS SAM - ...Amazon Web Services
 
Distributed Serverless Stack Tracing and Monitoring
Distributed Serverless Stack Tracing and MonitoringDistributed Serverless Stack Tracing and Monitoring
Distributed Serverless Stack Tracing and MonitoringAmazon Web Services
 
AWS Power Tools: Advanced AWS CloudFormation and CLI
AWS Power Tools: Advanced AWS CloudFormation and CLIAWS Power Tools: Advanced AWS CloudFormation and CLI
AWS Power Tools: Advanced AWS CloudFormation and CLIAmazon Web Services
 
(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture PatternsAmazon Web Services
 
Serverless presentation
Serverless presentationServerless presentation
Serverless presentationjasonsich
 
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resourcesJavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resourcesCorley S.r.l.
 
Serverless Frameworks on AWS
Serverless Frameworks on AWSServerless Frameworks on AWS
Serverless Frameworks on AWSJulien SIMON
 
Building CI-CD Pipelines for Serverless Applications
Building CI-CD Pipelines for Serverless ApplicationsBuilding CI-CD Pipelines for Serverless Applications
Building CI-CD Pipelines for Serverless ApplicationsAmazon Web Services
 
Migrating your .NET Applications to the AWS Serverless Platform
Migrating your .NET Applications to the AWS Serverless PlatformMigrating your .NET Applications to the AWS Serverless Platform
Migrating your .NET Applications to the AWS Serverless PlatformAmazon Web Services
 
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 Automating your Infrastructure Deployment with CloudFormation and OpsWorks –... Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...Amazon Web Services
 
Raleigh DevDay 2017: Building CICD pipelines for serverless applications
Raleigh DevDay 2017: Building CICD pipelines for serverless applicationsRaleigh DevDay 2017: Building CICD pipelines for serverless applications
Raleigh DevDay 2017: Building CICD pipelines for serverless applicationsAmazon Web Services
 
Building CICD Pipelines for Serverless Applications - DevDay Austin 2017
Building CICD Pipelines for Serverless Applications - DevDay Austin 2017Building CICD Pipelines for Serverless Applications - DevDay Austin 2017
Building CICD Pipelines for Serverless Applications - DevDay Austin 2017Amazon Web Services
 
Serverless Application Development with SAM
Serverless Application Development with SAMServerless Application Development with SAM
Serverless Application Development with SAMAmazon Web Services
 
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...Amazon Web Services
 
Developing and deploying serverless applications (February 2017)
Developing and deploying serverless applications (February 2017)Developing and deploying serverless applications (February 2017)
Developing and deploying serverless applications (February 2017)Julien SIMON
 
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...Amazon Web Services
 
Authoring and Deploying Serverless Applications with AWS SAM
Authoring and Deploying Serverless Applications with AWS SAMAuthoring and Deploying Serverless Applications with AWS SAM
Authoring and Deploying Serverless Applications with AWS SAMAmazon Web Services
 
Raleigh DevDay 2017: Building serverless web applications
Raleigh DevDay 2017: Building serverless web applicationsRaleigh DevDay 2017: Building serverless web applications
Raleigh DevDay 2017: Building serverless web applicationsAmazon Web Services
 
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...Mitoc Group
 

La actualidad más candente (20)

Productionize Serverless Application Building and Deployments with AWS SAM - ...
Productionize Serverless Application Building and Deployments with AWS SAM - ...Productionize Serverless Application Building and Deployments with AWS SAM - ...
Productionize Serverless Application Building and Deployments with AWS SAM - ...
 
Distributed Serverless Stack Tracing and Monitoring
Distributed Serverless Stack Tracing and MonitoringDistributed Serverless Stack Tracing and Monitoring
Distributed Serverless Stack Tracing and Monitoring
 
AWS Power Tools: Advanced AWS CloudFormation and CLI
AWS Power Tools: Advanced AWS CloudFormation and CLIAWS Power Tools: Advanced AWS CloudFormation and CLI
AWS Power Tools: Advanced AWS CloudFormation and CLI
 
(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns(ARC309) Getting to Microservices: Cloud Architecture Patterns
(ARC309) Getting to Microservices: Cloud Architecture Patterns
 
Serverless presentation
Serverless presentationServerless presentation
Serverless presentation
 
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resourcesJavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
 
Serverless Frameworks on AWS
Serverless Frameworks on AWSServerless Frameworks on AWS
Serverless Frameworks on AWS
 
Building CI-CD Pipelines for Serverless Applications
Building CI-CD Pipelines for Serverless ApplicationsBuilding CI-CD Pipelines for Serverless Applications
Building CI-CD Pipelines for Serverless Applications
 
Migrating your .NET Applications to the AWS Serverless Platform
Migrating your .NET Applications to the AWS Serverless PlatformMigrating your .NET Applications to the AWS Serverless Platform
Migrating your .NET Applications to the AWS Serverless Platform
 
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 Automating your Infrastructure Deployment with CloudFormation and OpsWorks –... Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 
Raleigh DevDay 2017: Building CICD pipelines for serverless applications
Raleigh DevDay 2017: Building CICD pipelines for serverless applicationsRaleigh DevDay 2017: Building CICD pipelines for serverless applications
Raleigh DevDay 2017: Building CICD pipelines for serverless applications
 
Building CICD Pipelines for Serverless Applications - DevDay Austin 2017
Building CICD Pipelines for Serverless Applications - DevDay Austin 2017Building CICD Pipelines for Serverless Applications - DevDay Austin 2017
Building CICD Pipelines for Serverless Applications - DevDay Austin 2017
 
Serverless architecture
Serverless architectureServerless architecture
Serverless architecture
 
Serverless Application Development with SAM
Serverless Application Development with SAMServerless Application Development with SAM
Serverless Application Development with SAM
 
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...
Getting Started with Serverless Architectures with Microservices_AWSPSSummit_...
 
Developing and deploying serverless applications (February 2017)
Developing and deploying serverless applications (February 2017)Developing and deploying serverless applications (February 2017)
Developing and deploying serverless applications (February 2017)
 
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
 
Authoring and Deploying Serverless Applications with AWS SAM
Authoring and Deploying Serverless Applications with AWS SAMAuthoring and Deploying Serverless Applications with AWS SAM
Authoring and Deploying Serverless Applications with AWS SAM
 
Raleigh DevDay 2017: Building serverless web applications
Raleigh DevDay 2017: Building serverless web applicationsRaleigh DevDay 2017: Building serverless web applications
Raleigh DevDay 2017: Building serverless web applications
 
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
 

Destacado

Augmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceAugmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceZugara
 
Commoditization to Automation: WTF Do We Do?
Commoditization to Automation: WTF Do We Do?Commoditization to Automation: WTF Do We Do?
Commoditization to Automation: WTF Do We Do?Zugara
 
Netexplorateur - The Future of Communication + Augmented Reality 8 hours ago
Netexplorateur - The Future of Communication + Augmented Reality 8 hours ago Netexplorateur - The Future of Communication + Augmented Reality 8 hours ago
Netexplorateur - The Future of Communication + Augmented Reality 8 hours ago Zugara
 
Augmented Reality: From Marketing Buzzword to a Better Consumer Experience
Augmented Reality: From Marketing Buzzword to a Better Consumer ExperienceAugmented Reality: From Marketing Buzzword to a Better Consumer Experience
Augmented Reality: From Marketing Buzzword to a Better Consumer ExperienceZugara
 
Augmented Reality: From Marketing Buzzword To A Better Consumer Experience
Augmented Reality: From Marketing Buzzword To A Better Consumer ExperienceAugmented Reality: From Marketing Buzzword To A Better Consumer Experience
Augmented Reality: From Marketing Buzzword To A Better Consumer ExperienceZugara
 
IHAF- Blurring the Lines with Augmented Reality
IHAF- Blurring the Lines with Augmented RealityIHAF- Blurring the Lines with Augmented Reality
IHAF- Blurring the Lines with Augmented RealityZugara
 
Augmented Reality Data: The Webcam Social Shopper
Augmented Reality Data: The Webcam Social ShopperAugmented Reality Data: The Webcam Social Shopper
Augmented Reality Data: The Webcam Social ShopperZugara
 
Building Business Models Around E-Commerce and Augmented Reality
Building Business Models Around E-Commerce and Augmented RealityBuilding Business Models Around E-Commerce and Augmented Reality
Building Business Models Around E-Commerce and Augmented RealityZugara
 

Destacado (8)

Augmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceAugmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer Experience
 
Commoditization to Automation: WTF Do We Do?
Commoditization to Automation: WTF Do We Do?Commoditization to Automation: WTF Do We Do?
Commoditization to Automation: WTF Do We Do?
 
Netexplorateur - The Future of Communication + Augmented Reality 8 hours ago
Netexplorateur - The Future of Communication + Augmented Reality 8 hours ago Netexplorateur - The Future of Communication + Augmented Reality 8 hours ago
Netexplorateur - The Future of Communication + Augmented Reality 8 hours ago
 
Augmented Reality: From Marketing Buzzword to a Better Consumer Experience
Augmented Reality: From Marketing Buzzword to a Better Consumer ExperienceAugmented Reality: From Marketing Buzzword to a Better Consumer Experience
Augmented Reality: From Marketing Buzzword to a Better Consumer Experience
 
Augmented Reality: From Marketing Buzzword To A Better Consumer Experience
Augmented Reality: From Marketing Buzzword To A Better Consumer ExperienceAugmented Reality: From Marketing Buzzword To A Better Consumer Experience
Augmented Reality: From Marketing Buzzword To A Better Consumer Experience
 
IHAF- Blurring the Lines with Augmented Reality
IHAF- Blurring the Lines with Augmented RealityIHAF- Blurring the Lines with Augmented Reality
IHAF- Blurring the Lines with Augmented Reality
 
Augmented Reality Data: The Webcam Social Shopper
Augmented Reality Data: The Webcam Social ShopperAugmented Reality Data: The Webcam Social Shopper
Augmented Reality Data: The Webcam Social Shopper
 
Building Business Models Around E-Commerce and Augmented Reality
Building Business Models Around E-Commerce and Augmented RealityBuilding Business Models Around E-Commerce and Augmented Reality
Building Business Models Around E-Commerce and Augmented Reality
 

Similar a Best Practices for Webcam Augmented Reality

Advanced Serverless Apps With Step Functions
Advanced Serverless Apps With Step FunctionsAdvanced Serverless Apps With Step Functions
Advanced Serverless Apps With Step FunctionsAmazon Web Services
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixIBM
 
Advanced Serverless Apps With Step Functions
Advanced Serverless Apps With Step FunctionsAdvanced Serverless Apps With Step Functions
Advanced Serverless Apps With Step FunctionsAmazon Web Services
 
Flex In Portal Final
Flex In Portal   FinalFlex In Portal   Final
Flex In Portal FinalSunil Patil
 
Presentation wpf
Presentation wpfPresentation wpf
Presentation wpfdanishrafiq
 
Developing High Performance Web Apps
Developing High Performance Web AppsDeveloping High Performance Web Apps
Developing High Performance Web AppsTimothy Fisher
 
AWS as platform for scalable applications
AWS as platform for scalable applicationsAWS as platform for scalable applications
AWS as platform for scalable applicationsRoman Gomolko
 
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWSAWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWSAmazon Web Services
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Timothy Fisher
 
Alfresco Development Framework Basic
Alfresco Development Framework BasicAlfresco Development Framework Basic
Alfresco Development Framework BasicMario Romano
 
AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)Amazon Web Services
 
Unconference Round Table Notes
Unconference Round Table NotesUnconference Round Table Notes
Unconference Round Table NotesTimothy Spann
 
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)Amazon Web Services
 
Distributed Traceability in AWS - Life of a Transaction
Distributed Traceability in AWS - Life of a TransactionDistributed Traceability in AWS - Life of a Transaction
Distributed Traceability in AWS - Life of a TransactionAmazon Web Services
 
Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17Vinay Kumar
 
Flex 4.5 jeyasekar
Flex 4.5  jeyasekarFlex 4.5  jeyasekar
Flex 4.5 jeyasekarjeya soft
 

Similar a Best Practices for Webcam Augmented Reality (20)

Advanced Serverless Apps With Step Functions
Advanced Serverless Apps With Step FunctionsAdvanced Serverless Apps With Step Functions
Advanced Serverless Apps With Step Functions
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in Bluemix
 
Advanced Serverless Apps With Step Functions
Advanced Serverless Apps With Step FunctionsAdvanced Serverless Apps With Step Functions
Advanced Serverless Apps With Step Functions
 
Flex In Portal Final
Flex In Portal   FinalFlex In Portal   Final
Flex In Portal Final
 
Presentation wpf
Presentation wpfPresentation wpf
Presentation wpf
 
Developing High Performance Web Apps
Developing High Performance Web AppsDeveloping High Performance Web Apps
Developing High Performance Web Apps
 
AWS as platform for scalable applications
AWS as platform for scalable applicationsAWS as platform for scalable applications
AWS as platform for scalable applications
 
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWSAWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
 
Building SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.jsBuilding SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.js
 
App fabric introduction
App fabric introductionApp fabric introduction
App fabric introduction
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
 
Alfresco Development Framework Basic
Alfresco Development Framework BasicAlfresco Development Framework Basic
Alfresco Development Framework Basic
 
AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)
 
Unconference Round Table Notes
Unconference Round Table NotesUnconference Round Table Notes
Unconference Round Table Notes
 
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
AWS re:Invent 2016: Accenture Cloud Platform Serverless Journey (ARC202)
 
Distributed Traceability in AWS - Life of a Transaction
Distributed Traceability in AWS - Life of a TransactionDistributed Traceability in AWS - Life of a Transaction
Distributed Traceability in AWS - Life of a Transaction
 
Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17
 
SynapseIndia asp.net2.0 ajax Development
SynapseIndia asp.net2.0 ajax DevelopmentSynapseIndia asp.net2.0 ajax Development
SynapseIndia asp.net2.0 ajax Development
 
Flex 4.5 jeyasekar
Flex 4.5  jeyasekarFlex 4.5  jeyasekar
Flex 4.5 jeyasekar
 
Aerobatic Introduction
Aerobatic IntroductionAerobatic Introduction
Aerobatic Introduction
 

Más de Zugara

Angel.co
Angel.coAngel.co
Angel.coZugara
 
Changing The Future: Emerging Technologies That Will Blow Customers Away
Changing The Future: Emerging Technologies That Will Blow Customers AwayChanging The Future: Emerging Technologies That Will Blow Customers Away
Changing The Future: Emerging Technologies That Will Blow Customers AwayZugara
 
Augmented Reality and Fashion
Augmented Reality and FashionAugmented Reality and Fashion
Augmented Reality and FashionZugara
 
Augmented Reality Statistics 2009
Augmented Reality Statistics 2009Augmented Reality Statistics 2009
Augmented Reality Statistics 2009Zugara
 
Zugara SIME 2009 Stockholm Presentation - Augmented Reality
Zugara SIME 2009 Stockholm Presentation - Augmented RealityZugara SIME 2009 Stockholm Presentation - Augmented Reality
Zugara SIME 2009 Stockholm Presentation - Augmented RealityZugara
 
IAB Poland - Zugara Augmented Reality Presentation
IAB Poland - Zugara Augmented Reality PresentationIAB Poland - Zugara Augmented Reality Presentation
IAB Poland - Zugara Augmented Reality PresentationZugara
 

Más de Zugara (6)

Angel.co
Angel.coAngel.co
Angel.co
 
Changing The Future: Emerging Technologies That Will Blow Customers Away
Changing The Future: Emerging Technologies That Will Blow Customers AwayChanging The Future: Emerging Technologies That Will Blow Customers Away
Changing The Future: Emerging Technologies That Will Blow Customers Away
 
Augmented Reality and Fashion
Augmented Reality and FashionAugmented Reality and Fashion
Augmented Reality and Fashion
 
Augmented Reality Statistics 2009
Augmented Reality Statistics 2009Augmented Reality Statistics 2009
Augmented Reality Statistics 2009
 
Zugara SIME 2009 Stockholm Presentation - Augmented Reality
Zugara SIME 2009 Stockholm Presentation - Augmented RealityZugara SIME 2009 Stockholm Presentation - Augmented Reality
Zugara SIME 2009 Stockholm Presentation - Augmented Reality
 
IAB Poland - Zugara Augmented Reality Presentation
IAB Poland - Zugara Augmented Reality PresentationIAB Poland - Zugara Augmented Reality Presentation
IAB Poland - Zugara Augmented Reality Presentation
 

Último

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Último (20)

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

Best Practices for Webcam Augmented Reality

  • 1. Best Practices For Webcam AR Blake Callens The Importance of Practicality Using the Flex SDK Speeding Up Data Structure Use Integration with Preexisting CMS and HTTP Services Integrating Motion Capture Flash AR Engine Porting and Development
  • 2. About Me Blake Callens Sr. Software Engineer, Zugara @blakecallens Sr. Developer on: WSS, Fashionista, ZugMo, ZugSTAR, ZBR (in development) Creator of ARtisan - Flex FLARToolkit and Papervision3D Manager
  • 3. The Importance of Practicality
  • 4. The Importance of Practicality • Nobody reuses a gimmick
  • 5. The Importance of Practicality • Nobody reuses a gimmick • Over-saturation of services
  • 6. The Importance of Practicality • Nobody reuses a gimmick • Over-saturation of services • Stagnation of the industry
  • 7. The Importance of Practicality • Nobody reuses a gimmick • Over-saturation of services • Stagnation of the industry • Sustainable business models
  • 8. The Importance of Practicality • Nobody reuses a gimmick • Over-saturation of services • Stagnation of the industry • Sustainable business models • Emergence of the NUI
  • 9. Using the Flex SDK MXML Components AS3 var loader:Loader = new Loader(); loader.load(new URLRequest(”http://yoursite.com/image.png”)); loader.x = 10; loader.y = 10; loader.addEventListener(MouseEvent.CLICK, onClick); addChild(loader); Flex <mx:Image id=”image” source=”http://yoursite.com/image.png” x=”10” y=”10” click=”onClick(event)”/>
  • 10. Using the Flex SDK “Programmer’s Flash” Flash IDE Flex SDK • Standard application components • CSS Integration • Command line compilation • Full Adobe support • 100% free to use
  • 11. Using the Flex SDK Brevity of Code <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:artisan="com.onezerothrice.artisan.* "xmlns:local="*" backgroundColor="#000000" preloader="Preloader" width="640" height="480" layout="absolute" clipContent="false" applicationComplete="init();"> <mx:Script> <![CDATA[ import com.onezerothrice.artisan.calculations.ReturnType; import com.onezerothrice.artisan.events.ARtisanSettingsEvent; private function init():void { artisan.addEventListener(ARtisanSettingsEvent.AR_PARAMETERS_LOADED, onARParametersLoaded); } private function onARParametersLoaded(event:ARtisanSettingsEvent):void { sceneHolder.init(event.extraInfo); } private function onARtisanOutput(result:Array):void { sceneHolder.updateObjectPositions(result); } ]]> </mx:Script> <artisan:ARtisan id="artisan" outputFunction="{onARtisanOutput}" returnType="{ReturnType.XYZ}" smoothing="true" scaleX="-1" x="{width}"/> <local:SceneHolder id="sceneHolder" scaleX="-1" x="{width}"/> </mx:Application> Flex FLAR examples at: code.google.com/p/artisanmanager
  • 12. Speeding Up Data Structure Use aka (speed tweaks)
  • 13. Speeding Up Data Structure Use aka (speed tweaks) • Use as few event listeners as possible
  • 14. Speeding Up Data Structure Use aka (speed tweaks) • Use as few event listeners as possible • Pass related variables through custom events
  • 15. Speeding Up Data Structure Use aka (speed tweaks) • Use as few event listeners as possible • Pass related variables through custom events • Use subscriber functions whenever possible
  • 16. Speeding Up Data Structure Use aka (speed tweaks) • Use as few event listeners as possible • Pass related variables through custom events • Use subscriber functions whenever possible • Arrays should only be used for holding multiple object types
  • 17. Speeding Up Data Structure Use aka (speed tweaks) • Use as few event listeners as possible • Pass related variables through custom events • Use subscriber functions whenever possible • Arrays should only be used for holding multiple object types • Initialize arrays as: array:Array = [];
  • 18. Speeding Up Data Structure Use aka (speed tweaks) • Use as few event listeners as possible • Pass related variables through custom events • Use subscriber functions whenever possible • Arrays should only be used for holding multiple object types • Initialize arrays as: array:Array = []; • Use state constants to switch between dynamic layouts
  • 19. Speeding Up Data Structure Use aka (speed tweaks) • Use as few event listeners as possible • Pass related variables through custom events • Use subscriber functions whenever possible • Arrays should only be used for holding multiple object types • Initialize arrays as: array:Array = []; • Use state constants to switch between dynamic layouts • Manually use System.gc();
  • 20. Integration with Existing CMS and HTTP Services
  • 21. Integration with Existing CMS and HTTP Services • Pass relative and absolute URLs through FlashVars
  • 22. Integration with Existing CMS and HTTP Services • Pass relative and absolute URLs through FlashVars • Create a custom class(es) to handle all communications
  • 23. Integration with Existing CMS and HTTP Services • Pass relative and absolute URLs through FlashVars • Create a custom class(es) to handle all communications • Flex HTTPService class
  • 24. Integration with Existing CMS and HTTP Services • Pass relative and absolute URLs through FlashVars • Create a custom class(es) to handle all communications • Flex HTTPService class • Parse all data before sending it to the main application
  • 25. Integration with Existing CMS and HTTP Services • Pass relative and absolute URLs through FlashVars • Create a custom class(es) to handle all communications • Flex HTTPService class • Parse all data before sending it to the main application • Utilize SWC library creation whenever possible
  • 26. Integration with Existing CMS and HTTP Services • Pass relative and absolute URLs through FlashVars • Create a custom class(es) to handle all communications • Flex HTTPService class • Parse all data before sending it to the main application • Utilize SWC library creation whenever possible • Maintain embeddability whenever possible
  • 28. Integrating Motion Capture • Technically AR
  • 29. Integrating Motion Capture • Technically AR • Moving the user away from the keyboard
  • 30. Integrating Motion Capture • Technically AR • Moving the user away from the keyboard • Potentially processor intensive
  • 31. Integrating Motion Capture • Technically AR • Moving the user away from the keyboard • Potentially processor intensive • Pushes applications towards NUI
  • 34. Integrating Motion Capture • Working in 2D • Make room for the user
  • 35. Integrating Motion Capture • Working in 2D • Make room for the user • Keep everything in Reach
  • 36. Integrating Motion Capture • Working in 2D • Make room for the user • Keep everything in Reach • Easy to understand controls
  • 37. Integrating Motion Capture • Working in 2D • Make room for the user • Keep everything in Reach • Easy to understand controls • Motion speed calculation
  • 38. Flash AR Engine Porting and Development
  • 39. Flash AR Engine Porting and Development • Take advantage of ActionScript features
  • 40. Flash AR Engine Porting and Development • Take advantage of ActionScript features •Descriptive variable names
  • 41. Flash AR Engine Porting and Development • Take advantage of ActionScript features •Descriptive variable names •Fast drawing functionality
  • 42. Flash AR Engine Porting and Development • Take advantage of ActionScript features •Descriptive variable names •Fast drawing functionality •BitmapData manipulation
  • 43. Flash AR Engine Porting and Development • Take advantage of ActionScript features •Descriptive variable names •Fast drawing functionality •BitmapData manipulation •Extensive third party libraries
  • 44. Flash AR Engine Porting and Development • Take advantage of ActionScript features •Descriptive variable names •Fast drawing functionality •BitmapData manipulation •Extensive third party libraries • Think outside of the box
  • 45. Flash AR Engine Porting and Development • Take advantage of ActionScript features •Descriptive variable names •Fast drawing functionality •BitmapData manipulation •Extensive third party libraries • Think outside of the box • Know when to stay vigilant and when to move on
  • 46. Flash AR Engine Porting and Development • Take advantage of ActionScript features •Descriptive variable names •Fast drawing functionality •BitmapData manipulation •Extensive third party libraries • Think outside of the box • Know when to stay vigilant and when to move on • Think about how other developers will interact with your engine

Notas del editor