We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byRandell Henry
Modified about 1 year ago
© Copyright Khronos Group, Page 1 Coping with Fixed Point Arto Astala, CTO
© Copyright Khronos Group, Page 2 Fathammer Mobile Gaming Technology -X-Forge™ Game Development System -Client focused -Complete solution -4 years of experience Game development -Internal development -Game Development Partners Industry cooperation -Samsung, Gizmondo, Tapwave, Nokia -Intel, TI, Nvidia (& MediaQ), ATI -Channels (TBA)
© Copyright Khronos Group, Page 3 Summary How do you do it without floats? You don’t !!!
© Copyright Khronos Group, Page 4 Outline The Audience The Difference General Strategies The Production Chain Coding Summary Q & A Demo
© Copyright Khronos Group, Page 5 The Audience Who you are? Professional experience Graphics experience Art experience
© Copyright Khronos Group, Page 6 The Difference Problems in any math -Loss of precision -Speed of calculation -Implementation effort -The artists With floats you don’t usually notice -In mobile / embedded there is no difference -You can partly choose your problems There is a difference -Space, Speed, Effort limitation -Try to optimize the recurring effort -Fixed is better sometimes
© Copyright Khronos Group, Page 7 General Strategies Don’t fight the system -Some things are just done in float, no matter what -Avoid risky operations -Train the artists Know your system -Order operations -Debug math -Create precision offline -How many polys per pixel you need Be careful -Audit the content -Debug the math -Use floats when needed (e.g. physics)
© Copyright Khronos Group, Page 8 Production Chain All starts with content -Usually most effort, by far -Optimize effort -Avoid mistakes Tool chain massages it into suitable shape -Use all the precision you can -Verify everything -Pre-calculate Real-time processing in the device -Understand the problems -Don’t cumulate the errors -Solutions available, both math only and full game engine
© Copyright Khronos Group, Page 9 Production Chain: Art Love your artist Art is done in float but understanding is needed -Set limits -Use natural one unit -Avoid extreme differences and sizes -Document! There is enough precision -Scale at export if necessary -Track the scaling factors Remember textures & UV mapping Remember device differences -Perspective correction, lights, raw performance differences
© Copyright Khronos Group, Page 10 Production Chain: Tools Use all available precision -Doubles are good for fixed point -Select appropriate representation (quarternion) -Filter out all unnecessary data Pre-calculate as much as you can -Win-win: improves both performance and precision Verify your content -Weed out problems -Fast preview for artists helps -Verify limits -Useful error messages -Keep the coder out of the loop
© Copyright Khronos Group, Page 11 Production Chain: Device Use old coders -Re-use at its best :-) Avoid risky things, bad things -Order of operations -Use alternative algorithms (normalize, length) Exploit the content -You know it, trust it! (limits) Discard errors, not precision -Collect transformations -Delay or eliminate world space -Calculate relative to camera
© Copyright Khronos Group, Page 12 Coding Make always the same errors Use libraries, they are there Debug / trace your system Use precision where needed -Cumulation of errors -Catastrophic errors -Low volume -Physics Alternative ways -Sliding origo -World size limits -Shift decimal point, use multiple representations
© Copyright Khronos Group, Page 13 Summary Success is achieved by care and feeding of the artists Understand your system Discard errors, not precision Just do it (without floats) Don’t reinvent the wheel There is always a way
© Copyright Khronos Group, Page 14 Questions ?
© Copyright Khronos Group, Page 15 COPING WITH FIXED POINT: Using fixed point in applications on top of OpenGL ES Maintain accuracy, avoid overflows and methods for improved performance Effective use of fixed point in OpenGL ES applications Float to Fixed-point based engine conversions, for those who want to write for common-lite STAYING GROUNDED IN A FLOAT FREE WORLD
© Copyright Khronos Group, Page 1 Coping with Fixed Point Mik BRY CEO
Computer Graphics Hardware Acceleration for Embedded Level Systems Brian Murray
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Texture Mapping CAP4730: Computational Structures in Computer Graphics.
1 The Software Development Process Systems analysis Systems design Implementation Testing Documentation Evaluation Maintenance.
1 The Software Development Process Analysis Design Implementation Testing Documentation Evaluation Maintenance.
Prepared by: Hind J. Zourob Heba M. Matter Supervisor: Dr. Hatem El-Aydi Faculty Of Engineering Communications & Control Engineering.
1 Shawlands Academy Higher Computing Software Development Unit.
Tiger Woods 2008: Advancements in Environments Peter Arisman Technical Art Director Tiger Woods 2008.
Projection Matrix Tricks Eric Lengyel Outline Projection Matrix Internals Infinite Projection Matrix Depth Modification Oblique Near Clipping.
09/23/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Reflections Shadows Part 1 Stage 1 is in.
Kernel Regression Prof. Bennett Math Model of Learning and Discovery 1/28/05 Based on Chapter 2 of Shawe-Taylor and Cristianini.
A nice simple OpenGL triangle CSE 381 – Advanced Game Programming Basic 3D Graphics.
Scan Conversion. Also known as rasterization In our programs objects are represented symbolically –3D coordinates representing an object’s position –Attributes.
Kathy Grimes. Signals Electrical Mechanical Acoustic Most real-world signals are Analog – they vary continuously over time Many Limitations with Analog.
Captcha Soft solutions Pvt Ltd is a recognized name in the web design industry. For the past three years, we’ve been doing what we love: inventing, conceptualizing,
Fast Cascade VSM By Zhang Jian. Dynamic Shadow Tech Shadow VolumeShadow Map Basic Algorithm PCFVSMCSMESM Per Object ShadowDeferred Shadow Soft Shadow.
Connected 3D Game Development for Mobile Devices using X-Forge Game Developers Conference 2005 March 11, San Francisco Petrus Lundqvist.
Course Website: Computer Graphics 9: Clipping In 3D.
Understanding the graphics pipeline Lecture 2 Original Slides by: Suresh Venkatasubramanian Updates by Joseph Kider.
CSE 381 – Advanced Game Programming Code Setup.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
MACHINE VISION GROUP Graphics hardware accelerated panorama builder for mobile phones Miguel Bordallo López*, Jari Hannuksela*, Olli Silvén* and Markku.
STAR Simulation. Status and plans V. Perevoztchikov Brookhaven National Laboratory,USA.
GAM666 – Introduction To Game Programming ● Programmer's perspective of Game Industry ● Introduction to Windows Programming ● 2D animation using DirectX.
© Copyright Khronos Group, Page 1 Khronos and OpenGL ES Status Neil Trevett Vice President Embedded Content, NVIDIA President, Khronos.
Computer Graphics Texture Mapping CO2409 Computer Graphics Week 13.
Project Raytracing. Content Goals Idea of Raytracing Ray Casting – Therory – Practice Raytracing – Theory – Light model – Practice Output images Conclusion.
© Copyright Khronos Group, Page 1 Shaders Go Mobile: An Introduction to OpenGL ES 2.0 Tom Olson, Texas Instruments Inc.
Aaron Schultz. Idea: Objects close to a light shadow those far away. Anything we can see from the light’s POV is lit. Everything hidden is dark. Distance.
3D Graphics Rendering and Terrain Modeling Technology and Historical Overview By Ricardo Veguilla.
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
Virtual Dart: An Augmented Reality Game on Mobile Device Supervisor: Professor Michael R. Lyu Prepared by: Lai Chung Sum Siu Ho Tung.
1 William Stallings Computer Organization and Architecture 6 th Edition Chapter 9 Computer Arithmetic.
Honors Track: Competitive Programming & Problem Solving Effective Programming Kevin Verbeek.
Real-Time Cyber Physical Systems Application on MobilityFirst Winlab Summer Internship 2015 Karthikeyan Ganesan, Wuyang Zhang, Zihong Zheng Shantanu Ghosh,
Lecture 13 Page 1 CS 111 Online Free Space and Allocation Issues How do I keep track of a file system’s free space? How do I allocate new disk blocks when.
Tal Mor Create an automatic system that given an image of a room and a color, will color the room walls Maintaining the original texture.
OpenGL and You I Cast, Therefore I Am. Ray Casting Idea is simple, implementation takes some work –Cast rays as if you were the camera –Determine intersection.
Scientific Measurement Chpt 3. Units of Measure –general qualitative – describes matter – ex. Rough, shiny, heavy, blue quantitative – measures matter.
Designed & Developed By:- Trieffects Technologies Pvt.Ltd. PSD to HTML Conversion.
Topics Describe ◦ Characteristics of good implementations ◦ Best practices to achieve them Understand role of comments Learn debugging techniques.
QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs By Koen Claessen, Juhn Hughes ME: Mike Izbicki.
Advanced Computer Graphics Shadow Techniques CO2409 Computer Graphics Week 20.
CAP4730: Computational Structures in Computer Graphics Visible Surface Determination.
IB Internal Assessment Design. Designing an Experiment Formulate a research question. Read the background theory. Decide on the equipment you will need.
A Few Things about Graphics Jian Huang Computer Science University of Tennessee.
IB Internal Assessment Exploration. Designing an Experiment Formulate a research question. Read the background theory. State the variables. Decide on.
1. WHAT IS A PROJECT? “A project is a problem scheduled for solution.” This definition forces us to recognize that projects are aimed at solving problems.
© 2017 SlidePlayer.com Inc. All rights reserved.