Daz to Maya Workflow (and apparently Dev Log now)

nillamello

Member
Game Developer
Oct 11, 2018
198
590
I'm finally doing final render passes for still scenes and have mostly finalized main characters for the initial demo release of the game. I went through some serious learning pains to understand interior lighting using the Arnold render engine. Getting it to look good in 720p for initial test renders was really easy, didn't require much render time, and looked pretty decent.

small initial lighting test:
330727
I know, dark, noisy, blurry, and all of those things, but that's not really what I was concerned about at the time. More "does the lamp look ok, is the chair leather believable, why isn't the mirror actually reflecting anything?" sort of concerns.

Anyway, for people who may be looking at this for their own Maya reference, individual light sources have a "sampling" modifier in the attributes. This essentially means that that light is calculated multiple times in an attempt to remove noise. It seems to depend a lot on the geometry and reflections impacted by the light as to what that actually means at render time (the mirrors in this room were a mistake, for example... they increased the time of final render by a great deal). So if you have one small light that seems to be constantly causing noise in the image (lamp), you can sample that one light up until the noise is gone without needing to sample up the entire image, or even the other lights.

Here's the final rendered background for a different part of this room (the above view was changed for final production, so I don't have anything similar to show).

330731
This is a one-time-use background, so I went ahead and included the character shadows and reflections into the background layer (looks kind of ghostly...). If you zoom in, you'll still see some noise in the darker sections of the wall and on the table top. While this isn't like... intentional or anything, those areas will largely be covered up, so I didn't much care (this is straight out of Maya, btw, scaled down to 1080p in Photoshop, but no post-processing has been applied). The reason this was done in two render passes (background and actors) is because the lighting samples required to clear the noise on the background were unnecessary to make the characters clean and would have caused considerably more time in render if they had to calculate the subsurface and reflections on the actor geometry. Also, the passes on subsuface scattering was turned up for the actor layer while the volume and diffusion sampling was turned down. The actor renders are still finishing, but I'll have another update when that's done.
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
After many iterations, I'm almost happy with the character renders. You know when you have one section that's just not right, but you say "it's ok, the camera won't even see that part", and then you render it, and the camera sees it? And it looks like your chick has on a body glove that only covers her inner thighs or something? That was my weekend.

So here's the final render of the background above:
331913

This one isn't what I was working on... but yeah. Essentially you are being born and introduced to the family in a series of images that pans around the room. That's dad.

331914

Adopted older sister. And the body glove on Mom's thighs that I will need to rerender out. I'll just render that little section, though, so no biggie, I guess. Just annoying from my standpoint.

So the mother proved to be a real challenge. I wanted her sweaty, but every version of reflection and moisture that I added to her face just made her look more and more plastic, or soiled, or just... fake. I mean, I know it's a stylized workflow, but the first time you see your mother needs to be a good render. There's really no going back on that one.

Anyway, of my many working versions, I saved two:

331920
The above is the initial test image using the sheen modifier in the Arnold standard surface. In a quick render, it actually looks pretty good, because the noise cancels out the unrealistic halo effect. I also realized that I failed to turn on subdivision on her mesh, so there are a ton of jagged egdes. At this point, I don't like the hair or the expression, either. But the hair is from a simulation, so I didn't want to change it yet... I figured physics knew best.

Here's take 2:
331921

What have I done!? Subdivision is on, no more jaggies. and I mean... she sure is shiny. This is the result of playing with mapping. Normal maps were used for the skin, but not at the proper resolution (my bad), and I also used the bump maps as specular maps, to give more of an illusion of... bumps. the one that only had the specular maps actually turned out better than this one, but I didn't save it. And yet again, this was rendered to full completion because the quick render looked good. Take the noise out and suddenly she looks like she's slathered in Vaseline. Hair is still 'as it should be' according to the simulation. This is because her normal style has some volume to it, so Xgen is maintaining some of that. The short hair simply doesn't have enough mass to counteract it's natural poof (increasing mass and gravity does change it a bit, but not in a way that I liked).

Here's last night's render:

331922
Still not 100%, but getting there. Corrected the hair. Physics be damned. Changed the facial expression (subtlety is king). Specular mapping has been applied at 10x the resolution (I tiled it, but since it's just the shine map, I can't see the seems anywhere). Subsurface was remapped to a custom color file I made by my little old self based on the skin texture; it really helped out the face color. Skin normal maps are now 20x more densely packed on the surface.

Problems: Tits are a bit too bumpy? Her left arm... I didn't think the camera would see her arms, so I didn't include them in the mapping. Sad face. There's a little clipping on the hair, so I'll turn on the collision detection and we'll see if that ruins things or makes them better.

There are obviously more renders in this sequence, but this thread isn't about the actual game. For anyone reading this for reference, there are some great free skin bump/normal maps floating around the internet. But if you use them, be sure to play with the scaling and tile the uv's to match your model. I was so worried about seams in the skin that I only recently even tried tiling the textures and it worked out like a charm.
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Initial hair collisions test for her face. This is just the default xgen collision modifier... it's not exactly subtle. Also, somehow, hairs still manage to stick through the nose. And as I look at it, the individual hairs are too thick.

On the plus side, I twiddled more with the bump and specular maps for the lips and the face proper. Looks pretty good, I think. Lost a little bit of the moisture-look that I was going for, but if I can't manage to get that back with my minimal skill, I think the texture improvement is worth it.

332166

For the next one, I thinned out the individual hairs by quite a bit (about 40%) and then doubled the number of strands. I also increased the curve points on the individual strands from 50 to 500 in hopes that it would help the collision solver move them around a little bit more smoothly. And finally, I transferred the hair over to the interactive groom editor to make use of its more robust collision detection.

332177

An improvement, definitely, but still just... strange (the collision on the right side of the nose is way far away from the actual mesh even though I have it set to 0 clearance, for example, and hairs are STILL stabbing her cheeks). I think I'll end up doing a manual groom for this particular image and add the collision modifier as a final touch instead of relying on it entirely. But that's why I'm going through this process: I simply learn better by trial and error. And ultimately these tests will improve the artwork of the game for more than just this image.

Edit: Viewport screens for the before and after manual sculpt.
Before:
332185
The brute force collision detection from the original xgen description is still in effect, because I pulled the interactive groom from it with that active. render view on the right is the quick and dirty render of the finished sculpt.

viewport of the finished sculpt:
332187

I clumped it up a little on the left to give visual access to the eye, sculpted around the cheeks and the lips, and put some individual hairs over the front of the nose (and obviously moved everything that was colliding with the mesh). Rendering up the (hopefully) final test render now.

On a side note, interactive grooming is really powerful for still images like this. I've been working on moving images that don't make as much use of it so far. Very impressive.
 
Last edited:

nillamello

Member
Game Developer
Oct 11, 2018
198
590
New post for the final render. Looks really nice at this range. Take it out and she looks like a traffic light. Well... back to the rendering board for the actual image. Diggin' this one though.

332278
 
  • Like
Reactions: cvedant95

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Made some pubes, thought I'd share. This is the first time I've had a need to work on genital areas for any character (because I started off with non-sexual ones), so most of it still needs to be done. The specular mapping is absent, the bump mapping isn't in yet, even the coloring is just a placeholder right now. I think I'll add a layer of micro-hairs to the bald spots to get it a bit more coverage, and thin out the larger curls a tiny bit.

333211

So, I started with Maya in order to better utilize animation. Now, I feel like the hair is actually the best part of higher quality production software. While Daz has a good amount of hair assets and color customization, this is just so much more robust. And the computational time as you create hair is almost realtime, especially if you're working on still images. Once the learning curve is passed, the sky is the limit on this... make fur, braids, grass, rope... and it's all dynamic with the push of a button. Literally, I can style a side character's hair in one hour, transfer it to another character, cut the length, add braids, and change the color in five minutes, then an hour later, I can have 5 or 6 unique characters for a random group scene. Or maybe the main character has a style change? I can just do that. The length stays the same, the attributes (frizz, curl, clumping, etc) stays the same, but now it's braided, or double braided, or long and wet from the shower. I can save that sculpt of the hair for later, add a dynamic collision detection, and it will automagically conform to any clothing I decide to add later (towels, capes, or set pieces). Daz can do this, but it requires a full simulation and a vast assortment of hair assets. And then when you go to render, hopefully that hair is optimized, or you're looking at a long wait (my normal hair file is about 200kb and rendered with ribbons in the shader network instead of heavy polygons... compare that to even the simplest hair in Daz).
 

Saki_Sliz

Well-Known Member
May 3, 2018
1,403
993
Interesting, it appears that the way hair is rendered is as a flat plane, is that something you did intentionally or is that locked into the way Maya works? I know blender can do that as a means of optimization, but for the most part I always do strand rendering just because I prefer the look. Looking over your post, it appears you prefer to work in Maya. I'm similar, in that I port my daz stuff to be cleaned up and used in Blender.
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Interesting, it appears that the way hair is rendered is as a flat plane, is that something you did intentionally or is that locked into the way Maya works? I know blender can do that as a means of optimization, but for the most part I always do strand rendering just because I prefer the look. Looking over your post, it appears you prefer to work in Maya. I'm similar, in that I port my daz stuff to be cleaned up and used in Blender.
You can do strands as tubes, as well. I went back and forth for that image on that very topic... ultimately, it's just a test render, so I chose to stick with the flat hair that I'll be using in the scene (for the ribbons, there's the option to always face the camera, or not, depending on the effect wanted, but for hair, it's just... yikes, people look bald unless they face the camera). Normally the hair is so dense that the final render looks identical, if done with tubes vs planes (dreads being the exception that's I've come across so far). As far as my preference, initially Maya wasn't going to be my main workflow, but as I've spent more time with it, I've started to rely more and more on the additional degrees of freedom. It would be hard to go back and this point.




This project has age progression, so I need to iterate a lot of characters over a course of 20-something years, so I spent today on additional versions of existing characters. Here's the 13/14 year old version of the cat-girl standing in the nothingness world waiting to be imported into an actual environment.

333478
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Back to base character creation. I actually make them all in their adult stages and then systematically de-age them. But since I'm making the game in chronological order, I don't finalize the models until I actually get to them, so I'm still very rarely working on adult characters. This is my first attempt to make a darker skinned character. The lighting is fairly poor (read: natural and undramatic) in my creation environment (I try to keep it consistent, but that means a lot of transmission and highlight colors don't come through until the actual scene renders). She has some really neat hair highlights that I hope reinforce the fantasy setting while still giving a semi-realistic feel to the natural-hair-look (you can almost see them, but light passing through the hair has a barely purple tint, and some very specific angles reflect a dark blue). As she gets older, I'm thinking about having her pull it back into variations on a tail/bun based on conversations with the player. Her father was a soldier that died, so the player family takes in her and her mother, who has found religion after the death of her husband.

335395
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Quick test for the grass in a field. This was a much faster render than I expected... I have a lot of primitives in in the view, but it only took 20 minutes on my crappy system.

336235
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
I've been messing around with a lot of things this past week, but ultimately, I've just slogged through making character sprites and trying to get the layered images to work in Renpy (I initially tried to make it way too complex... I had groups for gloves, and socks, and underwear, and shoulder armor, and hats, and hairstyles... but it's not like I actually have any characters using those things. And while I intend to have clothing choices eventually, I don't have that setup yet... so now it's just pose and outfit based).

Anyway, since I've been showing Lani (the cat) in pretty much every post, why change now. She has the most outfits, anyway. I know this is somewhat possible in Daz, but Maya has a nice compliment of rendering settings that make image compositing really simple and straight forward. Especially layered images with some transparencies - easy stuff. So what I've done is given an example of a base sprite pose and expression for Lani below (censored, sorry). I have currently a dozen poses for her sprite, each saved in the timeline ten frames apart. This allows me to not only save the poses for later use, but also to simulate cloth drapes only once for the entire pose sequence instead of having to do it a hundred times. Of course, the studio setup, cameras, and lights are taken from a reference file I made to be used with every character, so each sprite will be consistent.

Here's nudie Lani.

343881

Cool. The sprite is full body, pretty much just in case I need to use it for other purposes... right now, any full body shot I have of these characters is in a set piece, like the ones I've shown in previous posts, but you never know what I may decide to do later. And this is my final iteration of Lani at this age... I've spent a lot of time tweaking the design on her hair and subsurface map to get rosy cheeks and so forth, and I think it turned out pretty good.

Next, I matte out the character model and load the clothes in their own render layer. Each set of clothing is a reference file, and each is imported from Daz on the original Lani skeleton (and then tweaked for textures, shaders, transparency, bumps, etc). This allows me to remap the skeleton for the clothes onto the poses of the character with a single button click.

For things like armor or pants, that's the end. No folds are necessary, so no simulations take place, I save the render layer with the outfit title, and then move on to the next set of clothing. But for shirts, dresses, scarves, or the like, I really want to maintain a natural drape. The below example is her casual nightwear -- light pants and a tank. This is a really fast simulation to run, but without it, the shirt clips through her hands, stomach, and pretty much every which place. Once the sim is finished, I reapply the textures and material shaders, and that outfit is ready for render.

Here's the same pose as above, only minus the actual character. In making this post, I realized that I need to resimulate this image because I made the collision layer too thin and it clipped through the pants. No biggie.

343869

This process retains transparency on the visible sections of the clothes, but still hides the portions that are not visible (like the back of a lace dress). And most important, adding a clothing change is as simple as importing a new outfit, adding it to a new render layer, and simulating any cloth that may need it. Likewise, if I want to add a new pose, I need only keyframe and run a 10 frame simulation on all of the cloth layers to get a pose that works with every single clothing option.

Here's the final composite image:
343883

And a different outfit example that has transparency:
343888

And the final composite for that one:
343889
 
  • Like
Reactions: Saki_Sliz

nillamello

Member
Game Developer
Oct 11, 2018
198
590
I've been toying with an animated splash/title screen, and I figure my little long hair goddess is a good choice for a first attempt. I've been meaning to work on looped animations, so I decided to loop her hair and a little body movement. Going for the 'I'm sick of sitting here' look on this.

Rendered in two layers. Background is the throne, obviously. It's off-center because the menu is on the left side (stock Renpy setting for placement)

347177

Since I'm looping and there's no camera movement, this background is a single static frame. Just a quick note on lighting, the throne is not emissive, it's actually a combination of subsurface scattering (the chair cushion, mostly), translucency, and transmission with a spotlight shining from behind, plus a smaller light shining at the front. The purple is the subsurface color (or blue in the cushion), and the white at the top is from cocktail of different translucency settings. Honestly, I think I could get the same effect using lower-cost methods, but I made this asset a while ago before I knew much about setting up lighting to render and I don't use it very often, so I just left it as-is.

Second layer is the animated portion. I used my trials on the previous hair posts and decided to tweak the goddess' hair for some simple loops. I have three sculpt layers on her hair (each is just a different location it can sway to). Then I mixed them up semi-randomly inbetween my looping keyframes. Added a little nervous twitch for her legs, and it's done.


347188

So I'm rendering the bottom of the pedestal because it has a shadow from her foot, thus as she moves, the shadow also moves. The pillars are in the render layer because they were attached to the pedestal and I didn't want to bother taking the meshes apart again. This is rendered at 1080p instead of my usual 1440, so it's really not that much of a time difference to include the pillars. Each frame is about 5 minutes, and the vast majority of that time is spent calculating the light scattering through her body and the specularity of the hair.

And here's the final loop. The total video is 25 seconds, but the actual animation is only five seconds.


Corrections that need to be made: Hair collision detection looks good in still images, but it jitters around like mad when animated. I took a shortcut to try and avoid spending an hour making sure each hair sculpt didnt' interfere when combined, but I've since spent that hour and I'll be re-rendering the animation tonight. Playblast looks good, so fingers crossed that it'll be magic.
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Still messing around with sprites, so I thought I'd share an adult character for once. I kind of like this one... I gave her some freckles on the face and chest, but they aren't so prominent that they're visible from this distance. She's 'devout', thus I have her praying in this one. And, of course, the drapes gotta match the carpet.

348896

I don't actually have any of her outfits rendered right now, since I haven't quite decided on her default look... so, I mean, imagine her wearing clothes or something.

Ugh, I just noticed that I forgot to turn on subdivision for the naked layer... so many things to remember.
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Doing some backgrounds this week. Since Arnold is a ray-trace render engine, the environmental lighting doesn't have much impact on the scene (quantity of light sources matters, though, as do reflections and so forth), so additional lighting values for different times of day are just a matter of rotating the skydome and changing the light exposure without really impacting render time. I need to tweak this town shot some more... carve some more facets onto rocks, correct some of the crystal shards, etc, but I finally learned how to do appropriate levels of displacement mapping for things like cobblestones, so yay.

Just throwing in two versions of one background.
Noon:
354310

And sunset:
354312

To do: Populate it with mob characters, I guess... I'm considering just using some 2d billboards for crowds, but I haven't actually tried it yet, so who knows if it'll work out. So far I have two streets finished (this being one, plus the area to the left of camera is also built up, and a little behind the camera). I'm thinking I'll probably leave it at that for now, since I don't have much going on in this location that would require actual geography.
 
  • Like
Reactions: rodneyeatme

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Since I'm thinking about it anyway, I'm going to make another post in this thread. Initially I wanted to make some of the houses lit from the inside (especially the watch towers and castles), but I didn't want to deal with all that shit... light placement, brightness, temp, and then the added difficulty of making sure the window glass didn't turn things into spotlights and the list goes on (and most of all, I've spent too much time on this portion of the game already and making one or two night scenes look slightly better isn't a good use of my time).

But I had a bright idea (pun) to just make the glass shader emissive on it's own. I already had a semi-transparent material over all of the windows, so why not give it a shot. I did a few versions to see if I could get it right.

First, no emission, from the town square:
354569
Render time is 29 minutes. Really dark, yet not realistically so... people would still be awake at sunset.

Next, 10% white emission on the windows (which are light blue and 90% transparent... for anyone interested):
354570
Render time: 30 minutes and 4 seconds. So... really, the emission is so light that it just lights up the windows - no shines, no shadows, the light doesn't even reach a single bounce before it stops being calculated, thus the render time barely changes despite the addition of what is essentially a thousand tiny lights.

This really is an improvement to the scene, I think... but the lights themselves don't look real. They just look pasted on or something. There's no depth to them at all.

So now I have 90% yellow emission, 100% transparency:
354580

Render time:32 minutes and 52 seconds.
Big difference. Light hitting walls, reflecting from the ground tiles, shining in the water of the fountain, lighting up the bump maps on the statue. The depth is there now, so I'm pleased with this as a test (and much to my shock, the render time is actually not that much higher). The problem that remains is that the windows themselves are no longer windows (all of the depth is on the outside, but nothing even remotely visible inside). Now, I'm thinking about turning them into actual light sources (remember, right now the light is from the shader network, not a true light). That would allow me to hide the polygon surface while retaining the actual light (the source would be invisible, but the first light bounce IS visible). This is how I've made lamps in the past... but then... every window would be a light... my light manager would be fucking huge... I really don't even want to know how long it would take Maya to even figure out how to do that... so I'm going to leave it at this for today and move on to other things. Cheers.
 

Saki_Sliz

Well-Known Member
May 3, 2018
1,403
993
Certainly getting more done than me, I'm still derping around with clothe ideas, and trying to think of possible game ideas that require minimal environmental art, because I don't want to spend eons on the world making.
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
I wrote a (non-erotic) novel a few years ago that never got picked up by any publishers, so I'm reworking parts of that as a branching game. Since I spent quite a bit of time on the setting and general plot direction, I already have a good idea of most of what is going on at the beginning, and setting up future character interactions isn't a problem. Honestly, right now the actual writing is the bottleneck. I'm focusing all of my attention on the art assets because it's what I know how to do, but I'm neglecting a lot of the nitty-gritty game-making stuff. I have an event system and calendar working, but I need to populate it with a ton of other things... like... the game is about 3000 words right now, and I can't even feel comfortable releasing a demo without at least 10-20k words. The prologue doesn't have any real interaction, so I want to at least give possible patrons a glimpse of what to expect and a little bit of sexy.
 

Saki_Sliz

Well-Known Member
May 3, 2018
1,403
993
To be honest, it often seems that one of better ways to make a game is to first figure out the idea and goal (general game mechanics), figure out how the art is going to be done (what technique the game may use, such as re rendered graphics), [dependant on game engine or programming experience allows for better foresight]. starting with a bunch of preliminary art and then working back and forth between story and art (the story may evolve as you start to see things come to life through art, and thus the art will change to accommodate the story, and after having a good amount done, then working on code and puting things together. but like you, I would focus on the code first since it is what I am comfortable with doing, which is hard to test ideas without final product art to test with to see if the code works. :p
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Yeah, characters seem to evolve for me. I'll make one that I really like that doesn't fit the personality I intended, then either add them in as a new character or change the already-written dialogue to match the new design. And then, heaven forbid, I get better at the modeling side of things and want to re-make someone. Then it's back to square one on all the renders. Everything is a really slow process.

Anyway, I've been working on finalizing existing assets this past week, and also starting on the only real story event that will be in the game's first release (I mentioned earlier in this thread, but the game takes place over a lot of years, and the main character starts off pretty young, so I'm doing my best to skirt around age restrictions for adult content, and the first release will only really include that age range where the player can't participate in anything sexual).

Here's the current (hopefully final) version of the town set. I went and made a quick composite of all of the different renders in stripes from early morning till midnight (six in all). The displacement map on the crystal is intended to be used as a dirt and twig texture, but I found that a blown-up version gave a good weathered look to hard surfaces:
town_comp.png

And character sprites:
characters.jpg

Every character has at least two outfits (normal and casual), but a good number have five or more. Not that it matters for the current version of the game, but I figured that since I'm doing it, I may as well get all of the early assets out of the way at once. MC's mother (green hair) has both a pregnant and non-pregnant variant. I'm still not really happy with the pink hair... I'm not sure why I just can't seem to make her stuff work.

I have the house built, but I haven't actually rendered backgrounds from it, yet. It's mostly actually there, but I have a few locations that I'm housing as standalone rooms (the home library, for example, is two stories and doesn't fit into the layout of the actual physical house)
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Working on some sexy stuff (finally). One of the available storylines for Lani has her going feral, but all of them have her in heat.

I spent a day getting her adult model imported into Maya and updating hair morphs, ears, tail stuff, pubes (she's got a fun tail-pube area that turned out better than expected... I'm going to need to highlight that in some shots eventually). Got her outfits up and running, some poses for sprites, all that fun stuff. So I decided to work on some of the last environments for my initial alpha build and then I'm like "Hey, why not just throw her in and see how it looks?"

So then I spent four hours tweaking lights, cameras, posing, sculpting some gravity for the hair (I'm not intending to animate this scene, so I turned off the simulation to help my computer not explode and instead just combed it until I liked it). And it just looked so baren with only the Daz imported landscape, so I added some additional displacement maps, grass, water ripples (that are entirely absent from any render I've made...), and some small other things like leaf transparencies and bump maps.

Finally, I have a render of Lani being a little aggressive at the swimming hole. God only knows if it will ever show up in the actual game.
Lani_Pond_00.png

Should correct the patchy grass...
 

nillamello

Member
Game Developer
Oct 11, 2018
198
590
Corrected grass density (and hair density to get rid of her bald spot...) and removed the loin cloth because... it just hung strange. Here's the final image.

Lani_Pond_01.png
 
  • Love
Reactions: Saki_Sliz