• 0

Video Game programming research topic


Question

I am in university for programming video games courses. My teacher want us to research our own a technology topic related to programming video games.

 

Any suggestions what topic should I research? What's a good tool that video game programmers use right now to program?

For instance, they use C++, C# to code most of Xbox/PS games or what else do they use instead?

 

14 answers to this question

Recommended Posts

  • 0

I think Microsoft did came out with some thing like that long time ago.  It's for endorsing game developers.  But the engine looks a bit like it was for kids to play with.  I kinda forgot the project name... has the X or something in the name.  I would love to do this kind of research too but been kinda lazy.  Developing game is fun I think..   Especially the game engine.  If you come out with a good one, you can make good games.  I see a lot of company did that.  Would love to hear your assignment comes out at the end though.  Will check on your progress.

  • 0

I am not sure I understand the question. You want examples of technologies used by video games? Like, programming languages, network protocols, graphics APIs, operating systems, etc.? It's a pretty vague request, Windows is a technology used by video games that are built for Windows, for instance, but it has little to do with video games in and of itself.

 

Anyway, to answer your other question, most games are developed in C++, or at least the engine is. However many video games just re-use existing engines and so most of their specific code is in some other language; which one depends on the engine. For example Unity uses C#, Unreal has its own proprietary scripting language, some use Lua, and so on.

  • 0

It might help if you look up different game engines and see what they use. Like Andre S said, you wont see much outside of C++ and C#. Minecraft uses Java but on consoles was ported to C++. As far as tool, most developers on Windows when working with C++ use Visual Studio. Engines such as Unreal Engine 4 even have integration for it built in. You could take a look at the Blueprints system in UE4.

  • 0

The word "research" here seems to mean "learn something about" as opposed to "do ground breaking research" or "survey some research papers to summarize the results"

 

Some ideas for you:

 

- Summarize the possible advantages of DirectX 12

- Analyze the source code of a major (old) game engine such as Quake 3 and suggest imporvements or find an old undiscovered bug.

- Contrast the capabilities of a modern desktop GPU shader unit against the leading mobile GPUs

- Applications of gaming technology to "real world" applications such as Augmented reality in medicine or VR Headsets for remote robitics etc.

  • 0

Looking at specific programming languages might be a distraction from learning about gaming but here is a summary:

 

By tradition, most games engines use C++ for maximum performance but C# can be close and there are quite a few C# (little used) game engines. Most tool chains for these two are based on Visual Studio.

 

Java is most famous from Minecraft which uses the LWGL game engine.  It would use a tool chain based on Eclipse.

 

Java can also be used for Android games but C++ is also an option there. Uses Android Dev Studio.

 

Objective-C is the main IOS lang using Xcode.

 

Xamarin C# can produce games for Android and IOS.

 

Just about every programming language has been used to make a game at one time or another including JavaScript for which a lot of 2D and 3D libraries exist for web games.

 

Many game engines include a "scritping langauge" designed to permit easier development of the game logic on top of the engine and C#, Lua, Python and Javascript can often be found in that role.

 

Most Windows (and Xbox) based games will end up with the triangles being pushed out by DirectX and most of the other platforms will use OpenGL

 

Learning about most of the above (as opposed to actually using them) will not illuminate very much about actual game programming but for example a good study of GPU shader programming will be quite useful.

  • 0

Honestly, I don't think the language is that important these days. Approach, design, and methodology are what's important. First of all, you need to decide what kind of game you're writing. That will dictate the components you need. For instance, say you're writing a map based game ala Civ V / EU4. You need to decide how you're going to represent the tiles or regions. Civ V clearly uses hexagonal tiles of equal sizes, whereas EU4 defines irregular shaped regions made from line segments (provinces) based on a colour keyed map similar to a GIS shapefile.

 

I'd start with a language you already know, thereby reducing the learning curve. Once you have a design up and running, you can familarise yourself with a graphics API such as OpenGL, or perhaps a wrapper like SDL.

  • 0

Some technologies used in games..... I am studying more towards business oriented software using languages such as Java / C#. I have made a simply snake game in Java and I know the Unity 3D engine uses a mix on JavaScript and C#. Although C++ is a very fast language to code in with many API's built in. But in terms of languages mostly C++ / C# .

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • But you don't own a licence. You are essentially renting it and give it back when they decided to revoke it.
    • All set as AI did the trick
    • NOPE! Too expensive still.
    • AnyDesk 9.5.7 by Razvan Serea AnyDesk is a fast remote desktop system and enables users to access their data, images, videos and applications from anywhere and at any time, and also to share it with others. AnyDesk is the first remote desktop software that doesn't require you to think about what you can do. CAD, video editing or simply working comfortably with an office suite for hours are just a few examples. AnyDesk is designed for modern multi-core CPUs. Most of AnyDesk's image processing is done con­currently. This way, AnyDesk can utilize up to 90% of modern CPUs. AnyDesk works across multiple platforms and operating systems: Windows, Linux, Free BSD, Mac OS, iOS and Android. Just five megabytes - downloaded in a glimpse, sent via email, or fired up from your USB drive, AnyDesk will turn any desktop into your desktop in se­conds. No administrative privileges or installation needed. AnyDesk 9.5.7 changelog: Fixed Bugs Fixed deadlock when updating chat server Fixed crashes caused by exceptions in internal communication layer Fixed crash when opening new monitor in Session in a new window Fixed crash on shutdown Fixed bug that allowed naming Permission Profiles identical to predefined Profiles Fixed bug that could cause licensed remote clients to show up as free Fixed visual bug that caused Set-Password button to show up when Unattended Access was disabled Fixed bug that lead to selecting the wrong initial resolution for webcams New Features Added command line option --record-screen to start a Screen Recording Other Changes Improved visual consistency in some list views Download: AnyDesk 9.5.7 | macOS ~14.0 MB (Free for private use, paid upgrade available) Links: AnyDesk Home Page | Other platforms | Release History | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • WUT?! Tell us you've never built desktop software without telling us you've never built desktop software... The chromium rendering engine is the content-rendering engine for "chromium-based browsers," but that does NOT mean there's a full-on UI underneath that is somehow bloating these products. The bloat is from the additional UI components that the browser vendor (Vivaldi) is adding atop the base package. Most chromium browsers customize the default skin/theme of the overall package so there's absolutely zero added overhead; it's really just a different CSS-based theme pack. Vivaldi, however, adds more than just a different skin; they add built-in extensions (that are managed by other built-in extensions), add other customization modules, and all kinds of other bloat -- and these add-ons are EXACTLY where the resource-hogging stems from. The mere fact it's a chromium-based browser has no impact on the matter. Lastly, power users literally DO notice resource-intensive applications -- they'll even be familiar with tools and widgets that expose those measurements the way only a power-user would! General consumers, however, would simply remark that their rig is sluggish and probably outdated and blindly upgrade to whatever the salespeople are hawking at the local computer store. General consumers wouldn't even upgrade their existing computer cuz they wouldn't know how to!
  • Recent Achievements

    • First Post
      Celilo earned a badge
      First Post
    • One Year In
      K.I.S.S. earned a badge
      One Year In
    • Week One Done
      solidox earned a badge
      Week One Done
    • Dedicated
      solidox earned a badge
      Dedicated
    • Week One Done
      Devesh Beri earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      444
    2. 2
      ATLien_0
      166
    3. 3
      +FloatingFatMan
      151
    4. 4
      Nick H.
      66
    5. 5
      macoman
      63
  • Tell a friend

    Love Neowin? Tell a friend!