big update!

It is now a day after I handed in my last assignment for 2nd term. I feel so free and liberated and not needing to think what I need to do next! This term has been crazy and busy for me so I haven't really been posting much on here.
So what happened in these past few months?

Group project finished, badminton uni team picture taken, random snowing, awesome orchestra symphony, character design, cinematography, fellow classmates doing all nighters, assassin creed addiction, hardcore programming in C++ and OpenGL, more random snowing, the vfx industry slapped in the face during oscars, long hours of mathematics lectures, django unchained, eating sushi every week, fellow classmates getting angry about our course, and now Easter!

In January and February things got a bit hectic with group project, we had a lot more work cut out but I'm glad we all pulled together in the end. It was definitely worth it. We still think that the piece needs more improvements but I guess with the given timescale we did as much as we can. Check out the video below :) 

This was really fun and awkward at the same time haha. Jay organised a fund raising event for red nose day by allowing us to throw sponges at the demonstrators and staff. Definitely made my day but I felt so bad for jay and cos because they were the only two doing it. Also it was a really cold and windy day.... Aaron had pleasure throwing it at Cos aswell haha.

Lastly, I finish with my programming assignment, which is a Flocking System done with OpenGL, C++, NGL and QtCreator. I actually didn't think I would finish this on time because I had so many problems a long the way. Somehow I pulled through and this is the result ! I still think I can improve it as I have the n^2 complexity problem and some variables need tweaking.
I have Specialist project and two exams in computing and maths coming up. Also I need to start developing my showreel for a possible placement next year. But for now I am in dire need of a proper break from uni.
A whole week of doing nothing :)


beyond two souls

So me and my friends found out about "Beyond Two Souls" a game developed by David Cage of Quantic Dream, coming out in October this year. I played Heavy Rain a couple of years back and I really enjoyed it. It was a different pace compared to other games that I've been playing.
Story and cinematic driven. It's almost like playing a movie and it seems like they really pushed the realism and the cinematics in their new upcoming game. Full on facial and body mocap unlike LA Noire where they had the head separate to the body. It seemed like the head did not fit the body sometimes haha. Like a mind of it's own. Also the detail in the skin, human and environment looks soo good. If the trailer is the real gameplay then I'm amazed :D
Anyway back to programming my flocking system :(


let the programming begin...

So even after finishing my group project I have a few more assignments to go.
After seeing the games presentation, it has really motivated me to work harder and to look more into C++. 

Some things I have picked up across the internet which has been pretty useful and intuitive.
CUDA is quite an interesting platform that NVIDIA has developed for the latest GPUs. It basically utilizes the GPU in a much more efficient way. Developers can send virtual instructions and store memory with a mindset of parallel programming to speed things up. The CPU and the GPU work differently. CPU has a few "workers" that process and computes in super speed. However the GPU has  thousands of "workers" that processes slower. Over the past few years there has been a change in the way we code our programs. By allowing the programmers to code in main languages such as C++ to have access to the GPU and implement functions in a parallel manner which can speed things up a lot.
The main thing about using GPU is obviously processing graphics however we can stream the same data all at once so things like particles and physics can be calculated many times over very quickly.

For those who are just starting out programming, python is definitely a language to be looking into as it is being implemented in many programs. It is quick to script with and it  manages memory for you. You don't have declare variables and there's a lot less syntax compared to other languages. 
I have actually found a good simple website that teaches into the basics of programming and graphics. I still need to actually test it out however from looking at the tutorials and the example programs, it is a good place to start testing things quickly.

This website is also very good at explaining computer programming in depth. Coming back to parallel programming. There are video lessons that are engaging and has quick quiz to answer. Definitely worth looking into.

This is quite a fun website that people share their code and people can sort of dive in and change the code aswell. So everyone chips in. It is using c++ opengl shading language. A very good place to learn in-depth shaders.

So at the moment I have a programming assignment due at the end of March. I have to create a flocking system that is pretty much a low level artificial intelligence.
It is based off the famous Craig Reynold's flocking system back in around 1987.
It is basically simulating birds flocking together and different kinds of flocking. I won't be modelling and rigging and bird but instead it will be replaced with simple triangle ships as a representative. Obviously this can be further developed but the main goal is to produce something in OpenGL using QT and NGL (uni graphics library).