Я наверно плохо объяснил про какое сглаживание, сглаживание ландшафта тайлов, а не тукстур.
Сейчас правильно считываются и отрисовываются тайлы используя текстуру и высоту, в 2D, то есть глобально есть только X Y без координаты высоты Z, высота эмитируется прибавлением высоты тайла к его координате Y(вертикаль).
При отрисовке текстуры отдельного тайла используются 4 точки(1я верх, 2я правая, 3я нижняя, 4я левая, это 4 угла тайла), каждая с XY рассчитанные от глобальных координат тайла.
(глобальные координаты не то же самое что XY тайла в уо, например X если грубо это количество тайлов по горизонтали * 48, и используется для отрисовки и удобства некоторых вычислений)
1 тайл состоит из:
XY в UO
XY глобальные в движке
Текстуру
Высоту
Этот набор расфасован по массивам, но одновременно в массивах находятся только тайлы которые видно.
Без сглаживания ландшафта это выглядит так(Брит банк):
(IMG:http://data3.floomby.com/files/previews/26_11_2013/ic2Gs0D0EaD8wMOZsv8g.jpg)
Сделал как вы написали, для текущего тайла высота каждой отдельной точки из 4х это среднее от высоты соседних тайлов(1+3):
(IMG:http://data3.floomby.com/files/previews/26_11_2013/DvHUqZPGC0mUUowA3nGuFQ.jpg)
В честь этой маленькой победы (IMG:
style_emoticons/default/smile.gif) скомпилировал результат (управление на стрелках):
http://yadi.sk/d/1mN6r6B_DKv2DЗаодно можно сверить fps, у меня в 800х600 - 51, это при том что оно не оптимизировано.