I’m back with another PC upgrade. It was the beginning of 2015 I upgraded to a 4790k Devil’s Canyon Intel chip and I haven’t had any issues since. Motherboard kicked the dust for a bit after I moved, but the chip has been great. Now it’s time for the bigger upgrade. The GPU. We’re going to look at some NVIDIA GTX 1070 & 1080 Benchmarks!
Pascal from Nvidia is finally here and it’s really awesome. I ended up getting the 1070 and then switching to the 1080 after some delayed shipments from Amazon. Needless to say, I benched both! Read past the break for the numbers.
I have a new page up under the Reviews tab where I will be noting games I’ve played in 2015 to completion, close to, or ones worth noting in either a good or bad way. Each will be accompanied by a tiny blurb about my experience with a game. It will be my way of keeping track of games this year while also doing “reviews” of each in some way without losing interest and time in writing a huge blog about each. I hope someone besides me finds it helpful.
I’ve had the same desktop hardware for over 5~ years. I recently upgraded my motherboard and CPU, redid the whole build. Pictures will come soon once I tidy things up. But for now, lets see the 4790k benchmark and tests perform! Also, overclocking goodness.
For my Operating Systems class, I was tasked with making an Operating System simulation using basic OS architecture and 6502 operations.
Using TypeScript, I implemented a CPU, CPU scheduler with 3 scheduling methods, memory manager for RAM, kernel interrupt and ready/resident queue, hard drive and hard drive driver with swap virtual memory. I also added neat features like achievements, boot video, step mode, and tons of little special commands.
There are a bunch of built in programs to ctOS you can find in the sidebar, but feel free to make your own. There was discussion on how it would easily be possible to read/write executable programs to the hard drive, and with a few more op codes, you could have the simplified 6502 CPU do some pretty legit algorithms like merge sort and stuff. Its a fun Operating System.
Learning Unity 2D Game Development by Example written by Venita Pereira published by Packt Publishing is quite a wonderful introduction to not only Unity itself but the new 2D game development suite it recently added. I had been meaning to checkout the 2D Unity mode myself for quite some time, and this book gave me a proper introduction.
After being a major supporter of Construct 2, mainly due to how easy it is to approach for new comers and the fully featured sprite editors, I can now easily recommend Unity as well.
Jurassic Park Trespasser, in 1998, had ridiculously awesome features being touted for its time. Fully detailed outdoor environments, hyper realistic physics, advanced graphic features like bump mapping. It was way ahead of its time. But it didn’t sell too great!.
This interesting article takes a look at the source code behind the project which, for its time, may have been “too complex” for C++ which has since evolved a ton. Interesting how no precompiled headers weren’t used so therefore hours of compile time were done. Good reading.
Team Omega’s Ubisoft GameJam project – “You, Me, Pigs In A Forest”
A spooky co-op game that features the theme of “You & I”.
One player controls a lantern and the other a sword. Enemies cannot be hit with the sword unless they are vulnerable from the lantern light. The lantern player is powerless to defend himself and the sword player has no light source. They must stick together to survive but are sometimes forced to separate.
Using Unity Pro, we employed depth of field and noise filters to create a cinematic quality to the darkness.
A custom shader I made gives maps a “fog of war” where shadows envelop the player, and only the lantern has the ability to shine through. If the sword player moves out of the lantern, the darkness completely covers him.
Enemies employ the Unity nav mesh system to follow and hunt the player down in swarms.
Member declaration order for structs and classes are important. You want to order the smallest to the largest (or vice versa) in order to avoid what’s known as ‘padding’. Padding is basically what the compiler will use to keep the memory allocation of the struct/class aligned in memory. This padding tends to be wasted space unless some compiler specific enhancement is occurring.
What I learned today was that Microsoft’s C++ compiler actually has extra padding involved, by design. And the solution to avoid the extra previous memory being stolen from you? Quite elementary, how could you not know? Inheriting from an empty abstract class makes your objects smaller.
It will be reviewed in the same style as the Unity Multiplayer Games review, and maybe I’ll make this a regular thing to review books I’m given or happen to pick up! Expect the review up this weekend or so.
Welcome to a new column I plan on making semi-day (possibly weekly?), providing I get the chance to.
Today I Learned: Const.
Const all the things. Const the variables, const the function, const the members in the function, const even if you want to modify the data later until you get to the point you need to modify data and work backwards because plans tend to change.