1. Forums
  2. Discord
  3. About Mapcore
  4. Patreon Supporters
  • Login
  • Register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • More Options
  1. Mapcore
  2. Discussions
  3. Off-Topic

What is the place of scientists/engineer in the gaming industry ?

  • laminutederire
  • June 21, 2015 at 11:51 PM
  • AtsEst
    • June 25, 2015 at 6:22 PM
    • #21

    Kinda studying physics - working as a lighting artist. So yeah pbr and all that good stuff, but the big thing here is the scientific problem solving approach that can really give you the edge.

  • leplubodeslapin
    • June 25, 2015 at 7:03 PM
    • #22
    Quote from jackophant

    @leplubodeslapin I still think there's some confusion here.

    I'm talking about a situation entirely separate from education. You could sweep streets all day for a living but still learn how to use Hammer, Blender, 3DSMax, Photoshop, etc, and still earn money from it without being employed by a company in the games industry.

    You could be 70, and retired from a bank job your entire life and rather than typically take up gardening as a retirement hobby, start making maps and assets and also earn money without being employed by a company in the games industry.

    As far as I'm concerned these days, all you need to "be in the games industry" is a computer with an internet connection and the will to make something for a game. There are plenty of resources online to learn how to do it all yourself, regardless of any education you do or don't have.

    I simply have a mild advantage of your average person because of what I chose for education, which I can guarantee was nowhere near as fruitful as you would be led to believe.

    Alright, yes you're right you can do that if you have enough talent. Others company do what valve does with its workshop by the way ? (just curious)

    That is not what i call a career but fair enough alright :P

    It's just that the original question was something like "As a scientist/engineer, how can i work in the game industry", I thought it was about being able to use your knowledge from your job and be able to apply it in games. And sometimes, you can't use them, you have to learn by yourself a completely different job. And yes, it's great to be able to make game content and see it sold in cs:go. But you have to admit that only very few succeed to do it without being a "true" professional in the game industry, no ? I might be wrong, I haven't checked all the portfolios of operation guys.

  • jackophant
    • June 25, 2015 at 7:19 PM
    • #23

    It's not so much game specific but people can make assets for the unreal engine market place as well as unity assets.

    imo valve have struck community sourced gold, it's a profitable model that other companies will want to implement to help expand their game at a faster rate than they are able to, while providing kick backs for the community members who create them.

    There will be more opportunities mark my words!

  • Klems
    • June 26, 2015 at 4:12 AM
    • #24

    Unless you're planning to be a somewhat specialized engine coder or consultant in some big company (or if you're working on the next Kerbal Space Program), I don't really see how a scientist/engineer background would really help. I mean sure, science is always useful, but that's true regardless of what you're working on.

    Simple trigonometry and geometry will always help any kind of 3D artist, but you don't really need a math degree to do those. Having a physic degree would probably help a sound designer, but the most important part is actually being able to design sounds, not solving equations about sounds.

    Unless you were to code your own engine... Even then, depending on your engine, there are several free and efficient physics engines available. Most graphics features of modern game engines are well documented. A math/physic level of bac+1 (first year uni) would probably be sufficient (as long as you know how to code of course).

  • AlexM
    • June 26, 2015 at 6:49 PM
    • #25

    Some programming jobs at game company's require more of a science background than others. Rendering and AI being 2 of the big ones.

    I worked for a few years at research companies that basically just publish science papers. Mostly in robotics and artificial intelligence. The robotics stuff was actually pretty applicable because you are working in simulations. That means you are basically working with a game loop and need to focus on stuff like constant multiplier in your big O time. A huge fallacy schools teach you is that the constant doesn't matter, that's only partially true for offline calculation. A constant multiplier of 2 could mean a game running at half the framerate.

    So if you have a background in simulations then transitioning into the game industry should be fine. If you do massive offline calculations you might be able to work on the pipeline side of things. For instance taking in unoptimized terrain patches and running an algorithm on them to transform them into a format that works well on a specific API/Hardware configuration.

  • laminutederire
    • June 27, 2015 at 12:55 PM
    • #26

    @AlexM which of these two fields were you working on?

    That's what I was hoping to do, behind the curtains, working on the base of engines, in order to optimize them the most. Am I wrong to think that it could be kinda like the project I worked on this year, in which I tried to optimize an algorithm, which built bus lines based on statistics?

    @Klems you are saying that on the game developing part, there is not much to do, but in the development of engines game developers use there are some opportunities ?

  • Klems
    • June 27, 2015 at 2:51 PM
    • #27
    Quote from laminutederire

    That's what I was hoping to do, behind the curtains, working on the base of engines, in order to optimize them the most. Am I wrong to think that it could be kinda like the project I worked on this year, in which I tried to optimize an algorithm, which built bus lines based on statistics?

    I think what he meant is that, regarding the code structure, simulation are very close to games. If you made simulations it shouldn't feel too different. I tend to agree.

    Quote from laminutederire

    you are saying that on the game developing part, there is not much to do, but in the development of engines game developers use there are some opportunities ?

    With just your degree this is unlikely. You should know how to write good code first and foremost. If you know how to code, you can do anything. If you have a scientific background it shouldn't be too hard to code cool stuff (AI, advanced rendering, physics, etc), as you will have the tools required to do such things. Most coder struggle with simple maths, but you won't, and that's a huge plus.

  • laminutederire
    • June 27, 2015 at 6:03 PM
    • #28

    @Klems I see what you mean. It's also that mathematics are powerful when you want to simplify calculus, I learned that the hard way, my initial code was theoretically taking 3 years to finish on an IBM supercomputer, then the optimization, which is based on physics, allowed me to have it take a few seconds. However the code is ugly in python, don't know if this language will be of any use ?

  • AlexM
    • June 27, 2015 at 9:53 PM
    • #29
    Quote from laminutederire

    @AlexM which of these two fields were you working on?

    That's what I was hoping to do, behind the curtains, working on the base of engines, in order to optimize them the most. Am I wrong to think that it could be kinda like the project I worked on this year, in which I tried to optimize an algorithm, which built bus lines based on statistics?

    @Klems you are saying that on the game developing part, there is not much to do, but in the development of engines game developers use there are some opportunities ?

    Was it a realtime algorithm or an offline algo? The thing about optimizing an algorithm is that sometimes certain optimizations can have a negative effects on a real time system. Specifically if you optimize by representing data in a linked list rather than a vector or some type of non-contiguous data strcuture. In that case you are scarificing potential cache optimizations. Maybe the tradeoff is worth it, maybe it isnt but it's certainly something you want to keep in mind.


    Before I was in games I was in robotics and AI. Doing stuff like image recognition etc.

  • laminutederire
    • June 27, 2015 at 10:21 PM
    • #30

    Offline, it was determining line by line, which line was maximizing the number of passenger, this with two matrix. But I have mainly everything to learn I think.

    Are data structures any easier when you have learned mathematical structures?

    Wow that's awesome, I'm curious now, what laboratory? So that I know where to search publications.

  • AlexM
    • June 28, 2015 at 12:41 AM
    • #31

    I worked at ATR in Kyoto Japan. Here's their website http://www.atr.jp/index_e.html . The other place I worked was on a project for the University of British Columbia but I dont think it's published yet.

    I'm guessing data structures are probably good when you know mathematical structures. I dont have a formal math background so I don't tend to know the proper terminology for math. Are math structures like sets and rings? If so then I would say it certainly helps a lot. I suppose the one area that doesnt cross over and that isn't even addressed all the time in computer science are which structures are easily processed by computer hardware. The short answer being that arrays are the most friendly in regards to speed.

  • laminutederire
    • June 28, 2015 at 9:17 AM
    • #32

    Thanks :)

    Yes sets, groups, rings, fields, manifolds, vector spaces and algebra. I supoose there are more of them, I only met these ones!

    Is this due to the way components are calculating? If so is it really possible to speed up processes by writing in a language the closest to machine code? I heard about someone having a phone with an OS comparable to the first android, but it took a few ko and it was so fast that the processor (not a graphic card) could refresh pixels at an alarming rate, are these considerations important in the game industry?

  • AlexM
    • June 28, 2015 at 1:31 PM
    • #33

    The reason arrays can be faster is because of the way cache works on a computer. If you are iterating along an array the elements are contiguous in memory. This means when you want element n from the array the computer is probably grabbing element n and the next m elements and putting them in a cache line. So when you need element n + 1, the computer already put that element in cache when you fetched element n. Now it can get element n + 1 from cache instead of RAM. Getting an item from cache is much faster than RAM. A linked list on the other hand could have each element in a completely different place in RAM which means when you pull the value, unrelated data will be loaded into cache and you will have the slower RAM access speed far more often than when using an array.

    Does that make sense?

    As for speeding up a process by writing in a language closer to machine code. I personally would say that the language doesn't matter as much as being able to control memory layout of structures and types. Also being able to explicitly control when the destruction of objects occurs.

    The issue with higher level languages is that most of them attempt to automatically handle object destruction for you. If they do cleanup at a bad time you will have framerate issues.

  • laminutederire
    • June 28, 2015 at 4:15 PM
    • #34
    Quote from AlexM

    The reason arrays can be faster is because of the way cache works on a computer. If you are iterating along an array the elements are contiguous in memory. This means when you want element n from the array the computer is probably grabbing element n and the next m elements and putting them in a cache line. So when you need element n + 1, the computer already put that element in cache when you fetched element n. Now it can get element n + 1 from cache instead of RAM. Getting an item from cache is much faster than RAM. A linked list on the other hand could have each element in a completely different place in RAM which means when you pull the value, unrelated data will be loaded into cache and you will have the slower RAM access speed far more often than when using an array.

    Does that make sense?

    As for speeding up a process by writing in a language closer to machine code. I personally would say that the language doesn't matter as much as being able to control memory layout of structures and types. Also being able to explicitly control when the destruction of objects occurs.

    The issue with higher level languages is that most of them attempt to automatically handle object destruction for you. If they do cleanup at a bad time you will have framerate issues.

    It doesn't make sense, but I understand why it is better now!

    Destruction is that costly ? Why?

  • AlexM
    • June 30, 2015 at 4:20 PM
    • #35

    Destruction itself isn't SUPER costly. When you do a whole batch of destruction it can be costly. Also when you have a complex system managing object lifetime (.NET/JVM garbage collector for instance) there starts be some overhead.

    The main issue is that the GC has a different set of rules for when it runs it's cleaning function than you might want with a realtime system. Say you have a batch of entities that are now dead, you might want to wait for a point where you are loading a level to delete them all from memory. The GC isn't smart enough to know this and will probably do a cleaning at some point during gameplay causing a frame hitch.

    The timing and explicit control needed for real time systems sometimes doesn't work well with a generalized GC. This is more for low level stuff like heavy data manipulation though. At the gameplay logic level a GC is generally a viable solution.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!

Register Yourself Login
Discord

The Mapcore Discord is our lively IRC channel of the 2000s reborn. Chat about level design, gaming, and more.

Latest Posts

  1. Tangerine

    Harry Poster
    July 18, 2026 at 11:10 AM
  2. Any of the old guard still around? D:

    Warby
    July 12, 2026 at 8:23 PM
  3. About our archived forums

    Thrik
    June 30, 2026 at 2:12 PM
  4. Mapcore Discord

    mason_fan123
    June 24, 2026 at 8:52 PM
  5. [CS2] Valley

    Serialmapper
    June 22, 2026 at 11:56 AM
  6. Free Music / SFX Resource - Over 2500 Tracks

    Eric Matyas
    June 18, 2026 at 12:32 PM
  7. Pango [WIP]

    Elowen
    June 11, 2026 at 10:13 AM
  8. [CS2] Dvina

    Jeremy Rivera
    June 11, 2026 at 10:03 AM
  9. Bridges 2.0 by NEXSIDE, MAP SHOWCASE. ( Steam Workshop )

    MrTrane18
    June 1, 2026 at 7:46 PM
  10. Classic Maps Reborn For CS2

    SillySpaceCat
    May 31, 2026 at 10:33 PM

Users Viewing This Thread

  • 4 Guests
  1. Privacy Policy
  2. Contact
Powered by WoltLab Suite™