Thursday, February 28, 2013

"I" of Sauron

Greetings everyone!

The power supply of my laptop broke today but who would i be if i wouldn't be able to fix it?! Exactly.

So here i am with a now even better working power supply. (It was nothing too serious just a broken cable...)

Today i learned... mmhhh... well i got a little better with my qtCreator. Found out why a build directory wasn't working anymore and were able to fix it.

But now lets focus on "I"!

Sadly it was a pretty busy day... but still i got to do a few more terrain experiments and in my last build today i got 80-100 fps! I think i'm on the right way there.

I started out with a different manipulation as i avoided manipulating every single pixel of the whole image each frame and just drawn a few dots of random size on the image.

That rewarded me with a similar effect to the noise already but also got me bigger "chunks" of material. Actually a lot better base then merging single pixels into terrain!

Halos of might around the "I" of Sauron
After that i started generating them in a circle, but sadly i was to focused on it to take a screenshot! When i experimented with random arcs and lengths to generate my x and y coordinates for the drawCircle method... my mind started drifting away a bit.

Doesn't it look like the eye of Sauron?!

Seems like i accidently brought Mordor into my game...

Next step was moving the terrain around while keeping the drawCircle method based on the center of the screen. I think the result isn't too far away from what i want!

Fixed int iterations to random floats!

Hope i can merge some those small random chunks into bigger ones tomorrow!


Cheers, -Arc.

Snow flake white terrain noise in all it's beauty!

Wednesday, February 27, 2013

Tiny bits on a lot of ends...

It's disappointing... but maybe i shouldn't be to hard with myself there.

The more i think about it the more it feels like it wasn't that few i done.

First i fiddled around with git a little more and found out that it isn't too similar to mercurial. I was used that a simple "hg commit -m <insert message here>" would add all changes done to the files in my local copy to the commit and by that make them ready to be pushed... well git works a little different. One has to add all changed files first before creating a commit.
I'm not yet sure if this is an upside or a downside compared to mercurial. At least one is able to watch at all changed files via "git status -u".

And while i was searching through the net for help i stumbled over a very nice summary of the most useful git commands on siteground.

The second thing i was messing around with was the exporting of model XML were i run into a very odd error that made all output floats equal. Pretty sure it has to do with some weird pointers.

Indefinitly changing noise based on distance to center.
After leaving that topic out of frustration i worked a little further on the terrain generation and got a solid noise that gets denser the further it is away of the center. You can watch at the result to the right.

But just when i finished it (and seen that the performance was still bad) i realised that the whole thing i done was wrong! All i need is adding and subtracting a few small circle shaped dots - in an amount of maybe 30 or so per frame with a weighted chance of occurany based on the distance to the center. By that i should already get constantly shifting terrain without the need to change all pixels of the image! Well i will let you know if it turned out better or worse...

And finally i created a new cover that fits the format of a screen and animated it a little bit. Pretty sure it's going to make up a nice main menu background!

Good night, - Arc.


Tuesday, February 26, 2013

Git-Repository

"I" is now on a git repository!

You may wonder why this is amazing news for a one person project... (beside I'm not so sure if it will stay to be one...).

Just yesterday when i was taking a bus ride and thinking of nothing bad the belt of my laptop bag broke (again) and the edge of the whole thing hit the floor before i was able to grab it.
Lucky no harm was brought to it but it alarmed me about the fact that i don't have a backup of my project so far!

At the evening of the same day +Enie Weiß hinted me that Bitbucket is a great thing to create a git repository for small projects.

I was a little worried first as i never used git before... and we only used mecurial and svn at the university so far. But everything turned out well and my source code is now backed up. Also all the commands for git look pretty similar to the ones for mercurial.

So yeah that should be enough about git so far...

I also got to do some first test on the terrain, sadly it seems that already a constant shifting salt and pepper noise on a 1024*1024 picture is bringing down the fps from 200 to an average of 10!

I hope i can get a lot more performance out of it if i limit the noise to the other border of the terrain as that will be the only area that will be shifting indefinitely. It was planned that the very edge of the terrain will be noise that will create more or less organic shapes as the player approaches via image processing filters like opening and closing which a usually used on binary images.

Well we will see what i can do. Sad thing is that i can't access the image directly as it lifes on the graphic card and i need to copy it every time over from the cpu to the graphic card... maybe fixing this will also boost the fps by a good bit.

Mmhh... That should it be for the day!

Until time, - Arc.

Monday, February 25, 2013

Animations - 2 & Further plans.

There we go!

Fixed a few more bugs, so animations interpolate right now. I stumbled over a few more issue when i edited the walk animation of my walker but finally it is working.

You can look at the result at the right.

It turned out pretty nice and i think i can finally move to the next part of my project what will either be generation of terrain or collision between entities and other things...

The more visual parts of glow and light will be something for later... even if i would like them to be realized. Maybe i will work on them if i need something that gives me a nice visual effect in a very short period of time.

About the animation part... I'm a little sad about the way my animations work at the moment and i would have prefered a rather organic way to do it, but it just got too messy when i started working on it. What i dreamed of was a system that would blend from any pose into another without any problems and that only trys to approach a given pose as close as possible based on the environment.

Well that dream is not dead yet but i feel like i focused too much on animations already and i really need to get some progress on some of the other parts of the game! I mean... there is no surface or terrain yet one can walk on!

A good while ago i had a few tries of generate polygons that would make a nice terrain but my first generation tries weren't any pleasing. Beside that it had too sharp edges and didn't come with a resolution close to what i wanted to work with.

The terrain in "I" will be a very dynamic part of the game as it will only have a clear shape while it is inside the sight-range of the player.. everything outside lying in the dark area of the game will be a neverending changing area that freezes into a clear shape as the player approaches.

I was talking with a good friend a while ago how to do that best and she came up with using an image for that purpose and i loved that idea! Only sad thing about that is that SFML only supports RGB images but that won't slow me down too far. I can't wait to get my hands on it.

Another bad thing is that i need to get a good bunch of other things done before the month ends... but i still hope i can show off some prototypes soon!

With all that said it is "until time" again.

So long, -Arc.

Animations

I was struggeling with animations and animation blending for days and was finally able to get all those ease types to work.

That reminded me that one should already test pretty small parts of code intensive. Most animation buys should be fixed now and there should only be one remaining that occures on some rather normal timings for keys of an animation. Currently any set of a key at 2500 and 5000 in a animation that lasts 5000 milliseconds works all good. Not sure why the same animation with keys on 1250 and 3750 works out... pretty odd.

But it doesn't seem to be a issue of the ease functions themself!

On the upside of all those problems i were able to include an update functions that allows me to reload an animation XML on a simple push of a key. So i'm pretty close to the animation editor i was going to develop for my characters. I hope i will be able to post you my first animated results later this day or the next...

Meanwhile you can look at the the structure of my AnimationSet Xml's here if you missed it on my google+. I was also able to fix a few errors on it. As "0" is currently a forbidden value for Key values.

See ya later! - Arc.

Sunday, February 24, 2013

Hello World

std::cout << "Hello World!" << std::endl;

Me is Archina and i finally got my game project "I" started. The idea of "I" started about a year ago where it was just a folder to pass an art lesson.

Now a year later of learning and coding practice in general i feel brave enough to start coding it!

"I" is planned to be an 2D side-scroller like survival game in a strange world full of weird wicked and dangerous beings.

Your goal is as simple as it could be... survive long enough to escape that twisted world.

Your weapon is yourself as your will be able to transform and adapt yourself to the hostile environment. But don't overdo it as this will end up in yourself forgetting who you are and just becoming another creature in this realm of darkness.

On the more technical and less artistical side, "I" will be written in C++ my currently favored programming language. I already had a failed attempt in lua with the game engine "löve" but it took too much time to get into it and finally got lost over the semester.

As libs i only use SFML which already takes care of a lot of things like sprites, system time, processing audio files and so on. It's pretty nice! Don't hesistate to check it out!
Beside that i also use RapidXML to save and load Animation and Model files. But i'm not sure if i will keep it like that...

About the future of this blog.... mmhh. I hope i will be able to post some updates like i did the last few days on my google account. I hope i will be able to show you some picture and some alpha footage time to time and probably just get ride of my frustration if i run into things that just don't work the way i want it.

By that i will call it "Until time"

See ya - Arc.