This section will be about things that i have learned throughout the week and side things that i will be working on.
Week 1:
Set Up:
Most of this week so far has just been setting up all the resources and relationships we need for the coming weeks. This means setting up a heap of repo’s, HackNplans and discord channels.
Mindfulness:
We had student councillors come in to talk us through mindfulness, as this is the main theme for our VR project. They went through a series of mindful breathing exercises and explained what it really all meant.
Even though it seems like a bit of an oxymoron, mindfulness definitely has some benefits. I know that when i get stressed personally (either work or through exercise) i used breathing techniques to lower my heart rate down back to a normal level.
I think that their appearances in class will be regular so that they can see if our projects are along the right lines. Either way it was interesting getting a different input than usual.
VR Introduction:
We were given an introduction to the Oculus Rift and Go, as these will be the main platforms that we learn we and develop for. I haven’t used the Go before but i use the rift on a regular basis at my internship. Even though i’m not using the same software (IE. not steam VR) knowing some of the interactions and issues that may arise due to the camera perspective sure is useful.
Week 2:
Oculus Go hardware:
As part of one of our learning outcomes for the trimester, we had to identify and assess performance issues we may encounter on build platforms. Considering we are currently build for the Rift and Go it only made sense to learn about those platforms.
The Go is interesting as its hardware is essentially mobile hardware (similar to a last gen galaxy), any sort of high graphical rendering has to be avoided (as it only has a internal GPU and a very low fill rate by VR standards).
One of the most interesting things i found though, was the fact that you can up the refresh rate of the device from 60Hz to 72Hz. Which at first this sounds like a terrible idea after the previously mentioned hardware limitations however it does increase the colour vibrancy and the overall picture of the device. So if you can optimise performance enough to accommodate for the 20% performance loss, you can potentially have a better experience for your players.
Shaders:
Shaders are something that i’m super interested in but i’m having trouble getting started with them. So i spent a few hours this week watching some tutorials and talks about shader design. Including Unity basic introduction and VFX of diablo.
So i have a base understanding of how they operate but i still could do with some practice with them (its the best way i learn).
Two of the designers have approached me to create separate shaders that they need for current projects. These include:
Fire Shader:
Just a shader for a fire, looking semi animated realistic. I already have an idea of the functions i need to use to create this but its implementation for it.
My plan is:
- Take a plane
- Add perlin noise texture to it
- Add a gradient texture
- Scroll the perlin noise up with time
- add a texture mask to create shape
Paint Shader:
This will be a little more difficult, its supposed to act like a brush with a thick layer build up at the edges, not only that but it also needs to store information about the density of the paint so that i can have realistic looking dripping/ run off.
I’m going to have to research this more but i think getting some practice first will help a lot with my understanding.
Art ant:
Art ant is a side project for one of the designers, The game is about you (a small ant) painting human sized art. They asked if i could build the main mechanics for them. These include:
Rendering:
I tried a few different approaches with this because i really didn’t want to use a GetPixel function on it.
I started by making a another canvas and using a render texture on there so that after the painting was done, it could be rendered to a canvas to be put in a gallery.
The camera for that canvas would watch the main canvas and the deactivate when finished, keeping the finished result.
Painting:
Also tried a few approaches here.
Firstly i tried just spawning objects to the canvas (as you are painting in first person so these blobs of paint might have volume), which wasn’t very performant.
Secondly i tried using the Unity particle System to create Decals that get printed onto the canvas surface, This was more performant but had similar issues to how it actually looked.
And lastly i changed the render camera to include a layer masks for the paint and just started using that as the surface.
Paint Shader:
Mentioned this previously in shaders above, the designer wants it to be glossy and drippy and also have a build up of paint, my goal was to make the paint mechanic first before this.
Week 3:
Oculus Go:
I’ve been fortunate enough to be able to borrow a device from one of the teachers and it means ive been able to learn a lot extra in my spare time and attribute to the two VR projects we are currently working on.
However i will need to drop into uni some day to test with the rift as that is the final piece in the puzzle for these projects.
Sickness:
Unfortunately due to health reasons i haven’t done as much as i would hope in my spare time because of this im going to set goals that i should have completed by next week.
Goals for week 4:
- Finished VR projects (successful Rift & Go builds)
- Research Blog on shaders
- Started my first shader
Week 4:
I’m going to change the format of these based on goals i set myself.
Lets start with the goals i set for myself last week:
Finished VR projects (successful Rift & Go builds):
After a lot of hard work (Put in about 20 hours combined with both projects last week) i made sure that these both successfully launched at the correct date. I was really lucky that i could borrow the Oculus Go from a teacher to develop in my spare time, it taught me a lot, however its really unfortunate that the uni:
- Doesn’t allow us to borrow devices
- Only has one Rift
- Doesn’t have the software installed for the Rift and will not allow you permission to do so
These three things would have made things so much smoother to develop, i’m working on saving the money to get these devices for myself but that’s kinda hard atm being a full time uni student.
Research Blog on shaders:
I didn’t make a blog but i did make a research proposal based on the information i was given to create water physics (this included making a water shader). I’m not sure if this counts towards the Learning Outcome (i will have to check) but if not i will have to make another version of this in blog form.
Started on the shader:
This i was unsuccessful in, due to two reasons:
- The VR projects required a large amount of work
- I had to research and propose the shader to the designers.
I’m Planning on starting this on the weekend and then having something to show my teacher in class on Tuesday.
Goals for week 5:
- Completed LO for Research Blog on shaders
- Completed LO for first shader to a specification
- Completed LO for Research and analysis security risks to date and storage
Week 5:
Lets start with the goals i set for myself last week:
Completed LO for Research Blog on shaders
Completed a 2D water shader and made a research document based on how i was going to recreate, wasn’t a blog so to say though so have to make sure that this was done correctly.
Completed LO for first shader to a specification:
As mentioned above completed a 2D water shader based on specifications for a project, i am looking into a 3D water shader now as the project has new specifications. Find my research on 2D water physics here.
Completed LO for Research and analysis security risks to date and storage:
Also completed this, in fact this week has mostly been paper work, which has been kinda dry but it is a necessary evil that i need to get out of the way before things get real busy in the end of the trimester. I based the security risks on our upcoming project for creating a mobile game, specifically this was for Can You Games (One of the designers Uni branding)
Other things:
Completed LO for Policies, Procedures & Guidelines:
So it was my overall goal this week to get all my research documents and paperwork out of the way in the hope i could free up some more time at the end of the trimester. I based my policies, procedures and guidelines on Internal documents for Can You Games (One of the designers Uni branding)
Reflections:
So i don’t think I’ve actually done one of these yet for this trimester so now is probably a good time to start.
I’m not going to lie this has been one of the roughest periods for me in a while. My health both physical and mental has taken some serious ups and downs over the last couple of months and i feel like its affecting my study and work.
I feel like i’m going to fail and that i’m not good enough to be part of this industry, its been tough.
I think the toughest thing is seeing all my peers stressed out and i kinda feel like i have to be the pillar of strength, pretending that everything is ok.
Its in these times that games are normally a solid retreat for me, but at this moment, i don’t have time for this.
Goals for week 6:
- Completed a 3D water shader
- Completed Control system for Happy Horrors (final project)
- Completed Splitting/ flocking mechanic for Swedes mobile game
Week 6:
Lets start with the goals i set for myself last week:
Completed 3D Water Shader:
After re-evaluating what we needed for the project it seems that the current 2d system should still be relevant and work in the current set up. So this was no longer needed.
Completed Control system:
Maybe this goal was a little ambitious, considering i might be a while until things are worked out to the point they are “done”, polish is everything right? but i certainly made some improvements to the system, it now can detect slopes and direction and has a maximum value for this so it cant scale walls.
Things that i’m looking into next is how i’m regulating max speed, because im just using overall velocity ATM its effecting the character from moving when jumping, which is one of the requirements for the system.
Completed Splitting/ flocking mechanic:
This took way longer than expected mostly because its been through about three iterations, trying to get the movement looking right.
Reflections:
This week i barely did anything to do with studio and have mostly been focusing on final project, which has been really bad.
I need to prioritise both equally and spend more time working because at the moment i’m not nearly getting enough done.
Goals for week 7:
- Completed Flocking
- Completed most of the HH Systems
Week 8:
Reflections:
So i’m aware that I’ve missed a week here and honestly i don’t have much in the way to add for this week either. Sure I’ve been making some progression towards learning outcomes but I’m definitely not striving for my best at the moment.
This has come down to a few reasons, as mentioned in previous weeks my physical health hasn’t been good recently and I’ve been getting quite sick, this combined with mental issues of weakness and failure perpetuated by individuals that i have to deal with in my life at the moment has made for a particularly bad combination.
So i have no energy, physically and mentally.
I also have no motivation right now and i know the reason, its because I’m working on projects that i have no interests or don’t enjoy.
Don’t get me wrong, I’m enjoying learning new things about optimisation, networking and shaders but this is the only thing i look forward to at the moment.
Also Don’t get me wrong, its not that i cant work with people or cant work on things i don’t like, i just cant work with these people anymore.
Great this was a lot of depressing stuff but there is no point wallowing in sadness,
what can i do to fix it?
Goals for sorting myself out:
- Set up a meeting with the Head of Games to talk about this
- Find a possible outlook or side project to focus on
- Try to get moved to a separate team or individual work for CIU212
I think resolving these issues will ultimately help with the things i can control at uni and that’s really my main goal is to get this sorted.
Week 10:
Reflections:
Well it seems i have missed another week again, you see i was in emergency care in the hospital for two days of last week and the rest of the week i was recovering from the medical issues i had.
Unfortunately it was not entirely solved, there are things that i can do and take to generally make my life better, but until i have further procedures (colonoscopy and endoscopy) there is no exact reason that they can identify.
The waiting list for an colonoscopy and endoscopy is long too and i could be months before i’m fully well again.
However focusing on the positives i’m much better than i have been and am able to start working again.
So lets get to it, going back to my goals from two weeks ago what did we solve?
Goals for sorting myself out:
Set up a meeting with the Head of Games to talk about thisFind a possible outlook or side project to focus on- Try to get moved to a separate team or individual work for CIU212
I was able to chat to the head and figure out how and what i could do to improve, which was a great help. Unfortunately it seems impossible to change team for final project. so it seems that i might just have to stick it out and try and focus on other things.
So what are these other things?
Well in December last year i had started on a passion project, however due to limitations in my skills and schedule at the time (interning at Real Serious Games) i put it on hold.
So I’ve decided that i’m going to set a goal for myself (and in typical me fashion it might be a little optimistic).
I’m going to have a working prototype of this project by Synergy in week 13.
Now like i said this might be a little optimistic by i look forward to the challenge and sinking into something that i want to create.
I’m going to make a new blog specifically devoted to that, so if you want to read about it you can find it here.
As for my other goals for the rest of trimester, it is really just about completing all my learning out comes for studio, which are currently looking like they are on track. (Luckily i worked pretty hard in the start of the trimester)
Well lets kick this in to gear again!
“It’s hard to beat a person who never gives up.” Babe Ruth