Marc LeBlanc October 2006 Video Game Programming.

Slides:



Advertisements
Similar presentations
Everything you ever wanted to know about collision detection
Advertisements

Advanced Algebra/Pre-calculus Advanced Functions and Modeling Math Analysis AP Statistics Statistics and Probability/Discrete Math.
Code It. What do all of the following pictures have in common?
Project Lead the Way An Orientation American High School.
Are You Smarter Than a 6 th Grader? Review SOL Released Test Items.
Overview  About ETS: our students, our tools.  What’s New with TI-Npsire CAS?  Different Objects in the Same 2D Plot Window.  Why is Parametric 3D.
Department of Mathematics and Computer Science
Conditional Statements Introduction to Computing Science and Programming I.
Mathematical Sciences at Oxford Stephen Drape. 2 Who am I? Dr Stephen Drape Access and Schools Liaison Officer for Computer Science (Also a Departmental.
Guides to IT Career Seminar. Information technology (IT) refers to anything related to computing technology, such as networking, hardware, software,
Mathematical Sciences at Oxford Stephen Drape Access/Schools Liaison Officer Computer Science.
University of Hartford Computer Science Program The purpose of this slide set is to provide an overview of the Computer Science Program at the University.
MY SEMINAR PROJECT: COGNITIVE SKILLS BEING IMPROVED BY CODING By: Sivan Shriki.
Computer Game Science Christine Lee Mackenzie Poole Kimberly Gonzalez Amanda Dieu.
Sang Tran  Video game design refers to planning and it requires a lot of math because most of the work mainly refers to the mathematical formula and.
Mitchell Davis. A video game designer’s job is to entertain millions of people with a single product. They create games, and determine many things in.
Video game designer Sean verfaillie.
By: Malek Browning.  A video game developer is a complex job,but the basic goal is to develop a video game. There are multiple jobs inside of the title.
C++ Functions. 2 Agenda What is a function? What is a function? Types of C++ functions: Types of C++ functions: Standard functions Standard functions.
Computer Math AP Computer Science Computer Programming.
 Select your grade level  Click The Leaf Chronicle  Enter Username: NIE  Enter Password: nie2013.
© UNT in partnership with TEA1 7 th Grade Career Exploration Module Career Focus: Video Game Programmer Occupation.
Joe and Nidya. Education Although not required a Bachelor or Masters in Fine Arts can’t hurt in this profession. Math that is required: College Algebra.
Course Selection Options. Table of Contents (click the links below to skip to that section) For students currently in… Algebra 1 Functions Geometry Algebra.
Brandon Martin 5 th hour.  Video Game Designer Is one of the most popular, highly desired, though misunderstood jobs in this industry.  Game designers.
Computer Science Department 1 Undergraduate Degree Program Computer Science Chair Dr. Kurt Maly.
Overall, the article talked about the basic requirements a person who is interested in becoming an architect would need to meet, such as: – Math – Science.
1 WORKSHOP ON COMPUTER SCIENCE EDUCATION Innovation of Computer Science Curriculum in Higher Education TEMPUS project CD-JEP 16160/2001.
Gaming and Simulation Development Jason Witherell April 12, 2007.
Does this point lie on this line? The Point-Slope format (y – y 1 ) = m(x – x 1 )
CAREER COMPUTER SCIENCE CAREER INFO TECH CAREER MY CHOICE.
What does a computer program look like: a general overview.
Lesson 2 Results Score# of Students Emerging 13/30= 10% Approaching 28/30= 27% Proficient 316/30= 53% Advanced 43/30= 10% 37% 63%
CGDD 4003 THE MATH LECTURE (BOILED DOWN, YET LIGHTLY SALTED)
Design What’s it used for?. You see art around you every day. This product design uses block lettering and simple elements of design to grab your attention.
Game Programmer By: Lindsey Holcomb. What they do Game programmers work at the heart of the game development process. They design and write the computer.
By: Curtis Atchley ELECTRONICS ENGINEER. marcom.co.tt YOU HAVE TO GET A BACHELOR’S DEGREE TO BE A ELECTRONICS ENGINEER. IT TAKES 4 YEARS IN COLLEGE TO.
Major Academic Plan (MAP) Why study computing? What aspect of modern life has not been affected by computing technologies? Personal computers, game machines,
Major Academic Plan (MAP) Why study computing? What aspect of modern life has not been affected by computing technologies? Personal computers, game machines,
By: Brett Work. I Play Video Games I Think It Is Cool How They Make Them It Takes A Lot Of Work.
Welcome To cLICk (is a LInux Club). Who Am I? I am Karthikeyan Palaniswamy, a third year Computer Science Engineering student. A passionate software tester.
Overview About the company What is it? What it does? How does it affect us.
CSED101 INTRODUCTION TO COMPUTING FUNCTION ( 함수 ) 유환조 Hwanjo Yu.
The problem that needs to be solved is if a computer career is for me.
Cisco Software Engineer 1.Five plus years experience with server/X86 and Familiar with C, C++ and assembly programming. 2.General operating systems software.
GAME PROGRAMMER By: Aaron Ramos and Oscar Quiles.
New Curricula Proposal at FSMN by Miroslav Ćirić & Predrag Krtolica.
1 Web Search Who are the different people often involved in making a computer or video game? 2 Web Search/Thinkin g What is programming? Why would.
Major Academic Plan (MAP) Why study computing? What aspect of modern life has not been affected by computing technologies? Personal computers, game machines,
+ Game Design Careers. + Game Development Developing an interesting video game is a very challenging task. It usually takes many different people working.
Instructor: Chris Trenkov Hands-on Course Python for Absolute Beginners (Spring 2015) Class #003 (February 14, 2015)
BY: NILAN CHOWDHRY “Is a Computer Career for me?”.
Want to be talented in Math? Want to be talented in Math? Get help with and be awww.iPracticeMath.com Performer.
Next week is Computer Science Week…. You will take part in the Hour of Code; you will join millions of people across the world who will start to learn.
Course Selection Options and Suggestions The suggestions given in this presentation are just that – suggestions. You should take the math course that is.
CSC 108H: Introduction to Computer Programming Summer 2012 Marek Janicki.
Behavior trees & The C# programming language for Java programmers
Computer Science Information technology my career
Course Selection Options
GCSE COMPUTER SCIENCE Practical Programming using Python
About Me In the Video Game industry for 9 years.
Course Selection Options
Examples of Learning Activities
Careers in Engineering
How do you think computer science, art and maths are linked
Major Academic Plan (MAP)
The Most In-Demand Skills for Cloud Computing.
General Mathematics CST #2
What is Computer Science at Duke?
Science is fun. Science is fun. Science is fun. Science is fun. Science is fun. Science is fun. Science is fun. Science is fun. Science is fun. Science.
Presentation transcript:

Marc LeBlanc October 2006 Video Game Programming

About Me Started programming in 1980 (age 11) Making games ever since Working in game industry since 1992 Master’s in Computer Science

Mind Control Software San Rafael, CA 24 People: 5 Programmers 6 Artists 4 Game Designers 1 Musician/Sound Designer 2 Producers 3 Quality Assurance (Testers) 3 Miscellaneous

Our Games

Other Games I Worked On

What I Do Title: Chief Technology Officer Oversee all programming Hire programmers Write code Game design Help run the business

Time for Game Demo The Game: Arrrrrr! Not Yet Released

Discussion How were the two versions different? How does frame rate affect fun?

Here’s the Point: Good programming is the difference between “fun” and “not fun”

A Simple Example bool IsTargetInRange(float x, float y, float r) { // What goes here? } (0,0) (x,y) r

A Simple Example bool IsTargetInRange(float x, float y, float r) { float distance = sqrt( x*x + y*y ); if (distance <= r) return true; else return false; } (0,0) (x,y) r

More Succinctly… bool IsTargetInRange(float x, float y, float r) { float distance = sqrt( x*x + y*y ); return distance <= r; } (0,0) (x,y) r

However… bool IsTargetInRange(float x, float y, float r) { float distance = sqrt( x*x + y*y ); return distance <= r; } This is too slow. sqrt( ) is a very slow function. How can we get rid of it? (0,0) (x,y) r

The Optimization bool IsTargetInRange(float x, float y, float r) { float distanceSquared = x*x + y*y; return distanceSquared <= r*r; } This is what game programmers do. (0,0) (x,y) r

Skills Game Programmers Need Lots of Math! Geometry Trig Calculus Linear Algebra Discrete Math Probability

Skills Game Programmers Need Lots of Computer Science! Software Methodology Algorithms Computer Architecture Compilers Graphics

Skills Game Programmers Need Life Experiences Imagination Communication Passion Sense of Fun

Want to Be a Game Programmer?

Go To College!

Any Questions? Some Links: