Sunday, April 16, 2006

Arggggh

So it turns out yesterday was a work day. That one took me by suprise.

That's not what I'm arghhing about though.

I seem to have developed tearing when I move my character up or down the diagonal lines flicker across the screen. Moving the character left or right doesn't have this effect.

So I hummed and harr for a bit, before bolt-of-lightening I'll simple revert using revision control - see if the problem goes away and wee! Done.

Before a second thought could occur I was already doing it. Of course everything was broken because I have no knowledge of large project organization. EINFALL is like a knotted ball of wires. It's made up of several dll files that have their source code in other directories - these dlls should be quite modular. But that doesn't mean that I don't change them, I change them all the time. But I only version control my main project - oh poo. So that turned into a big mess and it looked like I'd killed all my new code.

I managed to relink everything now and get back to the problem at hand.

The tearing dissapears in fullscreen mode. Where has it come from? I'm sure I haven't editing any rendering file ... why only on the vertical movement line? I don't even know how to start with this - so for now I think I'll be leaving it.

If it hadn't appeared in fullscreen mode, well then I could put it down to something I've accidently broken but - no! (;_;)

EDIT:

Maybe the first step is a FPS counter?
... the thing is I've not been adding anything to that area of code. Brah, let's see what's happening.

EDIT:

FPS is a little low but pretty constant - no big change when "tearing" occurs.
Hmmmm. I seem to remember reorganizing some code that might have effected it - check that next.

EDIT:

The map buffering code seems to be messed up ... it's also messed up in the earliest revision of my code gah. Once stage three gets locked up - I'm going to have a good hard think about how I can bring all the code together yet keep it seperate :D

EDIT:

Ah I think the tearing and buffering and related symptoms of a overly fat main loop. The bufferings working it's just slow. It you keep walking and don't stop you'll find the end of the map before the rest of the map is loaded. But if you take a few rests, it'll have buffered by the time you get there. This didn't use to be a problem - so I've probably done something stupid. I'll have to take a look a profiling tools.

Currently I'm adding a few events and doing more code reformatting.

EDIT:

This is the chaps blog who wrote ruby-electric, I hope he'll be able to give me a hand.
http://deezsombor.blogspot.com/2006/04/what-do-you-mean-by-emacs-not-being.html

No comments: