Complete.Org:
Mailing Lists:
Archives:
freeciv-dev:
February 2003: [Freeciv-Dev] Re: New drawing algorythm |
[Freeciv-Dev] Re: New drawing algorythm[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Dnia 2003.02.24 01:16 Daniel L Speyer napisał(a): Behold, the long awaited (i.e. incredibly late) new isometric drawing algorythm is ready. Some of you probably still remember when I said I'd write this. It's substantially faster (a factor of 2 worst-case, by my brute-force measurements), more versatile, more contained withn the gui-independant sections, and ,IMHO, much prettier (even though there's more to be done refining the tilesets). It requires non-trivial work to convert a tileset -- so far I've done lexxy and isotrident. I'll do others if requested (does anybody still use cevo? did anybody ever use isoengels?). The tilesets (along with screenshots, are available at http://dspeyer.student.umd.edu/new-algor (both tilesets require the common isomisc directory, also available there). The provided diff is from 1.14.0. It probably contradicts with Jason's unification patches, and is (I think) orthogonal to Eric's sprite loading system. As always, comments, bug reports, suggestions, large sums of money, etc. are appreciated. Hi DanielThis method is faster that current becouse you eliminate transparent pixels from terrain tiles and make automaticaly blending. Sometime ago I made code in SDLClient similar to your with some differences. I don't load ready tiles only create it inside client at start and use different blending code. But... tile == exp. 64x32 pixels (standart terrain tile) cell == exp. 32x16 pixels (1/4 standart terrain tile - corrner of tile) Current I can tell about some problems your code :- If you use standart draw loops in update_mapcanvas(...) then you redraw all cell 2 times becouse this loop is made for normal tiles. - your FOW method don't work with terrains bigger that standart tiles size (exp. 64x32) and you got such terrains if you use civ3 tilesets and it don't work with terrains that have pixels outside standart tile rhomb. - you force to all gui struct Sprite design by adding int width and int hight parms and this is problematic. - there are other aspects becouse draw code is high unificate and you simple can't use things unavilable on other eviroments (exp. mask). Rafal
|