Wednesday, February 22, 2012

What a Mess

I'm pretty sure this class has been a colossal waste of time. The project isn't quite in as completed a state as I would like it to be, but it's at least a proof of concept, and it works. Good enough for me. I started 2 weeks behind everyone else in the class, because my original project, a Tesla coil, was deemed non applicable to the concepts taught in GSP. If we are going to talk about the Apple App store and advancements in cloud computing, but not about power transmission, something is wrong.

Low voltage, high current systems are inefficient. Powering a high performance computer array has always demanded significant quantities of current, and powering such a situation seems to demand high voltage, as low voltage systems. Consider that high performance computers run thousands of processors, each drawing between 60 and 140 watts. Even at the low end, 60000 watts is not a small number, and efficiency should be considered if at all possible. Tesla coils provide a very smooth method of converting from low voltage to very high voltage quickly. Carefully examining the requirements of the project, we see that it pretty clearly falls into "Energy Systems" under the "Instructables Assignment" category. Arguably, it also modifies existing technology, by making extensive, creative use of a neon transformer, modding consumer electronics.

It is a bit dangerous, but with a mere 6000 volt transformer on very low current and a lot of care, nothing would have been harmed (with a possible exception of a few nerve endings or topical burns). Ultimately, Being informed 2 weeks after the fact that this project was unacceptable was a real detriment to being able to get the project into a more completed state

Right now, the current build is more or less a joke, but it runs. More or less literally. I can't figure out why it won't switch animations in and out. Ultimately, this project has taught me a lot about JavaScript that I might not have learned otherwise. Potentially quite useful, considering that game engines are starting to recognize JavaScript as a fully featured language that has wide support. HTML5 supports entire games being written in JavaScript, and Unity allows for both JavaScript and C# code to be used for the backbone of the game's object code. This is a little concerning, because JavaScript is an incredibly friendly language. Almost too friendly in many ways, it'll allow many things to run that are at best arbitrary, meaning that large JavaScript programs become increasingly difficult to debug with size. Failing silently is also an interesting issue that programmers aren't used to dealing with: in a case where your code is interpreted by a large number of different engines with different capacities in a public realm like the internet, you don't want the user knowing that some unimportant feature somewhere failed. In a game though, it becomes more important to figure out what went wrong where and why, and the policy of failing silently can make it very hard to find the problem.

JavaScript is a very useful language on a lot of fronts though despite any flaws with implementation or design. It's used in all websites. I use hundreds to thousands of lines of JavaScript with each new website I create, even when I tell myself that I'm not going to use it when I start programming a site. Last night I started in on a small social media project, and I've made use of some of the things I learned while programming this project. This afternoon, I was contacted about it by a fellow connected to a start up preparing to create a social media site. Websites are still cutting edge, and JavaScript is one of the lynch pins that holds it all in place. In any case, any project I work on will probably have some sort of blog, and being web savvy will ensure that I'll always have work to do somewhere.

How has this class granted me an insight into Emerging Technologies? I'd say it hasn't. Either this class is going to blow your mind (you're 40+ and/or live under a rock) or you spend a lot of time on the internet reading various different blogs and websites about technology. For a web developer, programmer and general CS individual like myself, this course was a pretty blatant way to demand another few thousand bucks out of students at the end of the line.

Thursday, February 16, 2012

Animation Switching

Right now the main character correctly animates through a run cycle; the same run cycle I posted below. I can get him to roll as well, but I'm having massive problems getting the character to change animation states. I'm not sure what's up. It will go from roll to run, but not vice versa. More problems to solve.

In other news, I think the memory leak is getting worse as a result of my attempted fixes. Not a good sign.

Wednesday, February 15, 2012

Memory Leaks

Memory leaks are such hassles. They are both hard to locate, and difficult to program your way out of. I'm pretty sure I know where mine is, but I am not sure how to fix it. Everything I've learned about this language would indicate that it's not a solvable issue immediately. I've got some ideas about how to minimize it, but Javascript has a habit of just throwing new problems into new threads, with very little access or control available to the parent thread. Potential result of fixing the issue? Frames rendering out of order. Potential issue of not fixing it? Having the game crash on weaker systems after extended periods of play. Potential fix of not fixing: lots of itty bitty mini levels that don't have enough time to build up any sort of memory leak problems.... I could also learn everything there is to know about different run time environments and optimized for each....... but I don't have enough time to do that between now and Sunday night.

Friday, February 10, 2012

Animations



Oh yay. I made me some animations while streaming yesterday. I'm not unpleased with the roll animation, but the run could use some tweaking, and I'm not sure how to tweak it. A year of studying animation wouldn't be lost on me.

Wednesday, February 8, 2012

24 hour development stream

Guys;

Since my professor pulled the plug on this project for now (I'll likely pick this up over the summer when I have a little more free time -- after I graduate and before my contract is up) and since I have to keep some sort of record of my development project, I might as well one up this whole thing. Blogging? That's seriously 2005 for you. I think that's when I started blogging, and I think I gave it up close to 2007 when it went out of fashion. Anyways, the new thing is livestreaming, so that's how I'll be developing most of this new project

WHICH IS A GAME!

I'm seriously going to try to write a game mostly from scratch in 24 hours. I've kitted up with a pile of energy drinks (I've committed to no more than once every 5 hours to make sure I don't die of a heart attack.) I've set up my server space and I think I've got enough bandwidth to pull this off; I know my machine has the juice to stream several resolutions at once. If things get hit to heavily, I'll just drop the project onto an obscure corner of a development server and go from there.

I really don't know what I'm going to do for it yet; I know I want to do some sort of 2D thing; platforming of some flavor, but I really don't want to make yet another mario 2.0. Some sort of running game with a points system and a randomly generated terrain perhaps? Should be fun. Anyways, the link is http://justin.tv/shiekhgray

I'll stream from 00:00 to 23:59 Thursday, January 9th, 2012. Looking forwards to quite a bit of fun and chaos!