Categories
Final Major Project Maya

Final Major Project

Critical Reflection

Now that we have reached the end of our Final Major Projects, looking back on the development cycle I can identify several enjoyable areas of working on this video game, and some areas which I struggled with. Positive aspects were working with Unreal Engine once again, as the interface, blueprints, materials and lighting were quite familiar to me since working previously in UE4. For the most part I enjoyed setting up the gameplay mechanics, like discovering hidden keys and remotely opening doors, yet there were several areas which were quite a challenge, mostly due to the nature of tutorials online which used several different versions of Unreal Engine, so certain things had to be adapted.

One especially frustrating issue I was experiencing was with Ray-Tracing and heavy noise through translucent materials, I held off from upgrading my UE5 version to maintain compatibility with the University computers, but in the end I was forced to upgrade due to the noise, which was heavily reduced in newer versions of the editor. This did mean that I would have to bring my laptop to university if I wanted to work on the project, but it was worth it. Another issue was my limited knowledge of Blueprints, which made adapting tutorials made for UE4 a fairly difficult affair, as many of the mechanics I wanted to feature, such as the InspectableItem system, had to be implemented in an imperfect way. The mechanics work fine for the gameplay, and progression of the level, just slight things were not working as they were intended, such as putting the object back in the players hands after inspecting it, and few others.

The project was almost changed entirely, as the daunting amount of modelling, texturing, layout, and mechanics was becoming apparent with the large open space of the Museum. The newer idea was to experience a walk through a section of Dante’s Divine Comedy, with a crosshatched shader, as in the illustrations of the book. A small amount of work took place on it, but after a few days I reverted back to the Black Museum concept, which I’m glad I did.

This project taught me a lot about Unreal Engine on top of what I knew previously, and the modelling and texturing process is almost second nature at this point. Although the hard surface models remained fairly simple, I wanted to get most of the details through texturing and high-poly bakes. I did use some downloaded assets, which is something I did not really want to do, but modelling the car asset was a project in itself, so I chose to use a premade model available on the Internet, with my own textures however.

Now at the finishing line, the video game is now at a stage which is completely playable, and I achieved around 95% of what I set out to do for this project.

Development Process

For my final project, I wanted to create a video game in the genre of a “walking simulator”. This would involves inspecting and interacting with unique objects, and generally to appreciate the environment.

I wanted the environment to be based upon the Black Mirror episode titled “The Black Museum”. The episode has some striking visuals and environmental narrative, which I will attempt to recreate for this project.

References & Moodboard

PureRef References & Moodboard

Final Gameplay Trailer

Final Showreel Visual Trailer

Playtests

Final Playtest Before Upload

Here is where I added Controller Support, some textures, and a toggle crouch mechanic. I also created a game mechanic which locks the player into the museum by way of a disappearing door, and their objective is to discover a hidden door and key in order to escape.

Playtest 1

Progression

Monday 27th November

At this point, I had all the assets textured, the gameplay was working, and all that was left to do was package the game. In doing so, I was met with several errors causing the build to stop. These included: invalid names, unused levels, and the worst offender was the ‘unknown cook error.’ This required some extensive research to solve, and eventually I discovered the option to ‘Build only selected levels’ in the project settings under ‘Packaging’, and I input the single level I had been working on into the field. After doing this, the build commenced, and I was able to play the game outside of the editor.

Final Image
Roadside Sign Textures
Chair Textures

This 3D model is one I had created quite some time ago, and I decided to reuse it with new textures, as the texture’s I had created for it long ago were far less detailed as I had limited knowledge at the time. The model works quite well for the scene despite requiring some fixes.

Textured Books, Jug, and Shelf in Unreal
1st Textured Book

Using Anchor Points and Normal stamp layers in Substance Painter, in combination with the stamped text and micro-height layers gave me a very good result for the textures of the book.

Textured Metal Stool (WF)
Textured Main Sign

The Hangman asset was creating quite a few issues that I had to overcome to reach the texturing stage. As the model was created in ZBrush, and also the UV layout was created in ZBrush, I made a certain mistake when setting up the UV’s. When using the UVMaster plugin, instead of using a clone of the model to create the UV’s, I used the original mesh, something which ZBrush advises not to do for this very reason.

After running the plugin and flattening the UV’s, the geometry completely broke, and I was left with completely degraded faces, unable to be imported into Unreal. Getting back from this stage was quite a frustrating affair, and the undo button would not fix the issue, again as warned by ZBrush. I was able to overcome this however, after bringing the model into Maya and working on removing the broken geometry, as well as fixing several problematic areas. The model was then able to import into Unreal, and I could also finally start texturing. This one error caused a fairly extensive amount of repair so I’ll be absolutely sure to use the correct workflow in the future.

Changed the lighting

Monday 20th November

For this weeks progression, I added the ceiling textures, bath-frame textures, reception wall models and textures, and metal detector textures. I also made various tweaks to several areas of the game.

Videos Playing on Showroom TV’s

I created 4 trailer-style videos which begin as the player comes into contact with a TriggerBox. One for the cinema scene, and three for the main showroom.

Video Playing on Cinema Screen
Created Pause Screen

For this weeks progression, I added sound effects to all game mechanic related actions, including different footstep sounds depending on material, gates slamming sounds, royalty free museum ambience, and some others. I added an attenuation system so the music from the videos gets louder or quieter the further the player is from the screens. I also posed a figure in ZBrush, lowered the geometry, and applied a hologram style material to the model.

I also added a pause menu which shows the controls of the game, both Keyboard/Mouse and Controller layouts are shown. I ran into an issue here on Controller only, where if the player presses the Pause button again, rather than the (A) button, the UI will print another screen, rather than removing the one already there. This meant the player cannot remove the UI if they press the Start button, although this can be fixed with mouse input to remove the Widget. After many, many efforts to stop this from happening, this was slightly out of my capabilities to solve and I could not find a solution online, so instead I placed a warning message advising players not to use the Start button to unpause..

Posed ZBrush’s included Male 3D Model, created a hologram style material

Monday 13th November

Changed Landscape Materials

I added several features to the

Theatre Entrance Textures
Added Theatre Floor Textures
Added Reception Floor Textures
MetalHead Dog Reference Image
Added Interactive Screens

Here is where I added some interactive UI Widget Screens, which on activation gives the player a short paragraph giving details on the given model. Details such as the episode name which the model features in, and a brief explanation of the models use in the episode. I used the image of a prominent logo in the Black Mirror universe as circling and pulsing animated UI elements.

Modeled & Textured Native American Tomahawk (Low Poly Bake)
Drum in Unreal
Bottles in Unreal
Chair Textures
Custom Black Mirror Montage Video in Unreal

For the theatre room, I created a montage of Black Mirror scenes which have a feature in the level. Utilizing the level blueprint, I chose to activate the start of the video when the player enters the theatre and hits a TriggerBox, rather than have it play continously on a loop.

Custom Glass Material in UE5

Here is where I created a custom Glass Material to encapsulate the Bee Drone, as in the episode. I was having serious issues with noise, particularly in areas with translucent materials, and the effect was especially pronounced when looking through multiple layers of glass. As this is an issue that had plagued me since establishing the showroom lighting, I attempted several methods, many of which to no avail. The main methods of troubleshooting were disabling Ray-Tracing and Path Tracing entirely, upgrading the project to a newer version of UE5 (this worked to some degree, but maintaining versions between the University and Home PC was important), attempt at denoise, and various other tweaks I attempted to alleviate the noise. I also created an iridescent glass material to appear as if ray tracing was enabled, but this still didn’t quite match the quality offered by ray-traced lighting.

The method which finally worked (mostly) was removing the glass panels from the imported model, and replacing them with standard cubes in Unreal’s Editor. I then attached the Glass Material to the cubes, and this worked perfectly. Once doing this the noise was cut down by a significant amount, and I could still utilize ray-traced lighting instead of falling back on Rastered lighting, which appeared far, far better on translucent materials and shaders.

In the end, I updated the project to the latest Unreal version, as I had seen multiple posts online quoting version 5.0-5.1 having particular issues with translucent materials and Ray-Traced lighting. It was for this reason that I abandoned working in version 5.0.3 and updated to v. 5.3.2. This improved many aspects of the editor, the framerate was far smoother, the noise was decreased heavily, and I could follow the most recent tutorials online when it came to creating the blueprints. That being said, I was becoming much more familiar with creating blueprints in Unreal, and was able to adapt several tutorials from UE4 using knowledge I had gained through setting up mechanics, both in this project and one’s I had worked on previously with UE4.

Monkey in Unreal
Model in Unreal
Using ZBrush Dynamics to Simulate Cloth
“Counting the Years” Decal
Prison Textures
Showroom Walls Texturing

Monday 30th October

Museum Exterior Textures
Museum Reference
Museum Outer Wall Textures & UV Layout (4k Map)
Petrol Station Reference
Modeled & Textured Bell
Reception Desk Textures
Black Mirror Reference
Textured Bed & Mattress

I added two downloaded assets to speed up the process, as modelling generally simple assets was not something I wanted to waste too much time with, so I downloaded a Prison Bed Frame created by Kuuti from CGTrader.com. I created the mattress and baked the high poly details, and then created the textures for both the bed frame and the mattress, discarding the authors textures in the process. I also used another downloaded asset, a prison toilet created by Askance, from CGTrader.com. Both these assets were free for non-commercial use. I also created textures for the toilet asset.

At this point, the level is now an ‘escape room’ type of video game, where the player must discover a hidden key to unlock the door in order to leave the Museum. I created several blueprints to implement this design, including the unlockable door and key BP, a UI indicating the player has the key, and a random array to change the spawn location of the key with each playthrough.

I also began adding assets which I had previously created to speed up filling the scene. These include the Deer Skull, Bow, and Hatchet models. I ended up modelling another Tomahawk axe, as the one I already had did not fit the scene very well.

Added Deer Skull & Quiver to Unreal
Quiver Texturing (Low Poly Bake, Arnold Render)
Deer Skull Sculpt

Layout

Added HeightFog

Museum in UE5
Black Mirror Reference

During the summer holidays, I began work on this project by sculpting the landscape in Unreal Engine. I also began modelling large assets to start filling the scene.

Petrol Station in Unreal Engine
Petrol Station in Maya

The museum has a large showcase hall, with several interesting assets from the series.

Layout in Maya

Showcase Hall in Unreal

Texturing

Added Posters & Refined Textures

Here is where I wanted to have the gold trim appear behind the posters. This was very difficult to achieve in Substance Painter because I could not line the shapes up with the posters correctly, so instead I used a basic shape decal in Unreal Engine and positioned it just between the wall and the poster. This achieved exactly what I wanted it to. I also changed the golden trim several times until I found something I was happy with.

Carpet, Chairs & Table in UE5
Textured Worn Carpet
Modelled & Textured Theatre Space
Reception Wall Textures

Modelling Assets

Ashley Too Robotic Doll Asset

Ashley Too Doll Reference

Quilted Door Asset

Panel in Unreal

For the door to the cinema, I wanted to create a vintage-style panel. To achieve this, I found a free ‘quilted’ pattern, and edited the image to have a high contrast between black and white. I then took the image into ZBrush, applied the image as a texture to a low poly plane, subdivided until I had enough geometry, and I used the texture as an alpha to bring out the pattern. I then baked the high poly mesh in Substance Painter, and began texturing the asset.

I revisited this asset in order to cover the whole panel with the quilted pattern, as I thought it looked far better this way.

Wall of Faces Asset

Radio Tower Asset

Radio Tower in Unreal

Cinema Chairs

Mannequin for scale
Cinema Seats UV

Museum Signs

Black Museum Sign
Black Museum Sign
Petrol Station Sign

DNA ‘Cloner’ Asset

DNA Cloner in Unreal
DNA ‘Cloner’

Sensation Simulator Asset

Ford Thunderbird (This was abandoned in favour of a downloaded asset)

Player & Interactable Object Blueprints

I created several blueprints for the game, as the project originated from a Blank template. I created the basic movement, jumping, and sprinting nodes and bound them to their respective keys. I also created a FlashLight blueprint, which toggles a flashlight held by the player. I also followed several tutorials on setting up a system which allows the player to pick up certain objects, and inspect them, and I implemented this system into the game. I created certain game-feel blueprints, including a fade-in effect when starting the game, and a fade-out when the game ends, accompanied by an interface widget which shows the message “Thanks for Playing!”.

Start Inspection

I also created a head-bobbing effect to make the movement more realistic.

Categories
Collaborative Showreels

Low-Fi Collaborative Project Showreel

Collaborative Project Final Showreel
Categories
Personal Showreels

Personal Project Showreel

Personal Project Final Showreel
Categories
Advanced & Experimental Personal

Personal Project Development

Personal Project Presentation

After this presentation, I very quickly realized that I had massively overstepped my abilities when describing the original task I had wanted to achieve. This was very helpful as the question part of the presentation made it obvious that the original idea I had in mind was simply not possible in the timeframe we had, whilst also accounting for the other projects we have to complete. To this effect, I heavily reigned in my objectives for the personal project. Keeping to the theme of H.R. GIger, I wanted to create a striking 3D recreation of one of his artworks, particularly one’s involving the ‘Xenomorph’ concept.

As a long-time and avid fan of the Alien franchise (1979-2017), this was something that would maintain my interest throughout it’s course, and for personal development would help me develop further skills in 3D modeling, digital sculpting, lighting, and other elements of 3D creation.

References

Xenomorph Anatomy. Image Credit: Christopher Stoll – Twitter.com
Ultramorph Size Comparison. Image Credit : Carlos Huante – Aliencovenant.com
Alien T-Pose Sketch. Image Credit: Eric Sanders

Theme & Progress

Artwork: H.R. Giger. Source: The Tallenge Store

I gathered several references to develop the concept for our personal project. I settled on the final piece above to be recreated in 3D, whilst omitting certain areas such as the “stamped” text. I began to sculpt a Xenomorph style 3D model to be composited in front of some industrial paneling. For this model I used several references.

As an artistic decision, I wanted to refrain from representing Giger’s hypersexualized style in this project. My reasoning being that once finalized, I did not necessarily want there to be any possible comedic aspect to the design. Whilst Giger’s sexualized themes are apparent in the majority of his artwork, these themes are not ones I wanted to portray when concepting this 3D sculpt.

Sculpting Hi-Poly Mesh

Torso Sculpting
Using Zbrush’s Stager & Interpolate tools. Adjusting Transform Curves to refine positioning
Smooth Preview (Zbrush Render)
Ghosted Model & Reference Image

Just for the sake of doing so, I created the text ‘Giger’s Alien’ in Zbrush’s 3D Text plugin, and used live-boolean to imprint the text into the wall. However, this will not feature in the final piece.

Further Development

To keep the reference image and model at the exact perspective I needed, I utilized ZBrush’s reference image toolkit and saved a camera to the image which aligned to the model, which I could return to at any time to check form and structure.

Secondary Detailing and Adding Contrast

At this point, I decided due to time constraints to end the sculpting phase with my current level of detail, and begin retopology and baking tests for texturing.

Began ReTopo
AUTOPO Topology
AUTOPO Topology & UV’s

Once I had completed the sculpt, I moved to re-topologize the model for texturing. I was also learning to use the toolkit in 3DCoat, as I find it to have the most robust retopo capabilities. I made multiple efforts to manually topologize the model correctly, but could not quite achieve the result I was looking for, so I resorted to using 3DCoats auto-retopology toolkit. The strength’s of this software truly show in it’s AUTOPO ability, and the manual toolkit is far beyond what Maya’s is capable of.

I tested retopo using ZRemesher with several different settings and meshes and never got close to the results I was getting with AUTOPO. In certain areas adjustments had to be made, and the teeth were unsurprisingly unusable, but for a reasonably accurate and much quicker result, this was by far the best way. I was already planning to use some of the original topology created in ZBrush such as the teeth, as these were already fairly optimized for renders, and only required a quick run with the UVMaster plugin with polygroups enabled to apply textures. I also assigned the UV’s in 3DCoat, and edited the layout in Maya.

Started Texturing Head
Texture & Lighting Test in Maya

The torso area of the sculpt was quite difficult to obtain a decent bake with, and I attempted several times with different topology to get a good result without any artifacts. After finally getting a successful texture bake, I moved on to texturing. Since I had created the helmet texture using a number of smart masks, I created a smart material which I then applied to the torso, and by using a Paint filter with a Multiply blend, I erased areas of the smart mask that I did not want affected. I left the murky green material applied as I felt it added a nice contrast to the highlights. By using this Smart Material, I could maintain the colours and roughness of the materials through all the different parts.

I then created a scene in Maya, with 3-point area lighting in an attempt to match the lighting of my reference, with an added rim light for edge lighting. I also changed the camera attributes to match the aspect ratio and dimensions of the image, and changed the focal length to appear orthographic. This is the template created to display my final piece.

Here is where I added an emission map to the tubular vents. I used an orange base colour and overlayed a green emissive light on top to attempt to create an interesting blend.

At this stage, I’m reconsidering bringing the Xenomorphs pharyngeal jaw into the scene, as I honestly think the model looks a little bit better without it. Although the mesh has decent topology and UV maps, I’m willing to make sacrifices when it comes to the overall look of the final project. I will keep experimenting with it, and decide whether it should feature in the final piece, but at this moment I am leaning towards without.

3D Text created with ZBrush

The reason for creating this 3D text was to catch the light as it moves in the scene. I’m still unsure whether to keep this or use an overlayed text, but this way seems more interesting. This was created using a downloaded font which matched the Alien films, and made into a 3D mesh using ZBrush’s 3D Text plugin.

The techniques I had learned in Substance Painter became very applicable in this project. Using smart masks, anchor points, baking high poly geometry, and generally how to layer stack correctly were all key in helping me to get a good result. There are some areas which could be looked at when it comes to the high poly mesh, mostly for aesthetic purposes, however from a technical perspective I was happy how things turned out.

Weight Painting

As I wanted the model to have a slight degree of movement, I created a basic rig to move the arm. I also keyed the head to rotate on a gentle curve.

Animated Rendered Test Sequence

I rendered out a full test sequence to see the animation and lighting in motion. After this initial test, I wanted to fill out some more details in the textures, such as the ridged arm parts and the ridges on the Head Tube. Also, I noticed the light was hitting areas which I did not want shown, so I created two Arnold Light Blocker filters to obscure these areas. There was also some strange warping on the arm joint when extended, so I went back in and adjusted the weights.

I attempted to create a basic rig which moves the jaw, but due to the topology being set up for texturing purposes, getting a good enough rig was a difficult challenge. Since rigging and weight painting are not specialisms which I’m particularly good at, the focus of this project was not necessarily to include any animation more than what was simple to achieve. Suffice to say, I did not want to ruin the project with poor weight painting results and bad animation.

Added Head Tube & Arm Ridges, referenced with Smart Masks
Added some weathering & scratches
Final Render

For this animated sequence, I wanted to convey the feeling of an image ‘come to life’. I also wanted to have the sequence loop correctly.

Although I was fairly content with the current stage of the project, I still felt inclined to attempt recreating the industrial paneling that was in the reference image. I decided to use a low poly base wall, with a high-poly bake. To create these details, I utilized a sci-fi industrial decal pack I had purchased on ArtStation some time ago, and used Zbrushes ‘Make 3D’ plugin to recreate these alphas into 3D geometry, and arranged these pieces along the wall. To create the cables, I tiled a 3D mesh several times, dynameshed, and ZRemeshed the geometry. The curves were adjusted using the Gizmo’s curve function.

Keeping in mind how I wanted the textures to be applied, I assigned a vertex colour fill to each object I wanted to texture separately, whilst using the same material. I then baked these maps onto the low poly base mesh. This is all in an effort to reduce render time, test more skills in texturing, and perhaps to improve the overall look of the project.

High Poly Paneling
Colour ID Maps
High Poly Alien & Wall Panel
Low Poly Bake, Began Texturing

At this stage, I decided not to proceed with the panel. This is because I was already happy with the result I had obtained from the render, and balancing the wall against the character would be very time consuming, alongside the other work I had to complete. So rather than begin a new section of the project I knew I could not bring to a good level of quality, I instead refrained from making large changes to the look.

Categories
Final Thesis

Final Thesis Proposal Topic

How Visual Effects Have Impacted Industry Practices in Video Games:
Translating the Visual Language of Film and TV to Computer Games

This report will attempt to define, describe, and interpret the visual language of film and TV, and discover areas of film production which have been incorporated into the development of video games. By analysing several different aspects of the visual effects industry, including: developments in software engineering, accessibility of development tools and the learning curve of VFX production, pre-rendered cut-scenes against real-time rendering in gameplay and its effect on the engagement of audiences, and other notable points of VFX in the game’s industry.

Through analysing and contrasting several aspects of VFX production in combination with game development, this report will also attempt to discover which direction the industry is heading towards. With fully animated film production occurring in real-time rendering software such as Unreal Engine 5, with the engine’s implementation into Disney’s animated series, The Mandalorian (2019), the potential of video game development tools complimenting fully featured movie production is perhaps the next step into the future of blending film and video games into fully realized animated features and game production. With Epic Game’s promising increased use of Unreal Engine for the creation of animated short film and utilization in fully funded AAA projects, audiences can expect to see future titles which incorporate game development tools into production.

By looking under the surface of development schedules, the apparent effect of video gaming on the global market has been exponentially growing since the online gaming boom of the early 2000’s, and by 2023 the market value of video gaming triples that of the revenue made from box office movie production at 249 billion dollars (2023, Mordor Intelligence). The factors behind this valuation include: increased global access to video games, the impact of high-speed internet access worldwide on game sales, the impact of gaming as a ‘live service’ and the active deployment of software patches, as well as other selected aspects of the video gaming industry in market valuation.   

Categories
3DEqualizer Advanced & Experimental Maya

3D Matchmove in 3DEqualizer

For this task, we we instructed on how to use 3DEqualizers match-move and tracking capabilities to match-move 3D assets into a live-action shot. This task was interesting to me as 3DE’s toolset seemed to be quite usable and understandable enough to start match-moving assets quite quickly, when compared with the struggles I was often having with Nuke.

I created around 40 tracking points to several areas of interest in the scene. These included high and low contrast areas of the footage which could track accurately. Due to the tracking having a somewhat manual feel to the process, this made the software more understandable as I was starting to grasp how to create accurate points, and assign 3D geometry to. By exporting into Maya with the footage already imported, it was clear how to proceed from that point after assigning a floor plane, correcting pivots, and fixing the scale.

Posing Rigs

Rig and model created by: Mia Pray, Rijah Kazuo, & Sagar Arun. Obtained from Agora.community.com
Rig and model created by: Luiz Perez & Tre Vital. Obtained from Gumroad.com

Here I found some freely available (non-commercial) rigs I had used previously in other projects. The models, textures, and rigs were not created by me, and I only utilized these for posing purposes. I posed them in separate Maya projects, and exported the OBJ’s to the composition.

Personal Models

“Angel Goomba” (Nintendo) – Model & Textures
“Blinky” – Model & Textures

These two models were ones I had created some time ago, and I wanted to utilize them for this scene. I did a “quick & dirty” re-topo & texture using ZBrush and Substance Painter, and brought the models to a decent enough base texture level, without including baked normal maps and manual retopology.

At this point I’m approaching the task from a very experimental angle, seeing which type of aesthetic works well, and further refining.

Composition in Maya

Scene in Maya

Render in Arnold

Tracking Process in 3DE:

Set up basic environment

Import footage to Camera – Set grade to 2.00 & Soft Clip to 1.00

Buffer – Export Buffer Compression file

Config Pane – Horizontal/Vertical Pane – Image Controls & set to desired to improve tracking

CTRL+click to create tracking point – adjust focus & search areas – Alt+click to select points – “, + .” to track frame by frame.

Once tracks are created, Deviation Browser – View All Deviation Curves – Adjust tracking points & aim for Average of .5 or lower

Parameter Adjustment – Lens Tab & select LD Classic Distortion – Choose parameters to adjust – “Brute Force All” – “Adjust” in Parameter adjustment to begin creating parameter tracking data

Calc – Calc all from Scratch to get point cloud and camera movement – Enable frame buffer (around 10 frames) and recalc

Select points in 3D Viewer – 3D Objects – Mesh From Points – Legacy

Export Lens Distortion as Nuke script – Undistort in Nuke with Values

3DE – Export – Export Maya .mel & import into Maya to begin Matchmove

Categories
Advanced & Experimental Collaborative Group

Lo-fi Collaborative Project

For this project, we were divided into teams which included different roles. I claimed the role of CG lead for team Y, whose chosen theme was Lo-fi. This genre of design is best compared to the style of Alien (1979) and the original Star Wars (1977-) movies. With this style in mind, we went more specific and decided upon the style of ‘cassette futurism’. This included geometric computer design, VHS tapes and game cartridges, and generally centres around the idea of a futuristic 1980’s aesthetic .

Our team members are as follows:

Look Dev Artist: Tim Schweizer
Look Dev Artist: Kaiyue Wang
Look Dev Artist: Tianqixu
Look Dev Artist: Jess Howard
Look Dev Artist: Margita
Look Dev Artist: Ruijia Zhang
Look Dev Artist: Dominic O’Donnell
Look Dev Artist: Saurabh

CG Generalist: YaFang Zheng
CG Lead: Daniel Loutfi

Compositor: Guoxin Lin
Compositing Lead: Mingyue

Real World Objects

We first set out to collect and gather resources to fill our mood board and asset list. I saved several images which followed the art style and genre, and also several references to real-world objects which fit this aesthetic.

3D Models & Renders

Credit – Alfie Lloyd – https://www.artstation.com/artwork/9NOg9L
Credit – Patrick Metz – https://www.artstation.com/artwork/bKJg9o
Credit – Goktug Danaci – https://www.artstation.com/artwork/PexQQZ
Credit – Elijah Jackson – https://www.artstation.com/artwork/qQvBY2

Weekly Development

Asset Creation

Signal Antenna WF
Keyboard Wireframe
Router Model Wireframe

TV-Radio Wireframe

VHS TV Wireframe

Connection Inputs

Full Stack + Table

In order to kick-start my involvement in this collaborative project, I first wanted to attempt modeling in our chosen style to get a feel for the concept. As cassette futurism tends to include fairly geometric shapes, to Tim Schweizer’s credit this was a very achievable art style in terms of 3D modelling and maintaining consistency.

To this regard I wanted to model the key features of tech in cassette futurism, namely: thick ribbon cables, rotational dials, ports and cutouts, numerous sliders, and small greenlit screens. I attempted to maintain a realistic bevel amount for the plastic edges to get a more molded shape. For the helix antenna, I thought this might be more interesting than a simple plastic wand, and I created this in ZBrush. These assets could be used as filler objects for the scene if needed, as there are several tech areas of the scene.

As my role requires that we maintain a consistent style amongst several 3D asset developers, having a dynamic 3D reference towards shapes and features can be very helpful.

Week 2 – 17 April

Pre-Vis & Layout

In order to get the room dimensions & camera perspective, I took a screen shot of the empty room, and loaded the image into fSpy. I had utilized this software in my BA Animation course for match-move purposes, and it was very quick and effective at getting camera parameters. I then imported the fSpy file into Blender, changed the coordinates to match Maya’s orientation, and exported the .fbx files into Maya for pre-vis.

Blender fSpy
Maya Pre-Vis

For a consistent sense of scale, I brought the Unreal mannequin into Maya and reduced the topology so it would be light for our group to import into their scenes and use as a measurement aid. I linked the model into our Google Drive folder for easy access by the team.

Pre-Vis Model Layout

For the last section of pre-vis in Maya, I created several low-poly placeholder assets to get an idea of the layout for our team. I used an HDRI for the exterior, and a light portal to minimize noise. I used several modelling tools to develop this basic outline of the perspective and layout.

Keyboard, Antenna, Radio, VHS, and Router

I also wanted to test my models by importing them into the scene.

Overall, these techniques seemed extremely effective and quick at granting the development pipeline a strong idea of what the final project could look like, and there’s a very good chance I will incorporate these techniques into my FMP.

Week 3 – Monday 24th April

Now that we have received the footage, our compositors have completed tracking the scene in 3DEqualizer. I continued to keep advising and trying to help our 3D asset developers as much as possible by suggesting certain changes to aspects of their models to fit our scene, fixing topology, and trying to generally be as useful as possible, whilst staying in communication with our composition team.

3DE Workspace & Markers

Un-distorting the Plate for Maya:

Get Distortion Values (D: 0.07 QD: -0.04)

3DE Scene to Nuke
Trackers/Locators in Nuke

I also began tracking the scene in 3DE as this was our next task for the upcoming Friday. There were some asset changes, as the projector was quite a difficult shape to manage, so we switched some assets assignments around and I decided to take on modelling the projector.

Reel Projector Reference (https://www.pngwing.com/en/free-png-zpryp)
Projector Wireframe
Projector Work In Progress (Arnold Smooth Render)
Added AiStandardSurface Materials (Pre-UV)

Created UV Maps

Started Texturing in Substance (WIP)

Team Asset Development & Quality Assurance
(Applies to Entire Length of Project)

As some models are starting to make their way through the pipeline, I had a look at each model and in certain areas tried to suggest some ideas concerning topology and texture mapping. I had a strong feeling that UV mapping and texturing assets were going to be one of the more challenging aspects.

Margita Alien Tube

Dominic Glass Table

Texture Example
Model by Dominic O’Donnell

I assisted Dominic with his table and sofa models, and we made several quality-of-life changes to certain areas of his assets, with UV’s and topology. We ended up patching over the star-shaped hole in the table, as this was creating more issues than it needed to, with stray vertices and uneven subdivisions. As I showed Dominic what was achievable with texturing, even as a very rough example, we moved ahead with the changes. Once this was bridged over, and the topology corrected, we both decided that texturing would have a much greater, and more successful design to the final asset.

Furthermore, I kept a close eye on this asset and was not too happy with the table’s legs. To this effect, I sat with Dominic to help him create something less angular, and more visually appealing. I suggested two options: creating legs with an ‘X’ shape, with nicely beveled edges, or alternatively, simple rounded and tapered cylinders. His decision was the former, and we worked to develop this asset.

Dominic Couch Asset

UV Layout Assistance. Model by Dominic O’Donnell
Zbrush Sculped Cloth Compression Folds
Hi-Poly Baking Tests

Whilst doing these high poly bakes and texture tests were not strictly my role, I still wanted to envision what certain assets in the scene may look like once completed. As someone who personally enjoys pushing models to their completion, I could not help but attempt a quick texture test. This was also helpful by granting me further insight into how the model was created, and how the UV maps could potentially be laid out.

I also wanted to assist our look dev artist further with areas of the models that could be improved, and more importantly, to garner more interest in the final look of the model by reaching as many milestones of the 3D asset development pipeline as possible.

I sat with Dominic for several hours whilst assisting him with developing his models. We went through as many aspects of 3D modeling as I could possibly explain given the time. Namely we went through: modeling and correcting topology, UV mapping and layout, texel density and resolution, assigning materials and shaders, general mesh cleanup (Deleting history, freezing transforms, fixing N-gons), and a short rundown of subdivision surfaces.

The next objective in the pipeline would be texturing, which in this case I would like Dominic to keep somewhat simplistic, whilst also visually interesting.

Tim Cactus Asset

Our look dev artist Tim uploaded his cactus model to the drive. Having seen the asset and parts of its development in class, the look was very good and it was obvious that a lot of work had been done to develop the model. However, there were several optimizations that needed to be made to bring the asset into the scene.

First off I noticed the file size was quite large, indicating a high polycount. In my eyes, a 3D asset can be considered ‘heavy’ if the file size exceeds 25MB, and in this case the size was 50MB so it was clear that optimization needed to be done. Opening the model in ZBrush confirmed this, with a polycount of 1m+.

Cactus spikes creating high polycount

I proceeded to do a quick texture bake on the model, to see if we could replicate the spikes somehow with normal and height maps. Personally I would say this is the way to go with this asset, and use colour ID maps to texture with ease. I gave the model some UV’s and materials, and began some tests in Substance Painter. I did not complete the texturing as this is not my role for this asset, and used my work as an example to Tim who I contacted about the asset, and what we can do to make it usable in the final scene.

Baked Normals, Quick & Dirty Texturing. Model created by Tim Schweizer

Saurabh Floor Asset

There were some major issues which I encountered when importing this particular model into our Maya scene. The worst case being a specific piece of the model which was breaking Arnold, and causing the whole scene to appear black. As I had placed this scene into our Drive for our CG generalist Yafang, she straight away told me that the render was not working at all. I had a closer look and found the broken piece of geometry, which was a center panel created with Booleans. As a temporary workaround, we removed the panel from the scene, and the render was able to take place.

As I had been notified by the artist that the development had incorporated Boolean geometry, I predicted earlier that this was going to create issues in rendering and topology if not looked over carefully. My prediction however paled to the reality of the final asset. Despite receiving approval in ftrack, this model was clearly not ready and require much attention to be usable.

Many N-gons and broken topology

Week 4 – Monday 1st May

New Pre-Vis for Working Plate

New Previs with Tracked Plate

New PreVis with Plate Overlay

PreVis Playblast

For this week, I re-created my pre-vis of the scene with the camera track and locators exported from 3DE. I exported the models from my original pre-vis to illustrate layout in the final plate. I also created a drone model as a placeholder for our look-dev drone modeler, and animated the model to fly around the scene with the camera.

As I was asking some of our look dev artists about their assets, I discovered that some of the team were working on effects such as small explosions which are detonated by the drone. It was at this point I suggested that instead of the drone existing as a piece of weaponry, the drone could instead be a guide, or a companion, which shows the camera controller around the scene. Also, the drone would have a beam of holographic light which illuminates areas of interest, and leaves behind a smoke trail. The team liked the idea, and we moved forwards to develop this further.

Another obstacle however lay ahead, as the grating in the floor was making the water feature very difficult to see. As we wanted to have animated elements such as fish, or eels swimming in the liquid, seeing them through the heavy grating would not work very well. I then set out to find a better location, and decided upon placing this on the right wall, with an area light set behind the “glass”. I showed this to our team and they also decided this was a better placement for the liquid feature, with a much clearer view of the animations.

Water Feature
Lighting & Atmospheric Fog Tests
Imported Projector Model
Adjusted Lighting to Better Match the Scene

After speaking with Gonzalo about my next steps, he asked for a top-down screenshot of all the assets and layout. He also asked for a lighting test to match the original footage. To create this lighting setup, I used photometric Arnold lights with an IES profile (freely obtained from IES-library.org) in an attempt to match the shape of the light in the footage.

Originally, as I had gone ahead and done the pre-visualization and worked on the layout early, our CG Generalist and myself decided to switch tasks, where they would be doing the lighting, and I would focus on layout.

Week 5 – Monday, May 8th

For this week, I continued to oversee asset development for our team, and sent several reference images to our chat to ask which texture style people liked the most. As we now had UV layouts for the first models, creating a consistent artistic blend between all the models and their textures would be important. The image below is what was chosen by our group, as they felt it was the most fitting to our aesthetic. I also agreed and continued to find more reference images similar to the example.

Alien Isolation – Image Source: https://www.neogaf.com/

High-Poly Panel
Low-Poly Bake and Began Texturing

I also wanted to create some trim-sheets, as I had learned in my BA that these are an effective way to provide environment artists with several different panels which maintain the style, granting the artist more flexibility to develop the scene further. This technique is mostly relevant to level design in game development, but can also be powerful for a task such as this.

Week 6 – Monday, May 15th

At this point our team have some assets ready for importing into the scene, and I started to rebuild the environment in Maya to Mingyue’s track. She had received feedback from Dominic that the track was accurate. I kept in communication with as many of our look-dev’s and compositors as possible, providing consistent updates in our WhatsApp group and on our Padlet, which I also asked everyone to try and keep up-to-date.

Lighting Render Test

As Gonzalo had asked for a lighting and render test, we rendered my pre-visualized scene whilst I was rebuilding the scene according to Mingyue’s track. It was for this reason that the track ends earlier than the complete timeline of the footage.

Low-Fi Padlet

Screenshot of Google Drive organization

Rebuilding the final scene in Maya

As well as organizing the matchmove and importing the scene, I moved to develop the ceiling of the footage to make it more interesting. This was one of the assets that were originally assigned to me, so I began to work on the models.

Ceiling Wireframe
Baked Maps with Colour ID

Week 8 – Monday 22nd May

Slightly Revised Scene with Yafang’s Lighting

At this point we moved to incorporate the lighting into the scene. We also added the screen in the top left to display some type of technical animation as a UI element, and I heavily shifted the assets in an attempt to create more balance. As our drone animator was using my animation as reference, I also changed the animation to make it more ‘playful’ for her to follow. I removed my projector asset because it no longer fit the atmosphere very well, and we instead opted to create a projected animation of a spinning planet. I also imported Tim’s cactus into the level.

As Gonzalo had told us that each look dev artist had to model three assets each, we further developed our asset tracking sheet to reflect what had to be done.

Week 9 – Monday 29th May

For this week the goal was to render out a “Master” version of the scene, with the first assets from the team replacing the original placeholders.

Throughout the week I kept a close eye on the animation of the drone, as we wanted to comp in some smoke particles which surround and follow the drone as it moves through the scene. Also I’m checking every asset that is uploaded to the Google Drive to check polycounts, UV’s, and textures.

Week 10 – Monday 5th June

This week I was getting a little desperate for the finalized assets and textures from some of the group. The floor especially was not seeming to get anywhere despite repeated requests. Due to this, and our groups need to allow the compositors a good 2 weeks to work on the scene, I moved to model a backup floor asset and textures in the off-chance that this ends up being one of the assets everyone will be waiting for.

I also continued to assist with other look-dev assets and textures, mainly for the couch and table.

Full RGBA Render with Textures

Week 11 – Monday 12th June

For this week our look dev artist responsible for the floor asset returned, and we sat together for several hours while I taught him to use Substance Painter, how to correctly set up UV’s, and finalizing the model. This is something I’ve done several times at this point to help certain members of our development team progress.

Myself and others from our team joined the meeting with Dominic, and took note of his advice, as well as the tasks he required.

These were:

Creating a Pinterest mood-board
Fixing the Lighting to emanate from a single source. (Light Portals + HDRI)
Completing an animated rendered sequence.
Creating Invisible Planes (Light Blockers)
Importing the Aquarium assets.
Fixing the Aquarium Lighting Issue (Create inner Faces)

Right now the pressure is rapidly climbing, due to not having certain areas of the scene completed yet with assets and textures.

The amount of troubleshooting required for this project was a fair amount, as we encountered several major issues and crashes. This caused some frustration when it did happen, but so far we have been able to find ways to fix these problems when they do happen.

I did some test renders of the new lighting, and immediately noticed that the scene was very dark. I took the renders into Photoshop and boosted areas which needed to be brighter to be shown to our lighting specialist. I also wanted to tell the compositors to add the low hanging fog over the vents.

Low-Poly Base

We needed a wall for the right-hand side of the room, where the aquarium is positioned. I created a low-poly base and exported into ZBrush to create a high-poly details and normal maps.

High-Poly Sculpt

Base Colour, Normals, Curvature & Roughness
Slightly Revised Textures

To further my skills in Substance Painter, I researched how to use Anchor Points, Micro-Normals, and Micro-Height to give textured normals a curvature map for smart masks to reference. These were extremely effective.

Modeled & Textured Chair with UAL Logo

Chair in Scene

Re-organized Layout

FINAL Rendered Version

Critical Reflection

This project was quite a challenge to complete. There were many things to consider, with balancing the layout being the most difficult. Communication with the team was very strong, and I feel that my suggestions were well heard, and ideas integrated into the scene. I attempted to consider everyone’s input when it came to layout, composition, and any other aspect. The working CG render of the final sequence was thwart with issues. From disappearing textures, to broken geometry, and lighting issues, it was truly a challenge to get a successful render in place, of which I have to pay my regards to the composition team for working through these problems.

. As I had researched the CG lead position, a main factor of this role is to assist in the development pipeline which I truly believe I achieved, having assisted many of our look dev artists in modeling, clean up, and texturing. I may have sat for over 36 hours in total when in comes to teaching UV mapping, Substance Painter, implementing Bridge materials, and correcting topology, which I was more than happy to do so. I had to make some suggestions when it came to polycounts and textures, and these suggestions were well taken by the team. Our look dev artists did an excellent job at updating me with their most recent models and textures, and notifying me of time they would be away.

When it comes to the overall timeline of the project, I feel that we started off very strong, with the pre-vis in place, there was some idea of the general layout of the room. I would consider this to be an important step towards starting the development cycle. Once we had assets making their way through the pipeline. the scene started to take place, and we maintained a consistent flow of building up the environment. There were some worrisome times, where certain models were taking too long to complete, or the models having broken geometry, but once these issues were communicated and fixed, as well as the aquarium asset being one of the most difficult to implement, the workflow was resumed and we maintained the schedule.

After solving all of these issues, we had a successful render in place. From a personal view, implementing all the different models and textures was quite a challenge, especially when it came to naming conventions. I made my best effort to develop the scene and showcase every persons contribution, this was quite difficult considering the amount of look dev artists. These challenges were overcome for the most part, and the project was finalized. I feel that we matched the tone of ‘low-fi’, and we also followed the objectives we set to achieve,

Categories
Advanced & Experimental Collaborative Group

Collaborative Project Final Video

Final Music Video

Artist : 5endi

Title : No Hablo Espanol

Editors : Domanic O’Donnell – Robin Carreras – Daniel Loutfi

Categories
Advanced & Experimental Collaborative Group

Collaborative Project Individual Showreel

Final Rendered Showreel
Categories
Collaborative Group

Critical Reflection – Collaborative Project

As we have reached the submission date for our collaborative project, there were several enjoyable and informative aspects which I learned of during the course of several weeks. As well as these are some areas which I personally believe could have been improved for future assignments, both from my own workflow and as a team.

The three of us settled on the idea of creating a music video, interlaced with footage from Unreal Engine 5, 3D assets, and live action footage as well as green screen for composition. This allowed us to have sections of the video where each of us could use our skillsets. As we were first developing our plan, At first I naturally presented ideas which related to game design, such as controlling a player character for a short time. Looking back, I realize now that these were not very fitting to our design, but the suggestions were taken well by my teammates. The idea of working on a music video is something I had not done before, and I wanted to try something new.

We took on roles that we could most comfortably perform, which while being a positive when coming to familiarity, may have somehow taken away some learning opportunities from this assignment. Still, as I was already on unfamiliar ground when taking on this project, this may have gone either way when coming to finalizing. As Robin is an aspiring level designer, his platform of choice was Unreal Engine 5. This also suited me, as I am also fairly comfortable with using UE5 and importing assets and textures into the editor. Dominic, who also arranged the artist and music track, has a good amount of experience with creating music videos with motion graphics and composition. I was comfortable with my usual range of 3D software and employed these skills into the assets I had been tasked with.

There were many positives with working with my teammates, as communication and updates were frequent, and meetups were long and productive. With a good amount of ideas coming from being present under a social working environment, there were undoubtedly key developments which occurred in this space. Additionally, troubleshooting each others issues and bringing them to the table was a regular happening, rather than turning to YouTube. There was a clear and constant workflow to our project, and seems to have gone without any issue other than technical problems, and a slight delay in finding a rap artist.

Issues which were a slight detriment to my role were the amount of quick paced footage, as many shots lasted around 2-3 seconds which is something I was not used to. With the large amount of live-action footage, it seemed unclear to me how the composition would work but this was most likely due to my lack of understanding music video composition. Also slightly confusing were some changes in development, as the bus was originally going to be crossing over a bridge in a quick panning shot, which was changed to a much closer angle. Additionally was the mouse rig and model, which was decided against around halfway through development. Whilst these were not imperative when it came to the final project, perhaps a bit more clarity may have been good to avoid wasted effort.

As a whole this project was fairly interesting and a good learning experience, as it also allowed us to collaborate with others in the field of design, and made us aware of the many processes which are necessary for a final piece including finding an artist, obtaining the necessary footage, working with green screens, compositing footage into Unreal, and also as an interactive development experience.