Game Development Community

Migration to T2D 1.1ALPHA4 and other progress... (WARNING: LOTS of screenshots!)

by Jon Frisby · 02/10/2006 (1:10 pm) · 2 comments

[Update: Forgot to include screenshot of rendering bug, forgot to warn about images in subject, and forgot keywords.]

So I've begun migrating from T2D 1.0.2 to T2D 1.1ALPHA4. Wow, has a lot ever changed! After much hard work I've got one skin more-or-less working: The gameplay mechanics are all working and most of the skin shows up and operates just fine. The petals fading back-and-forth don't work yet, and all my particle effects, of course, don't work -- also scoreboards are gone because fxTextObject2D doesn't appear to play nice with 1.1ALPHA4 but that's fine because it had other problems to begin with that made it unsuitable for my game longer-term. On the up-side, not having to register my datablock classes with the engine by hacking a header file is wonderful -- that was something that felt particularly ugly and was something I invariably forgot about every time. On the downside, getting attributes working properly on my non-datablock classes is proving a bit vexing. It worked before, but doesn't work now -- and other classes in the engine appear to be doing the same thing so I'm a bit confused. To be clear, what I mean is:
%x = new MyClass() { scenegraph = sceneGraph; myProperty = "some value"; }
Suddenly, myProperty is always null when my onAdd (C++, not TorqueScript) code runs. Fortunately I've worked around this for now so it's not a show-stopper.

In the course of working on this problem, I've found that a variety of functions in the engine do not check for null parameters. This caused some of my confusion when tracking down what was going on. It would be nice if the engine did such checks everywhere, but now that I know not to expect that, I'm better prepared to defend against it.

The game itself is progressing nicely, with my graphic designer enlisting the aid of her mother for assistance with illustration work. The latest skin to be added is tentatively called "Fire". The satyrs in the background were drawn by the afore-mentioned mom:
www.mrjoy.com/alpha8_fi1.pngwww.mrjoy.com/alpha8_fi2.pngwww.mrjoy.com/alpha8_fi3.pngPeople I show the game to tend to go "wow" when they see this skin.

I was playing the game at work on my shiny-new Dell 2405FP (24" LCD) just for kicks when I discovered an odd little bug. Notice that the tiles at the bottom of the game board don't appear to be filtered/anti-aliased, whereas the falling tiles ARE. Now, my code does nothing to impact what filtering/anti-aliasing is going on, and normally the tiles on the board are filtered the same as everything else -- in fact, I haven't seen this happen before or since. Very strange. But not a big deal just yet...
www.mrjoy.com/alpha8_bug.png
So one challenge my graphic designer faced was that one skin she came up with -- "Fractals" -- has a very wide dynamic range -- from almost-white to almost-black. Even with a relatively opaque game-board clamping the intensity somewhat, finding two colors that contrast with the entirety of the board, AND with one-another had proven to be quite challenging. Finally, she came up with a great solution: Make the tiles TEXTURED, instead of FLAT. Additionally she went with red/green instead of the blue/white we'd been using before. The end result looks much better:
www.mrjoy.com/alpha8_fr.png
Progress is slow, but it IS happening.

#1
02/11/2006 (1:47 am)
Jon,

This is looking pretty sweet and that "fire" background is stunning.

With regards to the tile-issue you're seeing, T2D doesn't actively manipulate anti-aliasing as that's the job of the graphics card but the problem you're seeing doesn't seem to be that. It simply looks like you need to use the "filterpad" option for your image-map (look in the image-map doco for more detail). This should instantly solve your problem. The tiles that exhibit the problem do appear to be using a different filter-mode than the other ones, perhaps you're changing it. Besides, if you haven't already done so, post this on the forums and I'll be glad to help you resolve it.

Again, great work, it's coming along a treat!

- Melv.
#2
02/11/2006 (2:17 am)
Melv,

Thanks for the compliments! I'll pass them on to my graphic designer -- I'm sure she'll appreciate them!

The image map being used is the same for the falling tiles as well as the ones that have "landed" on the board, and as I said, I've only seen this behavior happen once. I know for certain that I'm not changing/manipulating any settings in either the datablocks or scene objects related to filtering or anti-aliasing. Under the circumstances, it seems as though this may be a driver bug or quirk... If I experience it again on the latest T2D builds I'll bring it up in the forums.

-JF