Projects


First time on my blog? Go ahead and check out the Projects section on the right in the sidebar. From there you can choose which project to view. Enjoy!

Sunday, November 3, 2013

Skyrim!..?

I have been working on trying to find different interesting things to do with the lights in my case.  I wanted to make the lights interact with any game globally, either based off of color or sound.  Both of these proved difficult, but would be quite cool combined together.

Now, I have decided, it would work much better for games specifically.  How do I do that? Mods!  One game I have experience with modding is Skyrim, so I went with that.



In order to mod Skyrim, you use their Creation Kit, and with that, you can use their scripting language, Papyrus. It is a great way to make mods for the game.  Unfortunately, as Papyrus is a scripting language they made for modding, it can be very limiting.  For instance, I want to be able to control the LED's in my case, but I would need to do serial communication, which is needless to say impossible to do in Papyrus.

So then I found ScriptDragon, which allows you to use the functions in Papyrus, in your own C++ scripts. Perfect!

The first idea I have, is to make it so I catch the event for when the player is damaged, then flash the lights.  After I get this working, I can get into more complicated things:

  • Different colors for different types of damage (Fire, Ice, Lightning, Physical,..etc)
  • When charging magic spells, light up the LEDs, with the respective color
  • Reflect the Compass (If that is possible in anyway)

Thursday, June 20, 2013

Soundification

Previously I was getting data input from the screen display to process and output to the LED chain.  But now it looks like it has been done before, so it is time to try something new.

I am going to go with the same concept but tweak it a bit. Instead of getting data from the screen, I am going to get data from the audio coming out of the speakers!  This can get interesting now.  There are things of course like VU Meters, which basically display the measurement of volume from an audio device.

VU Meter
So here is my new idea.  Imagine you are playing a game like Doom 3, and you are walking through a dark eerie corridor and it is deathly quiet. Suddenly you hear a monster coming towards you from the right.  You cannot see it coming after you from the right, but you can hear it, you are perceiving it darting towards you.  This is an awesome illusion that in a game we only perceive with sound.  What would it be like if we also could see the sound of it coming closer.

So what would happen is as you hear the monster coming closer to you, getting louder, lights would light up indicating how loud the audio is coming from and in which direction.  If the monster if coming from the right, you will hear it coming from the right, and the lights on the right side will be lighting up.

The first way of implementing this that I can think of is to get the loudness of the sound coming from the left and the right.  Then it would be "displayed" on an array of the LED chain.

For example, if there is a low volume noise on the left, then there will be a little light coming from the left. If there is a very loud sound coming from the left, like a gunshot, then the light coming from the left would be large, and nearly in the middle of the array.  If a large sound comes from both sides, the entire array would be nearly completely lit up.

Next I will talk about the programming side of it.

Change of Plans

I was working on getting my computer to display the overall color on the LEDs when I ran into something:
http://learn.adafruit.com/adalight-diy-ambient-tv-lighting
Adalight - DIY Ambient Monitor Lighting

I happen to run into this project, which was pretty much what I wanted to accomplish.  They also did it very well, I tried running the code, and its pretty incredible. This is a project created by adafruit learning system, and it is a very well written guide on how to do this. Also the video for it is incredibly cool! I would love to see how it works in games, since seeing how it looks with a performance of Blue Men Group, it would probably be sweet.

Now, I could continue what I am doing and use theirs, but that is no fun, nor is it a project that I created.

I like to do projects that as far as I know are new things, that I have never seen done. I thought no one had really done this before, other than those TVs, but now I have found there are multiple setups of it, so now I am moving on to different things.

I do highly suggest checking out the above project, it is really cool and really well done.

Time to derail this train and go track hopping! Next station, Audio Processing!!

Wednesday, May 29, 2013

Creating The Game Kase Part 2

Here is what the final Game Kase looks like:






The keyboard comes out from a little slot towards the top between foam.


With the lights turned on. Red glowing fans on the left, and a strip of Red LEDs in the back.


Tuesday, May 28, 2013

Screen Color Emitter

Here is an idea. It comes from a brand of televisions, I don't remember what it is, but I saw one years ago.  What it would do it get the average color of the screen, and emit that color through some lights behind the screen, lighting up the wall/room that is behind the TV.  I have no clue if this worked, or is even worse then without it, but I think it is a cool idea.

So I am going to try that of course!

I found a sweet RegionGetColor function for Autohotkey, that runs very fast and comes out with a very accurate color.  I then modified my Autohotkey code to send the color I get from that function to the Arduino.  The rest of it I had set up already.  So in theory, now I have it set up, so all of the LEDs on the chain will be the average color of the screen.

I have no clue if this will look good, or just be annoying, but I am excited to see what it does.

A couple other ideas I have with interaction with the LED chain:

  • In a First Person Shooter game, everytime I click to shoot, the LEDs flash white
  • With music playing, do one of those cool color visualizers on the LEDs
  • Show how much my CPU is being used, by simulating a bar on the LEDs
Many cool things could be done with this!

Arduino + LED Chain

I have not gotten the Arduino or LED Chain in the mail yet, but I have begun programming the code. There are two sides to the code, the Arduino side, and the Computer side.

For the Arduino side I have setup some simple methods that wait for serial messages being sent. It then parses them, and turns on the light chain accordingly.  So far I have only written a message that turns the entire chain one color.  Later I will make it so I can address each one individually. Luckily this was pretty easy, as a Library for the LED chain was supplied.

On the computer side I am using AutoHotkey, so I can easily setup hotkeys to turn on/off the LED strip. I also plan to be able to control the colors and such with hotkeys in the future.  I found a good Serial Library for AutoHotkey that uses Windows DLL calls for Serial communication.

I now have successfully written code on both sides, and have Serial communication.  I cannot test to see if the LED chain color is being changed though, as I still do not have it. Soon!

Arduino!

In order to get my computer to communicate with the LED chain, I need a middle man.  So I chose Arduino of course. Specifically I chose this one, as it is nice and small:

With this, I can have my computer send a message to the Arduino, which will then parse it accordingly, then tell the LED chain what to do.

Color Changing LEDs

The next idea I had is that I could set up the LEDs in such a way that I can turn them on or off via my computer! This was an awesome idea, I figured I could setup an AutoHotkey script and be able to setup hotkeys to hit while in game!.

But wait, what about colored LEDs? The LED strip I got is just red, and cannot change colors. So why not get an LED strip that has color changing LEDs!

So I ordered one of these:

Individually Addressable Color Changing LED Chain
This is a LED chain, that each LED can individually have its brightness or color changed. Pretty sweet!  But the next hurdle was, how do I get my computer to communicate with the LED chain?

Light It Up

A couple months ago I had gotten an LED strip for my computer, as I wanted to get some more red light in my case, as it has become a Black/Red color themed case.

  http://www.xoxide.com/led-sunlight-stick-red.html 

This worked perfectly with the red fans on the side, and this on another side of the case, it looks really cool glowing red.



 But then I noticed a problem. If I play a dark game at night, I need to turn off the light in my room, or else I cannot see the screen very well. But now of course, the bloody screen is glowing bright red, and the LED strip shining perfectly into my eyes. My eyes are nice and adjusted to the dark, but then the bright strip of red adjusts my eyes for that, so then it is very hard to see the screen. For instance, last night I was playing Fallout New Vegas, and I was inside a building that had very low lightning, I could not see many of the items on the ground, and was very often running into walls. I could of adjusted the lighting in the game, but it would of looked washed out. 



So I figured, why don't I find a way to make a little switch to be able to manually turn it off when I don't want it on!

But of course, I couldn't stop there. Why make it only have the ability to turn on, why not make do even color things...

Thursday, May 23, 2013

Creating The Game Kase Part 1

Info about creating the game kase.
The chassis with only the Power Supply inside

Fans Added
Everything else in place
Fans turned on
EVGA GTX 560 TI just barely fit in
The "tower" finished and hooked up to keyboard and monitor






The Game Kase

Info a about the Game Kase.