Search my Blog

Friday, 27 March 2020

Project Ignite Devlog 27/3/20


In this update, I have fixed the lever so that it now fully works and retextured some of the existing guns. Changes can be found in commit 4dff3bb869.

This is the base colour for the FN-57 Pistol

This is the nornal map

and this is combined Ambient occlusion, roughness and metalic

Monday, 23 March 2020

Project Ignite Devlog 23/3/20

In this update (commit f16ee37a95 & 2ea8eb4d6), I have added velocity calculation to items and damage muliplier which will allow every object to be able to do damage to other objects depending on their velocity. I have also fixed an issue where the swords we're not detecting any collision and once picked up they could go through any object. This is now fixed and they will be stopped when colliding with objects.

In the next commit I will be making the swords deal damage to other objects using the velocity and look in to how I could make them stab objects.

3D Modelling Devlog

For the main character of Project Ignite I want to have a humanoid robot similar to chappie and IRobot.
I think that a robot would best suit my game because the genre of it is sci-fi and futuristic. Having the main character a robot is futuristic and sci-fi it will also mak my game look look and feel different from other games on the market because they all human. It also goes well with the story the game.

This piece of work is for my portfolio so that I can showcase my soft and hard surface modelling skills on characters and objects. A portfolio is very important in the gaming industry because it shows real world examples of your skills and techniques to companies. Companies often look for quality work rather than how many portfolio work you have. This also helps me to understand character creation and pipelines used.

For reference I want my character to look similar to these:

https://ew.com/article/2015/03/06/how-build-cooler-robot/
https://irobot.fandom.com/wiki/NS-4
For my first primitive, I will start with a cube because it is the most simple geometry. To help with sizing and proportions I will also use a simple human mesh.
For the entire workflow I will be using the mirror tool which will automatically mirror a mesh to the other side of the object. This means I will only need to do half the work.

To make the head I used a cylinder and stretched it to make this shape and used the bool tool to cut in to the cylinder using sphere meshes to make the eyes and then I make 2 loop cuts near the bottom for the mouth and then extruded the middle. The neck at the moment is made of a cylinder and a sphere.
To make the arms, I used cylinders and where the arms meet the rest of the body I used spheres.
And for the feet I will use cubes.

Now that I have the general shape of my character I can go in and add more detail, starting with the Arms.
I added a cube and then added a loop cut in the middle so that I could extend its length. After that I made a shape of a arch using loop cuts and then extruded it out.
For the part where the arms connect to the body I replaced the sphere with a cylinder and randonly extruded it in and out to give a bit more depth than just a cylinder and then attached it using a sphere to the rest of the arm.
I also did the same to connect both cylinders together.
This is the final result of the arm.

For the legs and feet I went with cubed this time and then used the subdivision surface modifier to make the cube more high poly and creased the edges where it connects to other parts of the body so that it attaches.
To connect the legs together I randomly extruded like with the arms and then added a sphere in the middle.

I also Subdivided the feet to make it smoother

To do the hands I used cubes, for the palm and fingers and then I used cylinders for the joints. The triangle in the top of the hand was made from a cube which I merged 2 of the sides together.
To connect the hand to the arm I used an extruded cube.

Now that the model is complete, I needs to be rigged and then UV unwrapped.
To rig the character there are 2 methods, Manual rigging which will give the best results but can take a very long time or you can use an auto-rigger like Mixamo. Using Mixamo is easier and faster but the results might not be as accourite as if you were to manually do it.

To autorig your character using Mixamo you need to export your entire model to an FBX and then upload it to the website. Once it has been uploaded, you will be asked to orient the character and then tell it where the chin, elbows, wrists etc... are  and it will automatically create bones and apply weights to the vertices for you. After it;s finnished rigging you can download the rigged character as an FBX.

This is the finnished rig:

To help with UV unwrapping I used a testing texture so that I could see what the texture looks like when applying the uv.
Final Scene:
The gun I have in this render is from what I previously made, this is how I made it.

For the textures, I did not use any baking for reasons discussed in different post and instead opted to use a professional piece of software called Substance Painter. Substance Painter allows me to create materials and apply them by painting on either the model or uv map. A lot of major companies use this tool throughout the digital industry from movies wich require insane detail to mobile games that require less detail.
The lighting I used in this was from 3 dynamic spot lights and a skylight which provides some softer shadows:
This is an turnable view of my model:
Note: There are random circles on the model. these are visual bugs and are only present on sketchfab.

In the end, I think my model turned out okay but I think it would of been better if I added a few dangling cables and pipes in a few places like the arms to suggest to the player that this is an experiment. I liked how the scratches turned out under the arms because it makes it look like its been used and old as well as the XLabs industries logo. Amother few thinks to note is that I didn't really do much on the back apart from scratches and the huge fan on the top of his head doen't look realistic because it isn't displaced, to fix that I should just be able to go back in to substance and export the displacement map. A thing I just noticed is that it is much closer to looking like Robocop than what I was originally going for which made it a but more futuristic looking.