Scene design in Unreal

Now that I’m starting to get a handle on the asset pipeline from Zbrush to Maya to Unreal, I’ve begun bringing in a some of the assets I’ve built and arranging them.

Unreal1
Fountain, column and lilies from far away
Unreal2
Closeup on column and lilies

When I play-tested it, the scale seemed off. I found some documentation that says a basic Player is apprx 180 Units high. Unfortunately in Unreal, objects are simply measured in terms of relative scale. There isn’t an easy way to measure how many units tall something is – it is simply a 1x1x1 scale. (This seems like something begging to be fixed?!) You can go into the editor and see the actual size of the units there, but no easy way to scale them to an exact size.

Knowing that a standard cube is 100 units high, it stands to reason that two cubes stacked would be 200 units, or slightly higher than the average player character.

cubesize

By using two stacked cubes as a frame of reference, it seems obvious to me that I need to scale everything down in size or else my player will feel dwarfed.

scale

Next steps are to import the rest of my objects and get them scaled appropriately, get some water in the fountain, landscape the terrain a bit more, and figure out the steps to package the level for export so others can play.

I hope to also be able to build the controllers to take it into VR.

Columns

So I sculpted the beautiful column in Zbrush, and was pleased with result.

Column_sculpt

After some trial and error and lots of crashing due to a really high polycount, I managed to export it into Maya. Here are my notes on how I exported my texture maps.

column-poly-Maya

This was looking decent in Maya, so I used Maya’s “Send to Unreal” feature, thinking I was in the home stretch, but this was the result.

Unreal-badUV

I tried simply exporting it as an FBX for Unreal, but it didn’t send the textures over (see column on the left).

two-columns

One of the issues I identified was that my computer kept crashing when I tried to do thing like export UVs, so I went back to a longer set of notes I took in class, and found the helpful “work on clone” option. This worked like a charm. I was able to export Texture Maps and a Normal map. Rather than using the GoZ feature, I exported as OBJ and opened it it Maya. I then created a new Lambert material and applied the Texture and Normal (bump) maps from the files I had exported. Looking pretty good!

Column_maya_normal_painted

I used Maya’s “Send to Unreal” button, but it once again had disastrous results. Something is not wrapping the UVs correctly with this method.

Unreal-badUV

This time in Maya I exported the column manually as an OBJ. Although it was laying on it’s side when I imported it into Unreal, the textures were correct and I simply had to rotate it into position.

Column_exportedOBJ

This seems to have done the trick! From now on I will export/import things manually as OBJs rather than trust the built-in exporter buttons in the software.

 

Continuing Unreal

I’ve hit a few stumbling blocks in Unreal. I agree with some people who have said that Unreal makes everything 10 times harder than it needs to be, the but results are worth it. (I hope!)

I used the garden elevation illustration I created earlier in Illustrator, and brought it into Maya (Create/Illustrator object) to make the twirl pathway. I used the landscaping and smooth tools to sculpt the terrain to suit it better.

pathtwirl

I applied a cobblestone material, but I wasn’t happy with the scale of it. I followed this tutorial, but couldn’t find a way to scale the texture. Not sure what I am missing here.

texture_scale

Here is a screenshot of the Material Editor.

2017-04-11

I thought perhaps the material seemed too large because I had scaled up the path object by 300 when I imported it. I went back and scaled up the object in Maya and re-imported it, but that had no effect.

For now, I decided to go forward with a different texture. I may smooth out the terrain a bit, but I kind of liked how the path looked a bit eroded here.

garden-texture2

Unreal Engine – landscaping

For this part, my goal was to further sculpt the terrain in Unreal Engine into a garden landscape. I created a basic elevation (top-down view) in Adobe Illustrator to serve as a guide, create a simple Plane in Unreal, and applied the texture to the plane. I wanted to control the transparency of it, but Unreal seems to make this ridiculously difficult, so I worked around that by moving it up off my terrain and turning it on and off a bit.

garden-elevation

I dropped in some cylinders FPO (For Position Only) to get a feel for where I want my sculpted columns to be located in the future.

I began trying to sculpt the pathways. Whoa! Brush intensity too high. Not what I was going for.

mountains

This is more like it. Next steps will be to create a stone pathway along the raised areas and fill in more landscaping.

paths

Tiger Lilly

 

Another asset I created for the second “sacral” chakra garden is the Tiger Lily. I had initially created this as a low-poly object in Maya for use in the Sacral Chakra game I created in Unity.

tigerlily-unity

I imported the low-poly model into Zbrush using the GoZ plugin, which is quite handy (when it works properly).

 

seam

One area of difficulty I seem to encounter regularly is the crease that forms when you add a sphere to create additional sculpting material (in this case I was trying to plug the hole in the bottom of the low-poly model of the flower.) I found that using the H-Polish brush works well for smoothing out creases.

Poly flower

Once I smoothed and shaped the model, I used Zbrush’s Spotlight tool to add color and texture, borrowing from a photograph of a tiger lily I found online. From there I added a stem and leaves, which I also polypainted.

Tigerlily merged

I plan to duplicate several of these for use in the Chakra Garden I’m creating in Unreal Engine.

Creating the Seashell

I began the seashell model as a low-poly asset created in Maya for the Chakra game I created in Unity. To create this shape, I used Maya’s Helix tool and gave it volume with an extrusion. I used Lattice Deformation to help shape the form, and even after deleting history and freezing deformations, I was unable to use the GoZ feature to import it into ZBrush. Instead, I exported it as an OBJ to simplify the geometry and make it ready to import.

Seashell-low-maya

Here is the shape imported into Zbrush.

seashell

One of the issues I had was that I could not make the shell hollow. If I deleted the end cap, it caused the shell to have no volume when imported into Zbrush. I decided the leave the endcap, but do a negative extrusion to push it back into the shell a bit. Once imported into Zbrush, I used the Move tool to massage the shape and push it back further, but was unhappy with the flatness of the shape. I wondered if it were possible to Divide just that one area to give it more polys. Using a Mask, I found that you can indeed Divide to add polys to just a specific area. This gave me more geometry to work with.

shell masked

I began shaping the outer edges of the seashell to look more organic. I also stretched out the shell to be longer.

shell masked2

After getting a shape I was more pleased with, I began using the Dam Standard brush with a variety of Alphas to add detail.

seashell1 seashell2 seashell3 seashell4 seashell5

At this point I was ready to use Polypaint to add color.

seashellpoly1

Finally, I used a darker polypaint color along with Zadd to give it some depth to create the ridges.

Seashellfinal

Overall I would say I was fairly happy with this sculpt. Going forward, if I had to do another one, I would have taken the advise of my professor to do more preliminary sketches from reference, because I’m not sure the bottom of it looks entirely realistic. Creating sketches would have helped firmly fix the initial shape in my mind. For now I plan to use this to push forward into the rest of the project. Perhaps another time I can spend an entire day creating seashells. 🙂