I am kind of starting off in graphics theory, there is so much to learn.
Firstly, it is so difficult even choosing the software to use, for example, can Blender do everything that say Maya and 3ds Max can do. And what even is the difference between Maya and 3ds Max. How can one company release such similar products, what could be so different as to release two separate products that essentially do the same thing(as far as I can see)?
Is Blender a full 3D suite, can you 3D model, sculpt, animate, apply all lighting and shader effects?
As I said there are so many software packages and I still can’t find a definite answer to my questions, as far as I can make out most of it comes down to the interface and usability of the software rather than the features it has.
Secondly, what are the differences between say Mental Ray and Blender, now I have read up on Global illumination and the various algorithms such as path tracing, ray tracing and ray casting. I know a bit about C++ and know that these algorithms to represent light are actually fairly straightforward to implement compared to more approximate methods such as rasterization, which makes me wonder why Mental Ray is regarded as being such high end software that is the film industry standard. Does Blender implement full Global Illumination, why can’t Blender have the functionality that say Mental Ray has, if it doesn’t?
Finally how do you understand file formats and their relationship to a game engines renderer. For example you have many file formats and standards such as blend, obj, x3d, dae, 3ds, fbx, anim. Now these are all standards to represent data, vertex points, and colour points, effects and such, you could represent these as a table of ascii numerical values for example like the ppm format.
So how is a game engine able to understand so many different file formats, does the engine firstly convert these formats to a format that it can work with. Is it analogous to the different CPU architectures like ARM, X86, Z80, PowerPC. You need an emulator to be able to port software from one architecture to another for example, is this how a game engine is able to work with so many different exported model and animation formats?
So thanks for any help!
Maybe this belongs in the Game Engine forum, if so sorry about that!