0 Up votes0 Down votes

8 views4 pagesNov 14, 2013

© Attribution Non-Commercial (BY-NC)

PDF, TXT or read online from Scribd

Attribution Non-Commercial (BY-NC)

8 views

Attribution Non-Commercial (BY-NC)

- Ancient Indian Mathematics
- Answer Key to for Young Mathletes 6
- C maths for class 8 sample question
- middle school syllabus - moynihan
- Centers of Rotations
- dot-to-dot puzzle simplifying algebraic expressions
- sdarticle
- cv08-14-07
- mathematics
- math 012B
- jawapan matematik k2
- f5 Maths Answers
- derf
- Sof Nso Imo Syllabus Class 4
- Example-on-CM-and-CR.pdf
- sec1_mod7_cag_tnh_71713
- sbd0332.46.06.1A4CF.000100
- MATHEMATICS-K-12-Curriculum-Guide-Grades-1-and-7.pdf
- ael geometry
- course syllabi 2015-2016

You are on page 1of 4

H O ME A BO U T A R T IC L ES

CONT A CT P O R T F O L IO S U BS C R IBE

Higher-Order Fun

Game Design & Game Programming

Here comes a harsh fact of life: game programming requires mathematics. One could say that programming IS, in a way, math, but you dont really need to know math to write the vast majority of programs. Most of the time, you dont need it to write parsers, to interact with databases, to validate data. Games, however, very often rely on mathematics. If you want objects to move across your world realistically, or if you want to draw things on the screen following certain geometric patterns, or if you want to check for collision between certain shapes, you need math. But dont despair! Even though I say math, what you ACTUALLY need is geometry. Luckily for us, geometry is probably the easiest part of mathematics! Now, Im not saying that discrete mathematics, algebra and calculus are useless for writing games (or other sorts of programs), but geometry is the bread and butter of video game programmers. An interesting thing that I did notice is that, despite my previous assertion, many game programmers do not actually know much geometry! This means that theyll often do things in extremely laborious, buggy and verbose ways, when it could very easily be done with some basic grasp of geometry. For example, if you want to place several objects along an arc of circle, you COULD do it through trial and error, or place it in an image editing program (like Photoshop) and copying the coordinates, but it will be much easier if you simply use a parametric equation. So I intend to write a few posts to explain, as clearly as I can, some topics that are important to game programming. These are the topics that I intend to cover: Vectors Parametric Equations Vector bases Basic Trigonometry Matrices Complex Numbers Quaternions While there are many basic and in-depth tutorials of all of the above topics on the Internet, explanations as to why the matter to game programmers and how to use them seem to be scarce, or left as an exercise to the reader. My goal is to make those topics easy to understand and put into use.

About

I'm Rodrigo Monteiro, and I have been programming video games since 1997, ranging from Klik & Play to C++ and Java. I'm the creator of the Aegisub subtitling software (together with Niels Hansen), and I like joining game programming challenges such as the Allegro SpeedHack and the Global Game Jam. I currently work as a professional video game programmer at Bossa Studios, in London, United Kingdom. All opinions are my own. More...

Archives

September 2012 (1) June 2012 (1) May 2012 (2) February 2012 (1) November 2011 (1) September 2011 (1) June 2011 (1) May 2011 (1) February 2011 (3) August 2010 (1) February 2010 (1) June 2009 (4)

by a m z / Ju n e 7 , 2 0 0 9 / Post ed in : m a t h , t u t or ia l T a g g ed: m a t h , t u t or ia l

20 Com m en t s

P re v io u s p o s t

Next po s t

Tags

20 Responses

Kenneth Blok

Leave one

article c++ dia blo dow n g oes t h e ph oen ix ex per im en t g a m e game design g a m e ja m

g r een lig h t h u m or lect u r e m a in loop

/ 2 0 1 2 -0 9 -0 3

I bought Mathematics for 3D Programming and computer graphics 3rd Edition by Langyel, which I consider an absolute must if you want to understand what you are doing.

spja m st ea m t ech n ica l t h r ea d

higherorderfun.com/blog/2009/06/07/math-for-game-programmers-01-introduction/

1/4

14/10/13

It gave me a good base for reading the OpenGL Superbible 5th Edition by Writght, Haemel, Sellers and Lipchak.

tutorial

w in 3 2

v ect or

vectors v ideo

Ajay Parmar

Great!! I am waiting..

/ 2 0 1 2 -0 9 -0 3

Blogroll

Aegisub Blog

Ben Dover

/ 2 0 1 2 -0 9 -0 3

The best way to learn the topics mentioned here is to attend high school.

Phil Mc Cafferty

/ 2 0 1 2 -0 9 -0 3

Follow me @amzeratul

and study french of course, as everyone knows the french are the best mathematicians.

P. B. Moss

/ 2 0 1 2 -0 9 -0 3

Quite clearly whoever wrote the last two posts certainly attended high school as they still posess the pathetic schoolboy humour. Grow up and get a life! This could be a very interesting series and I look forward to it.

Alex

/ 2 0 1 2 -0 9 -0 3

Im a mathematician and the mentioned topics are a piece of cake for me. Dont need to waste my time on those. Better learn more programming, that cant be enough for me since this is not my speciality.

Alex

/ 2 0 1 2 -0 9 -0 3

And geometry is not the easiest part of math, trust me. While in algebra you can solve problems using more or less defined approaches, solving geometrical problems requires way more imagination and creativity. Nevertheless, I agree that the geometrical facts themselves are easier to understand since they dont require as many sophisticated formulas as algebra. From this point of view, you are right.

Mike Hanson

/ 2 0 1 2 -0 9 -0 3

You need a lot more than that. Reflection of objects on shiny surfaces such as mirrors, effects of gravity on objects, perspective in 3D games, develop sound effects to enhance image. These are just a few things to consider. I did get my start with geometry writing 2D games.

FAbio

/ 2 0 1 2 -0 9 -0 3

As an engineer, I caught myself using geometry to solve many problems on development from very simple games, to factory software. Its amazing how one problem can become very difficult when you dont know the math. Its like riding a mountain bike uphill without realizing it has gears to help you with that. What I dont agree with you is that to me geometry is one of the hardest part of mathematics, it requires a lot of imagining (which I am not good at) so you can apply geometry correctly should I use sin or cosing? This can entangle the brain sometimes and usually leads to some trial and error in my case. Now, calculus and statistics to me are much easier, it usually requires just to identify a problem and pick the right equation for the job.

higherorderfun.com/blog/2009/06/07/math-for-game-programmers-01-introduction/

2/4

14/10/13

Brendan

/ 2 0 1 2 -0 9 -0 4

Anthony

/ 2 0 1 2 -0 9 -0 4

Bookmarked, got a huge interest in math and programming, my degree is math, and application of math concepts in an application always fascinates me

Anthony

/ 2 0 1 2 -0 9 -0 4

Great, Got a huge interest in math and programming, my degree is math, and application of math concepts in an application is exciting. Any physics write ups coming soon, I hear its important in games prog.?

Nicholas

/ 2 0 1 2 -0 9 -0 4

pakiza

/ 2 0 1 2 -0 9 -0 5

nice , i also love maths and computer programming . it is interesting for me too

David

Ben -

/ 2 0 1 2 -0 9 -0 5

And the best way for you to learn anything is to pull your head out of your *SS. Rodrigo Looking forward to your posts.

Edouard

/ 2 0 1 3 -0 1 -1 7

Thanks for the article ! I cant wait to read the one about the matrices.

hiceka

great article!!

/ 2 0 1 3 -0 2 -1 7

1. Math for Game Programmers 05 Vector Cheat Sheet | Higher-Order Fun 2. Matematika (pontosabban geometria) jtkprogramozknak MolePlex 3. .NET i jin ... : Odkazy z prohlee 7.9.2012

Leave a Reply

Name *

E-mail *

higherorderfun.com/blog/2009/06/07/math-for-game-programmers-01-introduction/

3/4

14/10/13

Website

Submit Comment

CAPTCHA Code

higherorderfun.com/blog/2009/06/07/math-for-game-programmers-01-introduction/

4/4

- Ancient Indian MathematicsUploaded byभारतीय संस्कृति
- Answer Key to for Young Mathletes 6Uploaded byMrs. Lin
- C maths for class 8 sample questionUploaded byMeghraj Sapkota
- middle school syllabus - moynihanUploaded byapi-98377177
- Centers of RotationsUploaded bysamjshah
- dot-to-dot puzzle simplifying algebraic expressionsUploaded byrohmi julia
- sdarticleUploaded byArash Farahani
- cv08-14-07Uploaded byWahyuddin
- mathematicsUploaded byRowin Mark Sabornido
- math 012BUploaded byDanny L Ralston
- jawapan matematik k2Uploaded byJason Yeoh
- f5 Maths AnswersUploaded bywww.tuitionking7637
- derfUploaded byRyas Tz
- Sof Nso Imo Syllabus Class 4Uploaded bymurali.trichy
- Example-on-CM-and-CR.pdfUploaded byduan
- sec1_mod7_cag_tnh_71713Uploaded byRob
- sbd0332.46.06.1A4CF.000100Uploaded byZaphod
- MATHEMATICS-K-12-Curriculum-Guide-Grades-1-and-7.pdfUploaded byjohn jeric pioquid
- ael geometryUploaded byapi-268227372
- course syllabi 2015-2016Uploaded byapi-294397535
- A COMPARATIVE STUDY ON HUMAN ACTION RECOGNITION USING MULTIPLE SKELETAL FEATURES AND MULTICLASS SUPPORT VECTOR MACHINEUploaded bymlaij
- Summary of Yearly Lesson Plan for Mathematics Form 4 2016Uploaded bysiaorui
- CalculationUploaded byJaime Jose Gogo
- word skUploaded byMuslim Munawar
- Concept oUploaded byPame Soriano
- The task we do, the software we choose - 147-1-585-1-10-20141121Uploaded byHelder Durao
- Conics 2 CirclesUploaded byMarc Lambert
- top 10 greatest mathematiciansUploaded byapi-238348956
- Statics of ParticlesUploaded byChristian Villena
- Moment 1Uploaded byMagic

- Complex functions as mappingUploaded byAbdul Mustafa Razavi
- 17.4Uploaded byziedus
- 17.3Uploaded byziedus
- 17.2Uploaded byziedus
- 17.1Uploaded byDan Sinkiewicz
- 18.4Uploaded byziedus
- 19.2Uploaded byziedus
- 19.1Uploaded byziedus
- 19.5Uploaded byziedus
- 19.6Uploaded byziedus
- Linear Algebra for Game Developers ~ Part 2 - Wolfire Games BlogUploaded byziedus
- Getting Started With ThreeUploaded byziedus
- Tetris Tutorial in C++ Platform Independent Focused in Game Logic for Beginners _ JavilopUploaded byziedus
- 940 GridUploaded byziedus

- DETECTOR DE HUMO-ALK-V_02-2014.pdfUploaded byArthur Alexis Buitron Durand
- RadiocarbonUploaded by123nicky123
- Castaneda ComprehensiveUploaded byasdffff ffffxcvgs
- Kf Ball Iom Series WbUploaded byXing Chen
- Simplified Micromechanics of Plain Weave CompositesUploaded bys_padu3003@yahoo.com
- Seismic Design NBC 105.pptUploaded byShyam Awal
- Cement T5 TheoryUploaded byslchem
- AwarenessUploaded bydellyard10
- GMS Instruments B.v. Product CatalogueUploaded byAnticristh6666
- AUTOVALVUploaded bycool_rd
- 7000 McpUploaded byImad Aghila
- SCV SeriesUploaded byBehnam
- Pipe Mto ReportUploaded byTrishul Nath Pallay
- Stratigraphy&Correlation_2014.pdfUploaded byTural
- Hale Uav DesignUploaded byJacob Issa
- Chapter 13 Chemistry and Chemical ReactivityUploaded byOlivia
- DePalma Free Energy and the N MachineUploaded byinick_69
- MEASUREMENT OF ENTRANCE SKIN EXPOSURE (ESE) VALUE WITH VARIOUS TYPES OF FILTER MATERIALS ON MOBILE X-RAY MACHINE USING EXPOSURE FACTOR OF CHESTUploaded byIJIRAE- International Journal of Innovative Research in Advanced Engineering
- Analog Rep 2Uploaded bysadyehclen
- Vilem Flusser - The Photograph as Postindustrial ObjectUploaded byjuguerr
- 2012-07-07_12.19.22_Curriculum Vitae2_2Uploaded bymajidpc
- 10.1007%2Fs00449-012-0874-2Uploaded byWaleed El-azab
- Primary Frca Help Plain UpdatedUploaded byDavid Pappin
- Buen artículoUploaded byAnonymous Vbv8SHv0b
- Ran Huo- Decaying dark matter and the CMB and LSS power spectrumUploaded byGylkinn
- Amstrad CPC6128 Service ManualUploaded byb4sura
- Davit Arm Support Plate CheckUploaded byHafizi HZnumismatic
- Tutorial-III Math 1005Uploaded byYatharth Goyal
- vjetroelektraneUploaded byhary06x
- Data AcqusationUploaded byAnonymous x7VY8VF7

## Much more than documents.

Discover everything Scribd has to offer, including books and audiobooks from major publishers.

Cancel anytime.