DOC PREVIEW
Columbia COMS W4115 - A programming language for 2D games

This preview shows page 1-2-3-4 out of 11 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

G! A programming language for 2D games Rachit Parikh [email protected] Arora [email protected] Lianoglou [email protected] Ray [email protected]Game Development – Tedious and complicated affairLots of repetitive code and bookkeeping to ensure a proper functionalityFor example: check when 2 objects collide, check when a key is pressed, handle an event, …MotivationHence G!Specifically for 2D gamesAllow the developer to focus on game play and targetBookkeeping handled at the backendIntuitive commands, minimal keywords, high flexibilityImplementationBased on the GTGE LibraryLibrary takes care of a lot of basic gaming functionality but it’s still Java – lengthy, redundant codeCompiler Structure:ImplementationG! WalkerPhase 1: Initializing symbol tables and other data structuresPhase 2: Type checking expressions, forward declarations of variables and functionsG! TranslatorCode GenerationInvoke javac compilerG! v/s its Java Equivalent G! is free form, Java is notG! programs involve: variable declarations and assignmentsfunction definitions if-else statements while and for loops an asynchronous statement type “when”Its Java Equivalent Game class that includes:Class level declarationsInitializations and setting the gamefield withing initResources()An update method : the asynchronous event checksA render methodMain method that launches gameClasses to handle collisionsCompiler Goals Find the collection of different statement types in the programPreserve the scope of each of these collections.Know what to do with each of these objects in the collection typesStatic/ semantic analysis of the programGenerate a java equivalentOur solution Block GbScopeContainerFunction When if forLessons LearntLanguage development requires careful planning and analysisBefore using any library, be sure to study it inside outDeal with the harder things first. Keep the simple stuff for later.Better time management to avoid the sleepless nights before


View Full Document

Columbia COMS W4115 - A programming language for 2D games

Documents in this Course
YOLT

YOLT

13 pages

Lattakia

Lattakia

15 pages

EasyQL

EasyQL

14 pages

Photogram

Photogram

163 pages

Espresso

Espresso

27 pages

NumLang

NumLang

6 pages

EMPATH

EMPATH

14 pages

La Mesa

La Mesa

9 pages

JTemplate

JTemplate

238 pages

MATVEC

MATVEC

4 pages

TONEDEF

TONEDEF

14 pages

SASSi

SASSi

16 pages

JTemplate

JTemplate

39 pages

BATS

BATS

10 pages

Synapse

Synapse

11 pages

c.def

c.def

116 pages

TweaXML

TweaXML

108 pages

Load more
Download A programming language for 2D games
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view A programming language for 2D games and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view A programming language for 2D games 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?