![Razz :P](./images/smilies/icon_razz.gif)
Disclaimer! This a wall of text explaining what I'd expect from a modern game engine sorry! Coming from a professional game developer/3D artist. I'm always up to date with modern technology. I do have some idea of how TA3D works as I worked on it long, long ago when I was just a baby.
![Smile :)](./images/smilies/icon_smile.gif)
He's a few topics;
Standard rendering vs physically based rendering and Shaders.
Before I go into detail about all this high end stuff, it is possible that the shader being used can have a fallback shader that is more basic, to be run on mobile or weak PC's
Physically based rendering has taken over the games industry and has quickly become the standard. before we had texture maps like diffuse, normal, specular. Now everyone uses a system that replaces that completely. There's more texture maps but some can be combined if they are only using black and white values. They can be placed in the RGB channels. Here's the basic set of maps used now;
Albedo - basically just the colour with no lighting information (similar to flat diffuse)
Normal - same as always, used to fake lighting on the model surface
Roughness/Smoothness/Micro surface - these are all similar to a specular, as you'd expect it's a black and white image, in roughness's case, the value of white means almost no shininess on the model surface while black means shiny. Smoothness is basically the same but inverted and micro surface is just another name for them both.
Metallic - black and white map again, white being metal and black being anything else, wood, plastic etc. metallic values will render differently, usually making the surface shine in the colour of the albedo/environment. In this case the albedo is sometimes darker or just pitch black in the areas where it's metallic purely because the lighting will make up for it naturally.
Ambient Occlusion - another black and white image, white doing nothing, black values will shade the surface and block out lighting and shines giving the false sense of dark, shaded or non-lit areas on the surface of the model.
Height - not to be confused with something like a heightmap for maps. It's a similar concept though. In terms of 3D models, a heightmap can be used to parallax or tessellate the model surface giving it a visible surface height variation. It has a similar role to a normal map in a way. It can also be used to blend textures together, which is normally used for environments (rocky land blending into grass would look strange with a smooth transition, using a height map to blend the two textures can break it up in a more natural way.
Team colour - Specific to units this would be a black and white value again, white values would tint the model surface to the team colour.
Now, I'd expect to be able to apply all these maps to pretty much everything from a rock or tree to all of the units.
Animations vs scripted movement.
This one is a simple one, but being able to animate sequences in your modelling package and export that model with animations would be so much nicer than having to script it all. This would obviously then require the unit in question to be made specifically to animate this way but it'd be worth it.
Current Map formats vs todays standard.
I understand Ta3D needs to be able to use the old TA formats but it wouldn't hurt to have a new one too, right? So OTA used one huge image, then faked height with a heightmap that units would sit on. In TA3D, you've been forced to use that heightmap as the physical map and slap the large texture over it which does not match up a lot of the time, as the image was rendered in the camera angle of TA. What I suggest would be simple!
We have a separate map format, this would use a heightmap like normal, and a splat map along with 4/5 materials (materials in this case being a set of maps for something like grass, rock, dirt etc). To explain, the splat map is basically an image usually using the RGBA channels as masks which are used to say where the materials are. the image being RGBA can have up to 4 possible masks which means overall you can use 5 materials. A base material, then each extra material rendered based on those masks. The reason for this method is that now you can tile those materials so that you get a decent texel density. And blending them together with their own height.
As for water, just having a set water value like normal, render the water plane. at that height value. However I will say it might be an idea to have that water plane do a few things;
Tint! Anything underneath should tint in colour based on depth, and to the colour specified in the map's files. Each map can have their own water colors this way and the areas where water meets land would be more subtle rather than an abrupt, harsh line.Beyond that it wouldn't hurt for the water to have a normal map along with refraction and reflective surface reflecting the skybox, which I'm certain it does currently anyway.
Now the problem with all this is you will get an elastic terrain look which many games suffer from. The alternatives used in other games like Starcraft 2 and Halo Wars 2 would be a fully modeled map in 3D meshes. There should be no reason we can't combine both and have the ability to place 3D inanimate objects in the maps that will either do nothing but just be there and visible or block unit paths completely. Think modeled cliff faces etc. This might be harder to do as you'd have to implement it with pathfinding somehow.
Sprite based image vs particle systems.
TA's explosions in OTA were amazing! In 1997. Now we have particle systems. This might be something too complex to explain here so maybe it's an idea to look it up when you come to it. Something similar to the Unity particle system would be amazing, even if just a simple version of it.
Image effects
This one doesn't really need explaining. I want bloom, vignetting, colour grading, even tweakable contrast and saturation values! These are all things everyone is used to now and they would add so much to the game.
End note.
Now I'm not saying this all needs to be done, but it would go a long way in bringing modders and content creators to Ta3D, I for one would love to be spending my free time making awesome looking stuff for the game, but with it being so outdated I'd rather not, as it would not look all that great, and I wouldn't want to show it off.
![Sad :(](./images/smilies/icon_sad.gif)
I'm sure you've possibly looked into this but if not, take a look at Unity (my engine of choice) or unreal (a little more complex but more fully featured from the get-go)
Also Zuzuf if you made it this far, could I possibly have my username changed to MattyWS on these forums?
![Smile :)](./images/smilies/icon_smile.gif)