• 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

    • "We also highlighted that the Long-Term Servicing Channel (LTSC) version Windows 10 22H2 is also reaching end of support on that date." what? there is no LTSC version of Windows 10 22H2.
    • CrystalDiskInfo 9.7.1 by Razvan Serea CrystalDiskInfo is a HDD/SSD health monitoring utility. It displays basic HDD (also SSD and USB-HDD) information, monitors S.M.A.R.T. values and disk temperature. It will also display the S.M.A.R.T data as a list so you can see the specific issue that a hard drive may have. It provides a health rating based on your drive’s SMART status, plus will list its temperature, enabling you to see just how hot your drives are running. As various factors approach thresholds of danger, CrystalDiskInfo will alert you, letting you know it's time to make backups while you still can. CrystalDiskInfo 9.7.1 changelog: Fixed the problem that some SATA SSDs misjudged the remaining life as 0%. Improved support for aigo PSSD P6 Improved support for Lexar SSD Improved support for SanDisk SSDs Updated language file (Traditional Chinese, Korean, Dutch) Download: CrystalDiskInfo 9.7.1 | 5.8 MB (Open Source) Download: Portable CrystalDiskInfo 9.7.1 | 7.8 MB View: CrystalDiskInfo Home Page | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Zen Browser 1.14.8b is out.
    • There are numerous Linux distros that are actually geared more to beginners and less tech savvy users. Take advantage of the fact we have different Linux distros that target certain kinds of users.
    • Because that is who Neowin uses.
  • Recent Achievements

    • First Post
      smileyhead earned a badge
      First Post
    • One Month Later
      K V earned a badge
      One Month Later
    • Week One Done
      K V earned a badge
      Week One Done
    • Dedicated
      CarlosABC earned a badge
      Dedicated
    • One Month Later
      solidox earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      639
    2. 2
      ATLien_0
      241
    3. 3
      Xenon
      174
    4. 4
      neufuse
      155
    5. 5
      +FloatingFatMan
      123
  • Tell a friend

    Love Neowin? Tell a friend!