Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but...

22
Programming Languages for Game Development Umut EFİLOĞLU

Transcript of Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but...

Page 1: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

Programming Languages for Game

Development

Umut EFİLOĞLU

Page 2: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

What are you; and what do you want?

● Programming game, designing game, or even 3D modeling?● Are you starter?● Do you really have a target?

Page 3: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

True Questions

● What is the best programming language for platform XYZ?● What is the language that is the most used by game studios?

Page 4: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

C++

● Adds OOP concept to C programming language● Ability to control very low-level system components

○ Very fast running time

● Xbox and Playstation platforms use this programming language a lot● Advised for futuristic games

○ Essential for people who aim big companies

Page 5: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

https://www.indeed.com/viewjob?jk=e8333c49ead6db00&tk=1e4uf96ir51h3800&from=serp&vjs=3

Page 6: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

C#

● Basic for every game programmer○ High level of convenience - Easy to use

● Unity3D uses it● Ability to create any type of game● Easier to learn than C++

Page 7: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

https://www.indeed.com/viewjob?jk=76065d5bc408d1f8&tk=1e4uftstq51h3800&from=serp&vjs=3

Page 8: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

Java

● Same OOP principle as C++, but supports broader systems○ Runs on Java Virtual Machine(JVM) and can be executed on any system.

● Primary language to develop Android games○ Open source third-party modules like LWJGL

Page 9: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

Web Languages

● HTML5, CSS3, SQL, JavaScript● Obviously, helpful for browser-based games● Making games for browsers are different from making games for consoles

○ You will need SVG or WebGL if you need 3D graphics

● Flash is dying

Page 10: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

https://www.indeed.com/viewjob?jk=ff5c10f4ad9dd05e&tk=1e4ugvgvr51h3800&from=serp&vjs=3

Page 11: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

UnrealScript

● Native scripting language of Unreal Engine● Supports all major gaming platforms like Windows, MacOS, Linux, SteamOS,

Android, and Playstation VR.● Ability to develop games on Unreal Engine● Example games;

○ Arkham City, Fortnite, Bioshock, Devil May Cry.

Page 12: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

Python

● OOP techniques like C++ and Java● The Pygame Framework

○ Prototype games insanely faster

Page 13: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

https://www.indeed.com/viewjob?jk=1158f594db8559f8&tk=1e4uf96ir51h3800&from=serp&vjs=3

Page 14: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

Lua

● Simple language structure and syntax● Lots of modern game engines utilize Lua as primary game design

programming language○ CryEngine, Corona SDK, Gideros Mobile etc.

Page 15: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

https://www.indeed.com/viewjob?jk=e20c49b187f92367&tk=1e4ugpmcj51h3800&from=serp&vjs=3

Page 16: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

Objective C

● Best choice for developing games in iOS platform○ Blends syntax of Smalltalk and C

■ Offers convenient solutions for building iOS games○ Ability of OOP, which is required for faster rendering time

● Game engines like Core3D, Cocos2D use Objective-C, and enable to write C in an OOP style

● Not a futuristic choice but easy to understand game design language

Page 17: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

https://www.indeed.com/viewjob?jk=652f1a54c50dad65&tk=1e4ugkdca51h3800&from=serp&vjs=3

Page 18: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

Games on Servers

● Have you ever thought about MMORPGs’ backends?● Games like World of Warcraft and Guild Wars 2 use Java, PHP, or C# to

develop backend○ They make running games on servers faster opposed to using C or C++7

● Python, Ruby, or JavaScript can also be considered for server side

Page 19: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

https://www.indeed.com/viewjob?jk=119162ca271dcab3&tk=1e4uggdop51h3800&from=serp&vjs=3

Page 21: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

Resources

● https://www.lwjgl.org/

● https://unity.com/

● https://www.unrealengine.com/

● https://www.ubuntupit.com/best-programming-language-for-games-15-game-programming-languages-reviewed/

● https://www.tr.freelancer.com/articles/programming/what-is-the-best-programming-language-for-games

● https://www.indeed.com

● https://www.goodreads.com/

● https://www.youtube.com/

Page 22: Languages for Game Programming Developmentbgenc/courses/bco653/...Same OOP principle as C++, but supports broader systems Runs on Java Virtual Machine(JVM) and can be executed on any

THANK YOU! :)

Any Questions?