Monday, 20 April 2015
Back from China!
I'm back from my holiday in China! Soon this blog will resume as normal once I've settled back down here at home and had a chance to sort out my memories, stories, and many, many photos from the trip!
Friday, 20 February 2015
Xiahou Ba Long Overdue Work
So lately I have been doing a mixture or overtime at work, a lot of gaming, and getting everything ready for my three week holiday to China! So my personal work (Xiahou Ba project in this case) has taken a back seat lately.
Over the past few days I have been working on Xiahou Ba from time to time, as well as still thinking on how to make him for a 3D print, and my likely next project, Zhu Ran.
Most of the work has been still trying for the motion capture data to work, and I'm getting a lot closer with every try. I'm currently in the stages of what will *hopefully* be my last attempt with a good outcome. I have found one or two small issues with some of his textures which have been and are being ironed out. For example, on the area below his belly button the normal map went a bit wrong. Either that or the sculpt data did and I never noticed it until now somehow. I have fixed the issue in Photoshop, and it all looks fine there now.
I also spent some time in a separate file in Maya, making all of the final Mental Ray shaders that will be used on the final renders of Xiahou Ba. These also include sub-surface scattering shaders made for his head, eyes, and body; basically anywhere where his skin is visible. Initial testing on flat squares shows all shaders to be working correctly with no need for major work, however this may change once applied to his actual 3D model, especially in the case of the sub-surface scatter shaders.
Each Mental Ray material rendered on separate polygon squares.
The render quality here is somewhat awful if you can still tell on this shrunken image. The final gather rays are too few, leaving mottled, blotchy patches of light on him. Also the original render was pretty dark so I adjusted this in Photoshop later. The render is using a large HDR image for image-based lighting. The eyes are working pretty well now that I remembered to make the lens parts of his eyes not send or receive shadows. The renderer hates rendering his hair; takes ages :) I may revisit his hair in attempt to reduce the stretched, angled gradient look that you see when looking at Ba front on as seen above.
Much like my 3D work (and 2D work), my portfolio site redesign has also taken a back seat lately. I originally had plans to update the entire site in January 2015, but that never happened, although the site did make some significant developments during this time in local testing, including a custom-made JavaScript gallery and PHP messaging form contact page. The new release time period for the new site is now the end of this month, February 2015.
Labels:
Hair,
Materials,
Mental Ray,
Texturing,
Texturing Eyes,
Xiahou Ba
Tuesday, 23 December 2014
Ongoing Xiahou Ba Rigging Failures
Bare in mind before reading this, this is the 3rd time I've pretty much typed this issue out trying to get help to fix it from Polycount and Area forums.
The issues are less than when I previously posted thankfully, however they are still far from correct.
The stage I am at now is simply putting the motion capture skeleton into T-pose to match my characters pose, keyframed on frame -1 so that it doesn't affect the data in any way. This T-posed version is the duplicated to make sure both rigs are exactly the same, but of course the duplication does not keep its keyframed animation data.
Using Maya's built-in HumanIK system for retargeting animation data, I create a new skeleton rig for each skeleton. Then you simply tell the character's skeleton (the duplicate), to follow the original motion capture skeleton as a source of data. This works, but goes very wrong.
Above shows both the original and duplicate rig on top of one another. I have also told the major joints to show their local rotation axis to show that they are set up correctly and are both identical to one-another. You can also see HumanIK believes there to be no problems with either skeleton.
Above here shows you what happens when I tell my character's skeleton to follow the motion capture data. The skeleton of my character becomes all bent out of shape. Below shows you a better rendition of what is going wrong here:
This is very frustrating. The issues looks like it must be caused by a difference in joint rotation between the two skeletons, but there isn't one. I'm not sure why the skeleton moves its root (pelvis bone) up a bit from where it should be too, or why the wrists are bending when the animation is played instead of the elbows as they are on the motion capture data. Both skeletons are set up anatomically correctly in the HumanIK editor, so surely this should not happen either.
All I can do is wait for someone with better knowledge in this to get back to me and hope its a simple fix. So close, yet so far.... I must be missing something really silly!
Labels:
HumanIK,
Maya,
Motion Capture,
Retargeting,
Rigging,
Xiahou Ba
Monday, 22 December 2014
Xiahou Ba Rigging Failure #1
Now that I have started my Christmas holidays for the year, I have decided to proceed with the final stages of my Xiahou Ba project. This involves any ironing out of texture issues I may still find, but mostly rigging and rendering. I originally planned to be able to apply free downloaded motion capture data to this model from Mixamo to use simply to make my characters more lively, without having to go into the massive effort of animating myself; something that I am not great at.
To do this requires bringing in the motion captured file with my own project, and retargetting the animation from their skeleton to my own. The process sounds simple enough, but from my past work at university I already knew this would be a nightmare.
I set up both of the rigs as defined HumanIK rigs for Maya to reference, then told my character to follow the original animation of the imported skeleton. While this process worked, the results were far from satisfactory.
As you can see, there is a lot of stretching and generally broken animation here. It appears to fix this the model would have to be standing in the same stance as the rig from which the animation is being referenced. While this is not impossible to do, it will take a lot of time and possibly cause some problems, but it will be the next step now for this project. I would very much like to get this working as it should.
Monday, 1 December 2014
Xiahou Ba Test Renders
With the textures (probably) finally finished, I decided to do some render tests using Mental Ray in Maya 2015. The shaders are all mia shaders but his skin is not a sub-surface scattering shader because I was having issues trying to get him normal maps to render nicely on it. This is an issue I will spend more time with later on with final renders.
There are several things that need changing on these render, but very few of them now I think relate to the actual data he is created with, such as his model and textures. The faults are with the techniques I used for rendering each area of him, and am I aware this lighting setup has much to be desired also.
His eyes have lenses built over them as a separate layer of polygons; a standard practice in current / next generation characters. This 'lense' layer also have an alpha texture that creates a gradient from transparent black, to fully transparent. This simulates shadowing on the eyes no matter what angle you're at, giving them a deeper, more realistic feel. However, it might be that for proper renders (so not real-time, in-game scenarios), that this technique is not required. In this render it is present, but the way the lighting casts off of it gives the eyes a dull, dead look compared to what was desired.
Also each individual shader was set up reasonably quickly, some of which using the presets that Maya provides for things like 'Chrome', 'MattePlastic', and so on. The downside to this is that some maps, often specifically the specular maps, haven't had much of a chance to shine. You can see them present in the shirt and shorts the most, but other areas such as the skin really needed them to have a boost. This render below does show them off somewhat better simply because he has no shirt on:
Saturday, 29 November 2014
Xiahou Ba Final Model Production
Over the past week and a lot over this weekend, I have been working on Xiahou Ba's textures, cleaning them up and adding a lot more detail through the use of lightmaps, cavity maps, Nvidia's xNormal plugin for Photoshop, various custom Photoshop brushes, and so on. The model is finally starting to come to an end before it goes into rigging and animation / posing stages for final renders.
POST WITHIN A POST: Notice how different the top image is to the bottom image posted here. This is a really irritating problem I've been having for the past month or so with uploading images to this blog and now finally found the answer. In my Google+ account it by default has 'Enhance Uploaded Photos' set to Normal (meaning yes), which has made my uploads look all the wrong colours and have unwanted effects all over them. Turned it to 'Off' and all works fine now. Stupid system. Really should be off by default........
There is still a way to go before he is truly finished here. Notice that his materials all look quite shiny with the introduction of his specular maps, but this will change when more appropriate shaders are applied; currently he is using full Phong shaders. The same can be said for other areas that require more advanced shaders to bring them so life, while still relying on real-time graphics. The eyes particular still look dead and plain, but with real-time reflections on their lenses they should look much better. His thin pink wrist band requires translucency to look right. His metallic parts such as his spikes and belt buckle also all require real-time reflections to be brought to life.
As a side note I also want to change his hair-style a bit to give him more fringe, but this is as far as I will take him on this fine night :) Also I found 'Depth-Peeling' transparency sorting in Viewport 2.0 is by far the best type now, reflecting the results your would expect to see in games.... so that's good :D
Sunday, 23 November 2014
Xiahou Ba - Maya Development
Project Xiahou Ba should be finished within the coming week or so. The finishing touches have been made to the sculpt and polypainting over this weekend, and now all of the diffuse and normal maps have been baked out from ZBrush, combined where necessary, and plugged into his Maya model.
The next stage is to create all of the composite maps to improve the diffuse maps, and create any other required maps such as specular and alpha maps. After that I will begin rigging, which leads to posing and rendering for the final outcomes.
I have baked his belt spikes and his necklace in Maya to give them textures and normal maps (and the alpha map for his necklace), all of which went very smoothly. I also created his hair and completely UV mapped it too. He still needs a few more bits like his mouth and his eye lashes creating properly, but he is now 90% finished on the model-front.
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.
Subscribe to:
Posts (Atom)



















