MK32 battleship 2

Thinking about improving the Artwork in Vega Strike, or making your own Mod? Submit your question and ideas in this forum.

Moderator: pyramid

pyramid
Expert Mercenary
Expert Mercenary
Posts: 988
Joined: Thu Jun 15, 2006 1:02 am
Location: Somewhere in the vastness of space
Contact:

Re: MK32 battleship 2

Post by pyramid »

Maybe I am mixing up the terms, but it can be seen in the picture that the parts that are facing away from the sun are darker than parts that are facing the sun. And this is not coming from textures, which you will find when rotating the ship along its axis. The current shaders do not cast shadows, this seems to be simply that the faces whose normals are away are multiplied with lower diffuse values. That is the effect seen here and probably due to the size of the ship it seems like AO.
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Re: MK32 battleship 2

Post by chuck_starchaser »

Ah, you're talking about standard diffuse illumination. That I take for granted; but what I noticed in that screenshot is that there is something that looks like ambient occlusion. If you look at the bases of those fins, where they meet the hull, there's subtle but noticeable darkening, which looks very good.
pyramid
Expert Mercenary
Expert Mercenary
Posts: 988
Joined: Thu Jun 15, 2006 1:02 am
Location: Somewhere in the vastness of space
Contact:

Re: MK32 battleship 2

Post by pyramid »

Ah that. Now, that I look on the textures, I see that you have a very sharp eye. There are indeed some spots on the textures that are darkened. I thought they were dirt accumulations, but now I see they are meant to be AO fakes.
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Re: MK32 battleship 2

Post by chuck_starchaser »

If they look like dirt it means that the ao is burnt into the diffuse texture. That's wrong; it should be in the glow map; but
you'd only notice the problem when seeing the ship dynamically in-game; not in a still image.
Typically, the glow map should be the sum of actual glows (windows, lights, engines) plus...
( ( AO*0.15) + lightbakes ) * diffuse
The AO*0.15 term represents ambient illumination.
So, in GIMP, one can make a "light.xcf" starting with glow layers, blending light bakes in additive mode,
then put the AO on top but, also in addition mode, but with like 15% blending ratio, and save to a light.png.
Then, the glowmap.xcf starts with the diffuse texture, and gets light.png as a layer on top, in multiply mode. Save
that as the final glow-map.

It makes a lot more sense for AO to be part of the glow map, as ambient self-shadowing does not imply
that a piece of surface can't get direct illumination.
There CAN be a bit of AO in diffuse, but it should be subtle, very attenuated, like using gamma.
Deus Siddis
Elite
Elite
Posts: 1363
Joined: Sat Aug 04, 2007 3:42 pm

Re: MK32 battleship 2

Post by Deus Siddis »

I thought we were supposed to start providing and storing AO maps separately, instead of combining them with diffuse or glow maps? At least that's the impression I got from Klauss way back in This Thread.
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Re: MK32 battleship 2

Post by chuck_starchaser »

Deus Siddis wrote:I thought we were supposed to start providing and storing AO maps separately, instead of combining them with diffuse or glow maps? At least that's the impression I got from Klauss way back in This Thread.
In the masters repo, definitely you want to save the AO.
By the way, while waiting for CineMut, if you guys are interested, I have an updated shader working in PU that's a lot better than
the last one I contributed to Vegastrike. It's nowhere near CineMut level but it does use the plain AO bake. All you have to do is
put the AO in the glow texture's alpha channel, and the shader takes care of modulating specular by the square of it, diffuse by
its square root, and then multiplies it by the ambient light and adds it to the emissive component. Also, it takes ambient light
from the environment map, by doing a fetch in the direction of the normal. Check out PU and see if you like it.
Also, this shader allows you to tell it whether the AO is in the glow texture's alpha channel or not. If it sees that the xmesh says
that glow color alpha is 1.0 it assumes there's no AO; but if it sees glow alpha of 0.9 or less it then reads the AO from the alpha
channel. It does the same trick for shininess: If you leave spec alpha in xmesh at the default of 1.0, it computes shininess from
specular intensity the way the current shader does. If you put your own shininess in spec alpha, just make spec alpha in xmesh
0.0, and the shader will then use the value from the alpha channel.
Post Reply