Thursday 20 November 2014

Xiahou Ba Developments

There is still a way to go yet, but hopefully all of this stage, baking of normal maps (whether it be from ZBrush or Maya), texture maps, etc, will all be done this weekend.

These renders still have a few patches on them where the base-colour and very extreme colours are still showing through. These need to be fixed up as I go along. That bug I posted about below is still showing up from time to time even when on new layers so I'm not sure what is happening there. I've largely stopped bothering with layers now, but in doing so I'm getting problems and having to re-sculpt and re-paint some areas a few times over: the exact thing layers are supposed to work properly for.




He now has a tattoo on his arm of 'Jin', the kingdom that he is from in 'Dynasty Warriors'. There will be a few more features like this on his character, but mostly on his clothes now. Soon I'll likely start development on his platform that he will stand on for renders and later, 3D printing.

Xiahou Ba Polypainting Clean-up & Detailing - Polypaint Artefacts

Now that Xiahou Ba has his final 'in-game' meshes with the high resolution sculpt and paint information projected down to them, I have started giving him any finishing touches he needs. in the process however, I have ran into a problem regarding Polypainting and the use of Layers in ZBrush.

I have fixed this issue now, but thought I had better post it here to show how to fix the issue for any fellow Googlers.




The top image shows the issue at hand; there are artefacts where I have tried to paint over already-existing paint. The paint can be hidden but only when using 100% pressure over it, which obviously is not what is wanted.
  • The problem occurs because of the use of layers.
  • When you make a new layer, it will say REC to the right of the layer, signifying it is now recording what you do to your sculpture to add it to that layer. When you are done or want to change layer, you click the REC symbol to make it close the layer.
  • If you later decide you need to add more detail to an existing layer, this is where the problem occurs. Trying to paint over data that has already been laid out on that layer will cause artefacts because essentially there is an internal alpha map ZBrush is using to sort the layers of colour as efficiently as possible. This 'internal alpha map' is set up when the layer is closed, and only full pressure can add to it later.
  • To fix the issue you can do one of two things:
    • Bake all current layers down and don't use layers much if at all when polypainting.
    • Or the better option; if you decide you need to add something else to an existing layer, make a new layer above the current one, adding your detail on here instead. Once you're finished, simply merge this new layer down with the one that you want the detail added to. Its a bit of a strange thing to have to do, but that's how it is for now at least.

Monday 17 November 2014

Xiahou Ba Progression - Difference Between Baking Normal Maps in ZBrush & Maya

While I continue to develop my rendition of Xiahou Ba from Dynasty Warriors 7/8, I have been running some tests with the texture data I'm getting back from the high resolution sculpt in ZBrush. The UVs are holding up very well which I am pleased with, but I noticed some of his normal maps have a little to be desired still; they often seemed a bit faint or flat in areas, compared with the true 3D sculpture.

Looking into this problem online for a while, I started reading posts from people saying ZBrushs' normal map baking is very weak and they don't even use it for this reason. Instead, they use their original 3rd-party application for this job, such as Maya, Modo, Max, or XSI.

(Softimage XSI no longer exists as of 2015 by the way)

With this idea, I decided to bring a high resolution mesh from ZBrush (Sub-division Level 5) into Maya, along with its 'game-ready' counterpart. I then used Maya's 'Transfer Maps' tools under its 'Rendering' tool-set to bake the surface information from the high resolution mesh to the low resolution mesh in the form of a normal map. The results certainly are different, and it does seem Maya does produce slightly superior results:


This GIF animation shows the actual difference between the bake from ZBrush, compared with the bake from Maya. The frames are spaced 2 seconds apart, so give it time.

To accompany this, I will provide you with the high resolution bakes themselves. The top image shows the results split next to eachother, and the bottom images show the full results side-by-side.


From studying the differences between the two map bakes, both completely unadulterated, you can make some general observations straight off the bat:
  • Maya's bake contains stronger reds and greens, increasing the overall intensity of the normal map compared to that from ZBrush.
  • ZBrush by enlarge has a cleaner resulting map straight away, with less tangent distortion around the neck and bottom of the torso on the map. However it is important to point out at this stage that Maya can fix these issues with tweaking of its options; it is simply the case that ZBrush appears to be more optimised for this kind of work from the get-go.
  • ZBrush appears to have possibly distorted the baked results very slightly, most noticeable on these bakes around the nipples and under the arms. Despite saying that however, I'm still not 100% sure it really is distortion, and it could be Maya that has distorted the results instead and that they simply just look a bit better. This would all be down to the target search area set up in each software package accordingly.
In other words, it might be that Maya produces better, stronger results overall, but they require more tweaking around the edges and more tweaking of the options before each bake than ZBrush. It would theoretically be possible to also intensify and adjust the normal map bakes from ZBrush to get better results also, however this process can be very difficult to do without breaking the continuity of the maps (seams can suddenly become violently visible if you simply increase the contrast on the maps).




These GIF animations shows the results working on the actual model. Especially pronounced on the greyscale images, you can see that the baked map from Maya gives a much greater sense of 3D than that from ZBrush.

I would not call this testing conclusive. While Maya holds better results than ZBrush for this model, the same might not be true for other models. Also remember that both of these maps are made using somewhat standard settings in both applications, and so further tweaking of the options may produce better results and worse results in both software packages respectively. However the issue with ZBrush baking normal maps to look much flatter and less intensive is something that has no options to modify. For this reason alone, I think further testing with Maya might hold better results for my future projects.

Sunday 16 November 2014

Xiahou Ba Game-Ready Mesh Projection

After some of the previous disasters regarding re-projecting the high resolution details down to the 'game-ready' mesh, I decided to roll back a step, fix up the mesh a lot more, as well as splitting it up more appropriately, and completely UVing the model properly. The resulting model in Maya looks far better now, also cleaning up his hair and making sure it won't have hard jagged edges on the final model. His eyes have been properly constructed now, with a reflection layer over the eye balls themselves.

Unlike my previous 'Jo White' project, the shadows will be painted directly into the eye ball textures themselves (if required at all), instead of using an overlaying mesh to control this. Or at least this is my thinking at this stage of development. I may find through trial and error that the way I did it before is still a better way in general.

This is Xiahou Ba brought back into ZBrush as all of his separate meshes. The blue parts signify the areas that will not have anything baked out for them, and should be left alone. They are there simply to 'fill in the blanks' for reference purposes.



Note: Just randomly noting here, previous post had image enlargement LightBox functionality broken which was annoying enough, and now this image I just posted here keeps uploading with a horrid red tint to what should be neutral grey... no idea what's going on now. Oh well.