Friday, January 22, 2010

Foof Engine - Cheese Kung Fu, Grapes of Wrath, and cel shading!

All sorts of things going on in this update... first of all, I decide to try to give the cheese some melee moves. Yup.. MELEE MOVES! He can punch and kick and smack up a few 'nanners and... newcomers! A grape enemy that if in pursuit of Mr. Cheese will throw a grape grenade every few seconds. He also emits some grapes that go squishy when you kill him.

Also put in a rudimentary cel shading technique. Very rudimentary, first of all it clamps all lighting in bands and sort of checks for contrast in depth or normals to decide what an edge is. I sort of hacked it together independently, I'm sure there are better filters out there to find edges, but whatever! For now it works!

Also very interesting is my improved animation system... support for multiple tracks in my foof 3D format! Smooth blending between animations! Having separate bones play separate animations! Hoorah! Still needs LOADS of work.

Killer Pineapples! Foof Engine turret ish functionality...

It's been a few days since I've updated hasn't it? Well, here are a few tasty new updates: Yes, you see right. That's a killer pineapple!

So what's new here? Well, I added some functionality for one object ot be able to track another. And what else can be more perfect to test than than pineapple turrets? NOTHING!

I also made it so the little meaty gibs leave a bloodstain on the ground when they hit it. Nothing major, no new functionality there engine-wise, just kind of cool.


Saturday, January 16, 2010

By the Broccoli in my hand...

Yes you see right. That is a flying saucer fighting a giant broccoli.

Video here :

What's new? Well I finally figured out what was wrong with my directional shadowmapping... embarrassing, really. I didn't realize that in orthogonal projection the z is already clamped between 0 and 1, I kept trying to divide it further by Z far... oops!

The decals are painted using a way I kind of theorized on my own, still needs work. Basically, a billboard quad is rendered and then we figure out the distance to the pixel behind it to figure out the tex coords and all that jazz. I will explain it more coherently when I have it perfected.

The bonus of this is no monkeying around with copying geometry, finding tex coords, etc. nonsense... this gives us seamless decals across all static geometry. FUN!

Thursday, January 14, 2010

Foof Engine - Flying Saucers, Env Mapping, also pew pew

UFOs hate bananas

Well, I decided to work on this thing more. First of all, I changed my skybox. First it was just a cube with a sky texture being drawn before everything else. Now it's sampling a cubemap based on the eye vector, it looks much smoother, the cube distorts funny. There is also a sun that correlates to a Sun Direction variable, so it will always appear correctly in the sky and can move around dynamically. I'll show that when I have a good directional shadowmapping implementation.

Since I already have a cubemap for the sky, I can just sample it on other things to give a reflection effect. Didn't take long to implement that.

Also showing collisions between spheres and terrain (the fireballs). This is probably the first "AI" I ever actually created, if it counts... the bananas just kind of run around in circles until you shoot them and they blow up into chunks of bologna. There is no physics, they just start out flying forward in a random direction and pitch continuously downward until they disappear, I think it works well enough.

Just the pyramids and the skybox:

Pew pew, banana shoot out:

Wednesday, January 13, 2010

Me and mom jamming out to "Dark Eyes"

Check it out here: I guess quality could be better, but whatever!

Playing an old favorite, "Dark Eyes" / "Ochi Cherniye"

Saturday, January 9, 2010

ModNation Racers is AWESOME

This. Game. Owns.

Alright, so I've been playing the beta religiously since it started and I must say, this game just kicks %#!@. The racing is solid, the track creation is solid, everything is great! I have tons of vids of beta gameplay, including creation tutorials on my youtube channel. Check it out if you love me:

Track Creation Tutorials:

Character / Mod creation tutorial (Harley Quinn!) :
Part 1, Part 2

I can make text entries in here on anything in the game if anyone is interested! Please comment or email!

Foof Engine: But what about bullet holes!?!?!?!?

Ok I know what you're thinking. Foofles, your game is awesome but the world is completely devoid of anything.

So I created a 3D map format and the export plugin for it for 3DS Max. And with my ultimate skill, I make a very basic map and show collision with the fireballs (and consequently anything else) with the map. It boils down to a sphere vs triangle check, but the faces and parts of the map are seperated into a tree (not really an octree... but something like it) to quickly discard things. It's not perfect yet but so far so good.

The bullet holes right now are a quad that gets placed where the collision took place, and sort of orients itself in the direction of the surface. Again, not perfect. Working on a better decal system.

Foof Engine: EXPLOSION! FIREBALLS! Bananas Blowing up YEAH!!

Like I said, I promised AWESOMENESS and it shall be delivered. Here we have all sorts of things going on... animated "fireball" ish thing projectiles being shot out of the camera. Cool! They hit things and it blows up! COOLER! GIBS?!?! AWESOME!.. Yes gaze in AWE as each animated character explodes in a brilliant display of BOLOGNA CHUNKS.

Video here:

I know, this is the dumbest gib implementation ever. But whatever! IT works! Collision is really basic. We're talking sphere-sphere, sphere-cylinder.

Foof Engine: Mounting / Child objects

In Foof Engine, every physical object in the scene can have children. These children can be bound to specific bones in the parent, so this can enable things like mounting weapons to hands and what not. The bone-bound children get their positions updated when the parent is animated.

Physical objects include all meshes, billboards, lights, cameras, etc.

LInk to video here:

Spotlights and shadows in Foof Engine

I also have working spotlights and shadows, and alpha clipped objects cast shadows correctly! check it out! This is pretty basic stuff, video :

Happy New Year

WASSUP 2010?!?!

Well, I'm very happy to give 2009 a nice kick in the ass out the door. My prayers and wishes to everyone for a happy new year and may all your problems from past years reach resolutions! May you find peace, love, and all that good stuff! Hoorah!

I'd love to go on a nice rant about politics, society, economy, all the stuff that matters: but I matter more!

That's right, the Foof had a very depressing year. But that's ok! Please reflect on your past year and wishes to come, and go get them! Those %!@#ers don't come true on their own!

LittleBigPlanet GOTY edition starring - ME!!!!!

Yes, that's right, I created one of the bonus levels for the LittleBigPlanet Game of the Year edition. Although this is a little late, I guess, here is my personal introduction that can be found on the blu-ray disc.

My interview is right here:
(CREDIT GOES TO CogSpartan457 for taking/uploading the video)

A video of my level is here:
(Credit goes to JHKthree for taking/uploading the video)

Flying colored lights and dancing bananas!

What's not to love?! So anyway, in this extremely basic build of my engine I show how it can handle tons of dynamic lights at a time, there are hundreds of billboards with lights attached to them all flying around and being lit in post process via that deferred rendering I mentioned. I have animated textures working too! Cool, isn't it?!

Video! -

Codename Foof Engine - My 3D engine.

So, I figured I'd start work on my own little 3D game engine. I'll detail my progress and all the gritty little details so that you might implement it in your own projects.

Let me start with a simple gameplay video of a cheese character collecting coins in a forest. Naturally, I promised you awesomeness and awesomeness I devliver.

My 3D engine is based on a deferred rendering architecture. That means that the lighting, fog, etc. is all computed post process. The rendering is split up into multiple parts. It takes up some more memory, but it makes it a lot more robust and open ended. My other videos will show more advantages of this.

I am using a model format that I created myself, it supports skeletal animation.

My first blog post

Welcome everyone to my blog! This is my first post so I thought I'd just give you a little heads up on what's to come: PURE AWESOME FOOF WIN!

I'll update this blog regularly with assorted subjects, like my musicianship, my 3D game engine programming, assorted video games, and maybe I'll just run my mind! Be warned! My mind is not for the weak of heart! :D