Categories
Final Major Project FMP

Week 4: Texturing in Substance Painter

This week I focused on texturing in Substance Painter and testing the textures in Maya and Unreal Engine

Base & connections rock texture

For the rock texture, I mixed Substance’s pre-made rock textures, to then scale them down, orientate them vertically and lastly, I added a layer of dirt to give more variation and dimension. For the block of flats in the rock layer, I kept it a bit simpler as there is already a lot of detail in this section and I did not want to overcrowd it. Also, for the connections I added the same rock texture and some asphalt texture for the roads with stencilled road signs on top.

General city buildings, skyscrapers, & main tower textures

For the city buildings, I downloaded a texture from Substance website which already has the windows set up to increase/decrease to amount of lit windows and the intensity and colour of the lights. I could also adjust the size of the frame of the windows so they have the proper dimensions for my model. I also added an emission layer to this texture so when exporting it, I have an emission map to adjust the windows light intensity in Unreal Engine. This was actually a good discovery as I could texture all the buildings at the same time and pretty quick, whereas if I had to do the buildings one by one, it would have been time consuming and a pretty tedious job to do. For the bridges, I used another texture that I found in Substance website which resembles the texture of the circuits of a machine and, by adding an emission layer, I could show some neon lighting in the circuit details so it makes them stand out. As a final touch, I added a flying car landing sign on the top of some buildings using one of Substance pre-made stencils. I also added a purple neon glow to make it more futuristic.

For the skyscrapers, I added a simple glass texture for the windows as I am planning to add an emission effect later on in Unreal Engine. Then for the main body of the skyscrapers I used a metal texture with some scratches and a concrete texture with some dust painted on top manually. The skyscrapers textures are simple as these are not going to be too visible in the night ambient of the scene.

For the main tower, I also used the same circuit texture that I used for the bridges. In the edges, I added a glass texture with a purple colour which will be lit later on in Unreal Engine. Lastly, using a stencil and an opacity layer only, I painted some vents on the top of the tower.

City details textures

I chose a patterned texture for the city wall and metallic edges. Then I painted some dust on the lower parts so it blends in with the rocky base texture.

For the capsules, I used a glass texture for the top part and another circuit texture (different from the main tower and the bridges texture) to simulate the capsules engine.

The lamp posts and the antennas were textured really quick as they are very small and won’t be too visible. Therefore, I added a metallic and a glass texture for the lamp posts (which will have lighting added on later on in Unreal Engine), and metallic and carbon fibre textures for the antennas.

The cranes also have a metallic texture with some rusty details and a rope texture for the cable which I painted in grey so it looks like a metallic cable. The base has a concrete texture.

Lastly, the flying cars have also a basic glass texture for the windows and a basic metallic texture for the main body as these are going to be very small in the scene. The only distinctive attribute these have is the blue stripe in front which will be the car’s front light. I am also planning to add some emission effect in Unreal Engine to this front light.

Categories
Collaborative

Week 7: Team Meeting – Environment, Characters, Objects, Animation, & Interactions

This week, I had a meeting with the girls at the beginning of the week to review what we had done and organise what we need to do, and also had another meeting with the lectures and external studio partners to agree on final designs and interactions.

This week I finished modelling the child’s ghost with textures taking as references the following:

Also, we considered that the team needed to gather in a meeting with lectures in order to discuss technicalities and issues we could have when importing mesh, textures, and animation into Unity. The VR girls confirmed that Unity could accept simple textures with normals, bump maps, roughness, etc., but that this should be embedded in the fbx file exported from Maya.

Since I am not familiar exporting fbx from Maya and even less with Unity, I downloaded Unity so I could test my models directly into it before sending the final ones. VR girls explained that it seemed that the textures needed to be relinked in Unity and this could be a problem and time consuming. Therefore, we reached an agreement that, since I know how and where the textures should be linked, I would test the models in Unity, relink textures and export the Unity package with the model and textures already set. Also, I had to re-set the UV maps of the ghosts models as when I combined all the parts of the model into one unique mesh in Maya, the UV maps got messed up. I also tried to simplify the model removing the double faces of every part and getting rid of unnecessary mesh that was not going to be seen (like torso, arms, legs and feet).

We also thought of the possible memories that can appear when triggered by objects interaction (we made a list in Miro):

Also, MA VFX had our first collaboration project presentation to the class and the tutor, so we put together a Power Point presentation taking as reference some of the slides used in 3D animation and VR presentations (all of us contributed in these presentations).

Team meeting

Later this week, we had the meeting with the lecturers and the external studios partners. We discussed the possibility to buy assets taking the budget offered by the university as we had lots of assets to model and very limited time. Ana the asked us to make a list of assets and add which ones we had to model, which ones we could download for free and which one we needed to buy.

We also reviewed the model of the environment Martyna and Jess have been putting together:

  • Corridor:
    • It needs to be longer and have the final room in between (not at the end). So each side would have 5 doors and then the third door on the left would be the final pod.
    • It should be a dark place with just one point of natural light at the end.
    • It could have stripe lights that are not working (or one can be flickering). These lights need to be organic and not straight industrial lights.
    • It should have broken doors with holes in them. We need to add something in the way of the broken doors, so the main character cannot access the rooms.
    • We considered the idea of these corridors being underground or flooded but due to time limitations and the fact that the whole structure would need to be redesigned, we disregarded it. Instead, we considered the addition of ramps that change slightly the level of the floor from the transition from the waiting area to the corridors.
    • One of the rooms could have an image of trees moving with the wind shown in a screen.
    • The environment will need to look close to us now (familiar), so the user can empathise with it (do not make it futuristic or high tech).
    • Natural lights overall. We can have working lights (when switched on), but not all of them are working (could be flickering or hanging from the ceiling).
  • Final room:
    • It has natural light (single lights source would be more dramatic).
    • It has a broken wall where the deer will appear.
    • Everything is decrepit and broken.
    • The light could be moving with the reflection of the water ripples (from the have flooded floor).
  • Main waiting room:
    • We need to agree textures of the walls which would be broken, moulded, with rusty pipes showing, etc.
    • The ceiling will also have some broken parts with natural light coming through.
    • The walls could have panels, decoration from the past, murals that are aged, etc.
    • We need to add more than one corridor that would be accessible from the waiting room (but not operational for this beta version of the VR experience, just one corridor will be accessible).
    • In the middle, there is a pond with water and dead fish floating.
  • Objects/memories:
    • Teddy bear. We thought of making it look that it was made out of scrapped materials like metallic stuff found, however, we need to be careful with making it look too futuristic so we disregarded this idea. Maybe we could change it for a car toy for example. This toy will show the memory of a child playing with it and then being grabbed by their mother to get euthanised, so the child drops the toy.
    • Fingerprint scan. In this memory, we thought of showing someone being forced to scan their fingerprint so they signed their contract for being euthanised. However, after discussing this with the lecturers, we felt like these should be shown like an option and not like being forced to do it. So instead, we thought of a parent grabbing the child’s hand to help them scan it.
    • Headset. It could reproduce the sound of a radio station that was trying to bring some happiness to people (happy music being cut by the voice of the radio presenter).
    • Diary. This object will only trigger a voice over of somebody reading the diary. When the main character picks the diary and opens it, some bugs would come out from the bottom of it.
    • Poster. It could show health and safety advice like wear a mask, etc.
    • Daily objects. These would not trigger any memory but could show some bits from the past, like a converse shoe, a diary, etc.
    • Megaphone. From were they made the announcements to call people’s turn to die.

We also talked about how VR will construct the UI of the VR experience. It was pointed out by the lectures that this needed to be more an emotional experience than a game itself, so the user’s attention should be driven through the environment using sounds or vague scenes from the past (memories) that are triggered by them passing nearby a place or when touching an object. Some points that were mention regarding the UI were the following:

  • Main character’s POV. It could show like the texture of a helmet (like scratched or dirty glass). We could also add some info showing on the helmet’s glass, like icons (these are less distracting than letters, and less intrusive). We could show UI for the memory object but we should not give away much information.
  • Lobby/entrance. We could add a welcome hologram.
  • Final room. There is a mechanism in the wall that brings up a cell with the human skeletons of the mother and the child hugging. Furthermore, in the collapsed wall, there is a deer that looks us up and then leaves (showing first the deer and then the skeletons). We could hear the singing from the ghosts.

References

Cottonbro Studios. Free Dystopia Photos (online). Available at: https://www.pexels.com/photo/person-in-black-and-white-hoodie-wearing-black-gas-mask-4888482/ [Accessed 22 February 2023]

Categories
Collaborative

Week 6: Third Team Meeting – Environment & Ghosts Basic Models & Unity Compatibility

This week, I had one meeting with the group students another with the lecturers and collaboration partners. We reviewed the first models from ghosts and environment as well as optimisation for importing into Unity.

I started to model the ghost of the mother this week so the 3D animation girls could carry on with the rigging and animation of the characters as soon as possible. To start off, I took a reference female model from Maya’s ‘Content Browser’. Then I researched about possible looks that were more suitable for an apocalyptic ambience. I started to think about what a person would wear the day that they are supposed to be euthanised, and I reached to conclusion that a person that is going to kill their child to then kill themselves, would not care much about appearance, so basic jeans and jacket would be the most logical option.

Then using symmetry and the soft brush, I started to shape the features of this character since the preset model from Maya is pretty standard. I also duplicated the body, dissected it in sections, and adjusted the scale so I had the basic shapes for the model’s clothes. Then with a smaller soft brush, I also added some creases to the clothes so they would look more realistic.

Later on, I researched about how to model hair as I have never model this. I found a hair tutorial with XGen in Maya:

Maya XGen tutorial to create realistic hair (Karimi, 2021)

This tutorial uses XGen tool in Maya to generate ‘guides’ that would lead the direction of each strand of hair. After all the guides have been placed the tool creates a duplicate of this in the form of hair strands. We could add more or less density, width, and even texture. Then we also have to set up painted maps so the tool recognises the direction that the hair needs to follow. Lastly, with the help of modifiers we can refine the final look with tools like ‘clamp’ (to fix hair to place), ‘frequency’ (to add ‘noise’ and randomness). I followed most of the tricks and techniques from this tutorial and came up with the following hair model:

I was so proud of this hair but it needed some tidying up as it looked a bit messy. Also, as this was only a practice I also started to think about what kind of hair style this character could have. I think straight hair would be the easiest as I also have limited time and to shape the hair takes me quite some time.

Main weekly meeting

In this meeting, the VR team showed us their floor plan of the building’s interior we are going recreate. They also set some possible routes and interactions the main character could follow.

From VFX side, I presented my ghost model of the mother. They liked it, however they mentioned that it could be nice to add eyes and face features. Since this was going to be distorted with particles effect in Unity I considered unnecessary, however, they said that it could help to have something that gives a bit of characteristic features to the ghost. I came up then with the idea of a face mask, taking in consideration that the people cannot really breathe properly because of air pollution, so they could wear like a face bandana tied to the back of the head. Also, VR girls mentioned that the hair could give some issues when importing into Unity since it is not made with geometry so the programme will just ignore it.

Regarding the environment, a draft model of the map was presented by Martyna and Jess. It also looked very good but we needed to discuss dimensions as it needed to be tested into Unity to see the scale of the ceilings, walls and how it would look like from the viewer’s perspective. Overall, it seemed to need higher ceilings, the waiting area needed to be rounded with some exterior light coming through the ceiling (windows, or broken parts), and the shape of the door frames should be in a transitional form and not flat (see sketch below). We could also see some parts of London from the broken parts of the walls so the audience can be situated.

Model hair optimisation, face mask, and eyes

Following the review received in the last meeting, I decided to optimise the hair top convert it into mesh so Unity would be able to read it. But before to do so, I wanted to adjust the hair style of the model first to a low pony tail and also model a hair band.

I optimised the hair following a tutorial I found in YouTube, which explained how to convert an xGen curve into mesh:

Hair optimisation tutorial (My Oh Maya, 2016)

First, I needed to select the hair guides created with xGen, and then in the xGen tool ’utilities’ tab, select ’guides to curves’ and ’create curves ’ to be able to create physical curves that can be used to create a mesh. Then in ’create’ we select ’sweep mesh (dialogue box)’ and we click on ’one node for each curve’, so each curve can have a mesh that can be modified individually. Then we adjust the mesh to the shape we want. In my case, I used a flat card shape to then add the texture with ’standard surface’ and link the hair texture with an alpha and a normal map. The alpha will be linked to opacity so the black parts of the texture card do not show in the render, the normal will be linked to the bump map to give texture, and the diffuse is linked to the base colour.

In addition, taking a plane divided in half and forming a triangle shape with this, I also started to fold it on top of the character’s face to form the face mask. I also added some creases and with a deformed and scaled down torus I created the back nod of the bandana.

Bandana mesh and texture

For the eyes, I simply took a sphere and duplicated it, and then adjusted the UV map so it fits the sphere. I added a texture of eyes that I had saved from one of my previous projects from term 1 (lip synch face model). Lastly, I added the rest of the textures (clothes and skin).

References


Charro, J. Fade to White Characters (online). Available at: https://charro.artstation.com/projects/PY5e3 [Accessed 18 February]

Karimi, H. (2021). Creating Realistic Hair with Maya XGen (online). Available at: https://www.youtube.com/watch?v=RkpJ4LGJrf8 [Accessed 18 February 2023]

My Oh Maya (2016). XGen for Game Character Hair (Part 1) (online). Available at: https://youtu.be/1Fs6rle_IbE [Accessed 18 February 2023]

Nam, H (2014). Marlene : Last of Us by Hyoung Nam (online). Available at: https://www.artstation.com/artwork/gw9x [Accessed 18 February 2023]