|
ru.algorithms
- RU.ALGORITHMS ----------------------------------------------------------------
From : Konstantin Yegupov 2:5022/74.16 28 May 2003 21:32:58
To : Alex Astafiev
Subject : z buffer
--------------------------------------------------------------------------------
Втр 27 Май 2003 12:10, Alex Astafiev --> Konstantin Yegupov.
AA> Hепонятно другое - с чего ты взял, что линии развертки полигона
AA> (брезенхемовские) только пересчитывают z&dz, а идут по экрану
AA> влево-вправо-вверх-вниз на единицу? Они идут с шагом
AA> dx, dy. И поэтому плотно прилегать не будут.
Лень мне писать тебе исходник, я вот что напишу.
Пусть линия более горизонтальная, чем вертикальная. Зададим направление линии
как (x1-x0,y1-y0). Тогда алгоритм брезенхема дает целочисленную зависимость
dy=f(dx). Теперь подставляя произвольные (x0,y0) получим описание множества
точек линии как (x0+dx,y0+f(dx)).
Теперь зафиксируем x0=0 и будем идти переменной i по y с шагом 1. Имеем
семейство линий с точками вида (dx,i+f(dx)). Hетрудно убедиться, что для любой
точки (X,Y) можно определить покрывающую ее линию : i=Y-f(X)
И где тут дыры?
KY>> Ага, а вот это уже реальная проблема. Правда, раз она железячная,
KY>> ее и пофиксить лучше всего железячными средствами типа кэша.
AA> ставишь rgba линии, это всего dword и неэффективно. В) Кэш всегда
AA> подкачивает линию, или даже с умом, делают опережающую выборку, в
AA> надежде что понадобятся данные впереди. Кроме того, представь линию с
AA> наклоном 45 градусов. Ширина экрана 1024 пикселя. Когда ты рисуешь
AA> такую линию, ты идешь с шагом в 1024*4. В общем, кэширование будет
AA> крайне неэффективно.
Мне трудно представить себе, насколько эффективнее тут себя ведет обычный
алгоритм с горизонтальной линией. Ведь если мы идем по экрану горизонтально,
значит по текстуре явно наискосок. И что же мы, ничего не теряем на этом?
--YK
... /np: Evanescence - Bring Me To Life/
--- GoldED+/W32 1.1.4.3
* Origin: YK (2:5022/74.16)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
| Тема: |
Автор: |
Дата: |
|
z buffer |
Raven |
16 May 2003 01:56:49 |
Re: z buffer |
Raven |
16 May 2003 01:58:50 |
 z buffer |
Alex Astafiev |
16 May 2003 23:56:53 |
z buffer |
Andrew Aksyonoff |
16 May 2003 12:54:28 |
z buffer |
Alex Astafiev |
16 May 2003 23:48:52 |
 z buffer |
Konstantin Yegupov |
19 May 2003 21:12:48 |
 z buffer |
Alex Astafiev |
20 May 2003 18:18:58 |
 z buffer |
Konstantin Yegupov |
22 May 2003 00:15:26 |
 Re: z buffer |
Eugene Kilachkoff |
22 May 2003 16:52:43 |
  Re: z buffer |
Nick Kovaliov |
22 May 2003 17:00:56 |
  z buffer |
Andrew Aksyonoff |
22 May 2003 18:26:57 |
  Re: z buffer |
Nick Kovaliov |
23 May 2003 13:50:51 |
   z buffer |
Andrew Aksyonoff |
23 May 2003 20:00:34 |
   Re: z buffer |
Nick Kovaliov |
25 May 2003 14:31:24 |
   z buffer |
Andrew Aksyonoff |
25 May 2003 17:10:31 |
  z buffer |
Alex Astafiev |
22 May 2003 22:32:04 |
   Re: z buffer |
Nick Kovaliov |
23 May 2003 14:17:28 |
   Re: z buffer |
Eugene Kilachkoff |
23 May 2003 15:34:41 |
    Re: z buffer |
Nick Kovaliov |
23 May 2003 16:03:47 |
   z buffer |
Andrew Aksyonoff |
23 May 2003 20:02:09 |
  z buffer |
Alex Astafiev |
23 May 2003 01:36:56 |
  Re: z buffer |
Nick Kovaliov |
23 May 2003 14:33:15 |
  Re: z buffer |
Eugene Kilachkoff |
23 May 2003 15:34:41 |
  z buffer |
Konstantin Yegupov |
24 May 2003 01:04:38 |
   z buffer |
Andrew Aksyonoff |
24 May 2003 11:04:33 |
    z buffer |
Konstantin Yegupov |
25 May 2003 00:49:17 |
     z buffer |
Andrew Aksyonoff |
25 May 2003 11:11:41 |
     z buffer |
Alex Astafiev |
25 May 2003 16:47:40 |
     z buffer |
Konstantin Yegupov |
27 May 2003 00:14:35 |
     z buffer |
Alex Astafiev |
27 May 2003 13:01:24 |
   z buffer |
Alex Astafiev |
24 May 2003 15:26:00 |
    z buffer |
Konstantin Yegupov |
26 May 2003 21:46:18 |
     z buffer |
Alex Astafiev |
27 May 2003 12:10:54 |
     z buffer |
Konstantin Yegupov |
28 May 2003 21:32:58 |
     z buffer |
Alex Astafiev |
29 May 2003 20:00:13 |
     z buffer |
Konstantin Yegupov |
30 May 2003 21:14:04 |
     z buffer |
Alex Astafiev |
31 May 2003 21:24:02 |
      z buffer |
Konstantin Yegupov |
02 Jun 2003 23:46:46 |
     Re: z buffer |
Alexey Krasnov |
02 Jun 2003 09:58:08 |
     z buffer |
Alex Astafiev |
02 Jun 2003 16:11:42 |
     Re: z buffer |
Alexey Krasnov |
02 Jun 2003 17:14:57 |
   Re: z buffer |
Eugene Kilachkoff |
27 May 2003 11:23:00 |
 z buffer |
Andrew Aksyonoff |
22 May 2003 15:26:13 |
 z buffer |
Alex Astafiev |
22 May 2003 11:14:58 |
 z buffer |
Konstantin Yegupov |
24 May 2003 01:03:36 |
 Re: z buffer |
Eugene Kilachkoff |
25 May 2003 11:56:14 |
 z buffer |
Konstantin Yegupov |
26 May 2003 21:43:18 |
|
|