"Must-Learn" Languages

Started by
31 comments, last by Hodgman 11 years, 8 months ago
I'd boil it down a bit:

  • C
  • C#
  • JavaScript
  • SQL
  • Haskell


I'd be okay if some of these were swapped with others. C++ could go in for C, Java or Python for C#, F#, OCaml or a lisp dialect for haskell. Scala for... Scala's not a good replacement really; it kinda satisfies the modern OO and functional language areas but is 'odd' enough to not translate super well to each.

And you should know enough HTML, CSS, and regexes to make stuff work. These will put you in a solid, well-rounded future. Assembly and Prolog are cute but you can get away without them. You can even get away without 1-2 of the items in this list and still be a successful, productive programmer.
Advertisement

[quote name='3Ddreamer' timestamp='1344865954' post='4969064']
husilardee,

That is an interest point.

If the developer wants to have his game cover two different APIs, then is there really a single shader language which will allow it?

3Ddreamer


CG works with both OpenGL and D3D, (I'm not sure where it stands featurewise these days but nvidia is usually decent at keeping their stuff up to date)
[/quote]


After a little research, am I correct on this: CG (or Cg?) requires a compiler with an OpenGL or DirectX shader program? The vertex or pixel shading might be very important for certain things, huh? ...indispensible perhaps?. Would creating a laser beam and other types of light beams for a game be something which could use this? Somebody I know is very experianced in graphics and reminded me a few times to learn about vertex shaders. I am still trying to understand the applications of it.


3Ddreamer

Personal life and your private thoughts always effect your career. Research is the intellectual backbone of game development and the first order. Version Control is crucial for full management of applications and software. The better the workflow pipeline, then the greater the potential output for a quality game. Completing projects is the last but finest order.

by Clinton, 3Ddreamer

That's a good point about the importance of 'shader languages' as a category.
Everything that happens on a GPU is controlled by shaders (vertex/pixel/compute/etc), so to learn the GPU side of graphics programming, you have to learn one.
Vertex shaders are typically used to convert 3D points to 2D points on a screen, which the GPU then uses to draw triangles. Pixel shaders are used to calculate the colour of each pixel covered by a triangle.

nVidia Cg can be used in both D3D and GL, but nVidia Cg is almost exactly the same as Microsoft HLSL (they created the language in cooperation, then both used different names for their implementations of that language). On every cross-platform game that I've worked on, we've written the shaders once and compiled that code as HLSL for D3D, and also compiled it as Cg for GL - with a few #ifdef's here and there for D3D/GL differences. That's how simmilar the two languages are.

This topic is closed to new replies.

Advertisement