SlideShare a Scribd company logo
1 of 13
PORTING FROM PC TO XBOX
TECHNICAL CHALLENGES
Nihav Jain
Brian Bennett
Outline
• Audio
• OpenGL to DirectX
• Box2D and TinyXML
• Angry Birds specific
Implementing Audio on XBOX
• Used FMOD on the PC version, really simple and easy-to-use library
• FMOD didn’t port to XBOX so had to switch to XACT
• “Building” the sound bank
• Limited documentation about XACT lead a lot of time being wasted in realizing that the
sound bank had to be pre-built and then used in the project
• Only some particular file formats work with XACT (WMA)
OpenGL to DirectX
• Y – axis is opposite in the two
• Solution -> y = ScreenHeight – y;
• Screen resolution on XBOX was 640x480 as compared to 1920x1080 on PC
• Solution -> ScaleX = TargetScreenWidth / IdleScreenWidth,
ScaleY = TargetScreenHeight / IdleScreenHeight
• The center of rotation for the textures in DirectX was based on the local coordinates of the texture
whereas OpenGL took that in screen space
• The direction of rotation was opposite in OpenGL and DirectX
• Textures were supposed to be square in shape with the image dimensions in powers of 2
Porting Box2D and TinyXML to XBOX
• Box2D had windows.h included in a few files
• Replaced references to windows.h components with their XBOX counterparts
• TinyXML used basic file operations like fopen, fread etc. which are not
allowed on XBOX
• Read XML using XBOX XDK file functions
• Bypassed the file read functions of TinyXML and provided it directly with a character stream
• Mapping the sprites to the actual Box2D physics bodies was difficult
Angry Birds Specific Challenges
• Implementing different bird abilities
• Implementing slingshot
• Different damage states for the birds, blocks and pigs
• Level design, balancing physics parameters
Question?
Nihav Jain
Brian Bennett

More Related Content

Viewers also liked

Order clerk performance appraisal
Order clerk performance appraisalOrder clerk performance appraisal
Order clerk performance appraisalPenelopeCruz678
 
Pathologist assistant performance appraisal
Pathologist assistant performance appraisalPathologist assistant performance appraisal
Pathologist assistant performance appraisalPenelopeCruz678
 
Cross Platform Game Engine - Project proposal
Cross Platform Game Engine - Project proposalCross Platform Game Engine - Project proposal
Cross Platform Game Engine - Project proposalNihav Jain
 
Patient services coordinator performance appraisal
Patient services coordinator performance appraisalPatient services coordinator performance appraisal
Patient services coordinator performance appraisalPenelopeCruz678
 
Boarding ladder
Boarding ladderBoarding ladder
Boarding ladderHall751080
 
Passenger assistant performance appraisal
Passenger assistant performance appraisalPassenger assistant performance appraisal
Passenger assistant performance appraisalPenelopeCruz678
 
Operation clerk performance appraisal
Operation clerk performance appraisalOperation clerk performance appraisal
Operation clerk performance appraisalPenelopeCruz678
 
Orthodontist assistant performance appraisal
Orthodontist assistant performance appraisalOrthodontist assistant performance appraisal
Orthodontist assistant performance appraisalPenelopeCruz678
 
Pediatric medical assistant performance appraisal
Pediatric medical assistant performance appraisalPediatric medical assistant performance appraisal
Pediatric medical assistant performance appraisalPenelopeCruz678
 
Patient service coordinator performance appraisal
Patient service coordinator performance appraisalPatient service coordinator performance appraisal
Patient service coordinator performance appraisalPenelopeCruz678
 
Order entry clerk performance appraisal
Order entry clerk performance appraisalOrder entry clerk performance appraisal
Order entry clerk performance appraisalPenelopeCruz678
 
Julie garwood muzica umbrei
Julie garwood   muzica umbreiJulie garwood   muzica umbrei
Julie garwood muzica umbreiAde MA
 
Julie garwood spionii coroanei#3- darul
Julie garwood spionii coroanei#3- darulJulie garwood spionii coroanei#3- darul
Julie garwood spionii coroanei#3- darulAde MA
 
Sandra chastain-casatorie-la-comanda
Sandra chastain-casatorie-la-comandaSandra chastain-casatorie-la-comanda
Sandra chastain-casatorie-la-comandaAde MA
 
Megan Crewe-mai las-o moale cu fantomele
Megan Crewe-mai las-o moale cu fantomeleMegan Crewe-mai las-o moale cu fantomele
Megan Crewe-mai las-o moale cu fantomeleAde MA
 
Melissa marr obsesie#2
Melissa marr obsesie#2Melissa marr obsesie#2
Melissa marr obsesie#2Ade MA
 
Teresa Medeiros-Mireasa si bestia
Teresa Medeiros-Mireasa si bestiaTeresa Medeiros-Mireasa si bestia
Teresa Medeiros-Mireasa si bestiaAde MA
 

Viewers also liked (17)

Order clerk performance appraisal
Order clerk performance appraisalOrder clerk performance appraisal
Order clerk performance appraisal
 
Pathologist assistant performance appraisal
Pathologist assistant performance appraisalPathologist assistant performance appraisal
Pathologist assistant performance appraisal
 
Cross Platform Game Engine - Project proposal
Cross Platform Game Engine - Project proposalCross Platform Game Engine - Project proposal
Cross Platform Game Engine - Project proposal
 
Patient services coordinator performance appraisal
Patient services coordinator performance appraisalPatient services coordinator performance appraisal
Patient services coordinator performance appraisal
 
Boarding ladder
Boarding ladderBoarding ladder
Boarding ladder
 
Passenger assistant performance appraisal
Passenger assistant performance appraisalPassenger assistant performance appraisal
Passenger assistant performance appraisal
 
Operation clerk performance appraisal
Operation clerk performance appraisalOperation clerk performance appraisal
Operation clerk performance appraisal
 
Orthodontist assistant performance appraisal
Orthodontist assistant performance appraisalOrthodontist assistant performance appraisal
Orthodontist assistant performance appraisal
 
Pediatric medical assistant performance appraisal
Pediatric medical assistant performance appraisalPediatric medical assistant performance appraisal
Pediatric medical assistant performance appraisal
 
Patient service coordinator performance appraisal
Patient service coordinator performance appraisalPatient service coordinator performance appraisal
Patient service coordinator performance appraisal
 
Order entry clerk performance appraisal
Order entry clerk performance appraisalOrder entry clerk performance appraisal
Order entry clerk performance appraisal
 
Julie garwood muzica umbrei
Julie garwood   muzica umbreiJulie garwood   muzica umbrei
Julie garwood muzica umbrei
 
Julie garwood spionii coroanei#3- darul
Julie garwood spionii coroanei#3- darulJulie garwood spionii coroanei#3- darul
Julie garwood spionii coroanei#3- darul
 
Sandra chastain-casatorie-la-comanda
Sandra chastain-casatorie-la-comandaSandra chastain-casatorie-la-comanda
Sandra chastain-casatorie-la-comanda
 
Megan Crewe-mai las-o moale cu fantomele
Megan Crewe-mai las-o moale cu fantomeleMegan Crewe-mai las-o moale cu fantomele
Megan Crewe-mai las-o moale cu fantomele
 
Melissa marr obsesie#2
Melissa marr obsesie#2Melissa marr obsesie#2
Melissa marr obsesie#2
 
Teresa Medeiros-Mireasa si bestia
Teresa Medeiros-Mireasa si bestiaTeresa Medeiros-Mireasa si bestia
Teresa Medeiros-Mireasa si bestia
 

Similar to Porting from PC to XBOX - Technical Challenges

Game development -session on unity 3d
Game development -session on unity 3d Game development -session on unity 3d
Game development -session on unity 3d Muhammad Maaz Irfan
 
Design your 3d game engine
Design your 3d game engineDesign your 3d game engine
Design your 3d game engineDaosheng Mu
 
Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Jean-Philippe Doiron
 
De Re PlayStation Vita
De Re PlayStation VitaDe Re PlayStation Vita
De Re PlayStation VitaSlide_N
 
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo Yue
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo YueUGC In Game : A Brief History and How We Bring It To Mobile | Zhuo Yue
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo YueJessica Tams
 
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...Unity Technologies
 
Abc of DirectX
Abc of DirectXAbc of DirectX
Abc of DirectXPrabodh20
 
Confrontation Pipeline and SCons
Confrontation Pipeline and SConsConfrontation Pipeline and SCons
Confrontation Pipeline and SConsslantsixgames
 
A Scalable Real-Time Many-Shadowed-Light Rendering System
A Scalable Real-Time Many-Shadowed-Light Rendering SystemA Scalable Real-Time Many-Shadowed-Light Rendering System
A Scalable Real-Time Many-Shadowed-Light Rendering SystemBo Li
 
Writing Games in .NET with XNA Game Studio
Writing Games in .NET with XNA Game StudioWriting Games in .NET with XNA Game Studio
Writing Games in .NET with XNA Game StudioTim Thomas
 
Developing native cross platform games on Cocos2dx2
Developing native cross platform games on Cocos2dx2Developing native cross platform games on Cocos2dx2
Developing native cross platform games on Cocos2dx2BeMyApp
 
[CCP Games] Versioning Everything with Perforce
[CCP Games] Versioning Everything with Perforce[CCP Games] Versioning Everything with Perforce
[CCP Games] Versioning Everything with PerforcePerforce
 
CS 354 GPU Architecture
CS 354 GPU ArchitectureCS 354 GPU Architecture
CS 354 GPU ArchitectureMark Kilgard
 
OGDC 2014_Hands on experience with Cocos2dx in cross-platform with Farmery_Mr...
OGDC 2014_Hands on experience with Cocos2dx in cross-platform with Farmery_Mr...OGDC 2014_Hands on experience with Cocos2dx in cross-platform with Farmery_Mr...
OGDC 2014_Hands on experience with Cocos2dx in cross-platform with Farmery_Mr...ogdc
 
OGDC 2014: Program farmery by cocos2dx
OGDC 2014: Program farmery by cocos2dxOGDC 2014: Program farmery by cocos2dx
OGDC 2014: Program farmery by cocos2dxGameLandVN
 
The next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesThe next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesPooya Eimandar
 

Similar to Porting from PC to XBOX - Technical Challenges (20)

XNAPresentation
XNAPresentationXNAPresentation
XNAPresentation
 
Cocos2d game programming 2
Cocos2d game programming 2Cocos2d game programming 2
Cocos2d game programming 2
 
Game development -session on unity 3d
Game development -session on unity 3d Game development -session on unity 3d
Game development -session on unity 3d
 
Cocos2d programming
Cocos2d programmingCocos2d programming
Cocos2d programming
 
Design your 3d game engine
Design your 3d game engineDesign your 3d game engine
Design your 3d game engine
 
Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill)
 
De Re PlayStation Vita
De Re PlayStation VitaDe Re PlayStation Vita
De Re PlayStation Vita
 
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo Yue
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo YueUGC In Game : A Brief History and How We Bring It To Mobile | Zhuo Yue
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo Yue
 
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
 
Abc of DirectX
Abc of DirectXAbc of DirectX
Abc of DirectX
 
Confrontation Pipeline and SCons
Confrontation Pipeline and SConsConfrontation Pipeline and SCons
Confrontation Pipeline and SCons
 
A Scalable Real-Time Many-Shadowed-Light Rendering System
A Scalable Real-Time Many-Shadowed-Light Rendering SystemA Scalable Real-Time Many-Shadowed-Light Rendering System
A Scalable Real-Time Many-Shadowed-Light Rendering System
 
Writing Games in .NET with XNA Game Studio
Writing Games in .NET with XNA Game StudioWriting Games in .NET with XNA Game Studio
Writing Games in .NET with XNA Game Studio
 
Developing native cross platform games on Cocos2dx2
Developing native cross platform games on Cocos2dx2Developing native cross platform games on Cocos2dx2
Developing native cross platform games on Cocos2dx2
 
[CCP Games] Versioning Everything with Perforce
[CCP Games] Versioning Everything with Perforce[CCP Games] Versioning Everything with Perforce
[CCP Games] Versioning Everything with Perforce
 
CS 354 GPU Architecture
CS 354 GPU ArchitectureCS 354 GPU Architecture
CS 354 GPU Architecture
 
OGDC 2014_Hands on experience with Cocos2dx in cross-platform with Farmery_Mr...
OGDC 2014_Hands on experience with Cocos2dx in cross-platform with Farmery_Mr...OGDC 2014_Hands on experience with Cocos2dx in cross-platform with Farmery_Mr...
OGDC 2014_Hands on experience with Cocos2dx in cross-platform with Farmery_Mr...
 
OGDC 2014: Program farmery by cocos2dx
OGDC 2014: Program farmery by cocos2dxOGDC 2014: Program farmery by cocos2dx
OGDC 2014: Program farmery by cocos2dx
 
Masked Occlusion Culling
Masked Occlusion CullingMasked Occlusion Culling
Masked Occlusion Culling
 
The next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesThe next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game Engines
 

Recently uploaded

OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsSandeep D Chaudhary
 
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community PartnershipsSpring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community Partnershipsexpandedwebsite
 
How To Create Editable Tree View in Odoo 17
How To Create Editable Tree View in Odoo 17How To Create Editable Tree View in Odoo 17
How To Create Editable Tree View in Odoo 17Celine George
 
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...Nguyen Thanh Tu Collection
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...EADTU
 
SPLICE Working Group: Reusable Code Examples
SPLICE Working Group:Reusable Code ExamplesSPLICE Working Group:Reusable Code Examples
SPLICE Working Group: Reusable Code ExamplesPeter Brusilovsky
 
8 Tips for Effective Working Capital Management
8 Tips for Effective Working Capital Management8 Tips for Effective Working Capital Management
8 Tips for Effective Working Capital ManagementMBA Assignment Experts
 
Basic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of TransportBasic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of TransportDenish Jangid
 
The Story of Village Palampur Class 9 Free Study Material PDF
The Story of Village Palampur Class 9 Free Study Material PDFThe Story of Village Palampur Class 9 Free Study Material PDF
The Story of Village Palampur Class 9 Free Study Material PDFVivekanand Anglo Vedic Academy
 
The Liver & Gallbladder (Anatomy & Physiology).pptx
The Liver &  Gallbladder (Anatomy & Physiology).pptxThe Liver &  Gallbladder (Anatomy & Physiology).pptx
The Liver & Gallbladder (Anatomy & Physiology).pptxVishal Singh
 
ANTI PARKISON DRUGS.pptx
ANTI         PARKISON          DRUGS.pptxANTI         PARKISON          DRUGS.pptx
ANTI PARKISON DRUGS.pptxPoojaSen20
 
Improved Approval Flow in Odoo 17 Studio App
Improved Approval Flow in Odoo 17 Studio AppImproved Approval Flow in Odoo 17 Studio App
Improved Approval Flow in Odoo 17 Studio AppCeline George
 
How to Manage Website in Odoo 17 Studio App.pptx
How to Manage Website in Odoo 17 Studio App.pptxHow to Manage Website in Odoo 17 Studio App.pptx
How to Manage Website in Odoo 17 Studio App.pptxCeline George
 
diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....Ritu480198
 
Book Review of Run For Your Life Powerpoint
Book Review of Run For Your Life PowerpointBook Review of Run For Your Life Powerpoint
Book Review of Run For Your Life Powerpoint23600690
 
MOOD STABLIZERS DRUGS.pptx
MOOD     STABLIZERS           DRUGS.pptxMOOD     STABLIZERS           DRUGS.pptx
MOOD STABLIZERS DRUGS.pptxPoojaSen20
 

Recently uploaded (20)

OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & Systems
 
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community PartnershipsSpring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
 
How To Create Editable Tree View in Odoo 17
How To Create Editable Tree View in Odoo 17How To Create Editable Tree View in Odoo 17
How To Create Editable Tree View in Odoo 17
 
Mattingly "AI and Prompt Design: LLMs with NER"
Mattingly "AI and Prompt Design: LLMs with NER"Mattingly "AI and Prompt Design: LLMs with NER"
Mattingly "AI and Prompt Design: LLMs with NER"
 
Supporting Newcomer Multilingual Learners
Supporting Newcomer  Multilingual LearnersSupporting Newcomer  Multilingual Learners
Supporting Newcomer Multilingual Learners
 
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
 
SPLICE Working Group: Reusable Code Examples
SPLICE Working Group:Reusable Code ExamplesSPLICE Working Group:Reusable Code Examples
SPLICE Working Group: Reusable Code Examples
 
8 Tips for Effective Working Capital Management
8 Tips for Effective Working Capital Management8 Tips for Effective Working Capital Management
8 Tips for Effective Working Capital Management
 
Basic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of TransportBasic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of Transport
 
The Story of Village Palampur Class 9 Free Study Material PDF
The Story of Village Palampur Class 9 Free Study Material PDFThe Story of Village Palampur Class 9 Free Study Material PDF
The Story of Village Palampur Class 9 Free Study Material PDF
 
The Liver & Gallbladder (Anatomy & Physiology).pptx
The Liver &  Gallbladder (Anatomy & Physiology).pptxThe Liver &  Gallbladder (Anatomy & Physiology).pptx
The Liver & Gallbladder (Anatomy & Physiology).pptx
 
OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...
 
ANTI PARKISON DRUGS.pptx
ANTI         PARKISON          DRUGS.pptxANTI         PARKISON          DRUGS.pptx
ANTI PARKISON DRUGS.pptx
 
Improved Approval Flow in Odoo 17 Studio App
Improved Approval Flow in Odoo 17 Studio AppImproved Approval Flow in Odoo 17 Studio App
Improved Approval Flow in Odoo 17 Studio App
 
How to Manage Website in Odoo 17 Studio App.pptx
How to Manage Website in Odoo 17 Studio App.pptxHow to Manage Website in Odoo 17 Studio App.pptx
How to Manage Website in Odoo 17 Studio App.pptx
 
diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....diagnosting testing bsc 2nd sem.pptx....
diagnosting testing bsc 2nd sem.pptx....
 
Book Review of Run For Your Life Powerpoint
Book Review of Run For Your Life PowerpointBook Review of Run For Your Life Powerpoint
Book Review of Run For Your Life Powerpoint
 
Including Mental Health Support in Project Delivery, 14 May.pdf
Including Mental Health Support in Project Delivery, 14 May.pdfIncluding Mental Health Support in Project Delivery, 14 May.pdf
Including Mental Health Support in Project Delivery, 14 May.pdf
 
MOOD STABLIZERS DRUGS.pptx
MOOD     STABLIZERS           DRUGS.pptxMOOD     STABLIZERS           DRUGS.pptx
MOOD STABLIZERS DRUGS.pptx
 

Porting from PC to XBOX - Technical Challenges

  • 1. PORTING FROM PC TO XBOX TECHNICAL CHALLENGES Nihav Jain Brian Bennett
  • 2. Outline • Audio • OpenGL to DirectX • Box2D and TinyXML • Angry Birds specific
  • 3. Implementing Audio on XBOX • Used FMOD on the PC version, really simple and easy-to-use library • FMOD didn’t port to XBOX so had to switch to XACT • “Building” the sound bank • Limited documentation about XACT lead a lot of time being wasted in realizing that the sound bank had to be pre-built and then used in the project • Only some particular file formats work with XACT (WMA)
  • 4. OpenGL to DirectX • Y – axis is opposite in the two • Solution -> y = ScreenHeight – y; • Screen resolution on XBOX was 640x480 as compared to 1920x1080 on PC • Solution -> ScaleX = TargetScreenWidth / IdleScreenWidth, ScaleY = TargetScreenHeight / IdleScreenHeight • The center of rotation for the textures in DirectX was based on the local coordinates of the texture whereas OpenGL took that in screen space • The direction of rotation was opposite in OpenGL and DirectX • Textures were supposed to be square in shape with the image dimensions in powers of 2
  • 5. Porting Box2D and TinyXML to XBOX • Box2D had windows.h included in a few files • Replaced references to windows.h components with their XBOX counterparts • TinyXML used basic file operations like fopen, fread etc. which are not allowed on XBOX • Read XML using XBOX XDK file functions • Bypassed the file read functions of TinyXML and provided it directly with a character stream • Mapping the sprites to the actual Box2D physics bodies was difficult
  • 6. Angry Birds Specific Challenges • Implementing different bird abilities • Implementing slingshot • Different damage states for the birds, blocks and pigs • Level design, balancing physics parameters
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.