eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming3d -> 2dRe: 3d -> 2d
  • Data: 2012-12-01 12:10:26
    Temat: Re: 3d -> 2d
    Od: firr kenobi <p...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu sobota, 1 grudnia 2012 11:39:40 UTC+1 użytkownik firr kenobi napisał:
    > Ostatnio naszła mnie idea by podzialac troche w
    >
    > softwarowym rasteryzerze, tj zrobic sobie prosty,
    >
    > (prosty framework do 2d mam juz zrobiony, o tyle
    >
    > prosty rasteryzer z kulkami czy trojkatami to
    >
    > nie jest juz tak duzo roboty
    >
    >
    >
    > https://dl.dropbox.com/u/42887985/soft.zip
    >
    >
    >
    > potrzebuje jednakze wzorku na rrzutowanie
    >
    > wspolrzednych 3d na ekran 2d dla danego
    >
    > ustawienia kamery
    >
    >
    >
    > kamera jest u mnie opisana przez:
    >
    >
    >
    > float3 cameraPos = {0,0,0};
    >
    > float3 cameraDir = {0,0,-1};
    >
    > float3 cameraUp = {0,1,0};
    >
    > float3 cameraLeft = {1,0,0};
    >
    >
    >
    > jak zrzutowac
    >
    >
    >
    > float3 wierzcholek = {-20, -10, 200};
    >
    >
    >
    > na ekran dla danych ustawien kamery?

    ok, nie zastanowilem sie i wydawalo mi sie
    to trudniejsze niz jest - wystarczy chyba odjac wierzcholek od cameraPos po czym
    zrzutowac na cameraUp i cameraLeft

    9jestem niby dobrej mysli co do takiej
    softowej rasteryzacji ale z prymitywami
    jest troche (tj duzo) dlubaniny, np
    ja rysuje kulki (tj lito wypelnione
    okregi takim algorytmem

    void DrawFillCircle(int x1, int y1, int radius, unsigned color)
    {


    int x = 0; //0
    int y = radius; //1
    int d1 = 3 - (2 * radius);

    do
    {

    if (d1 < 0) d1 += (x<<2) + 6;
    else d1 += ((x-(y--))<<2) + 10;

    drawPozioma(y1+x, x1-y, x1+y, color);
    drawPozioma(y1-x, x1-y, x1+y, color);
    drawPozioma(y1+y, x1-x, x1+x, color);
    drawPozioma(y1-y, x1-x, x1+x, color);
    x++;

    }
    while(x<y);

    }

    niestety dla malych promieni (i to nie takich malych <10 ) kulki wychodza brzydko i
    tak samo
    brzydko wychodzą zmiany ich rozmiaru (nie ma
    tu zadnego antyaliasingu ) czy ktos zma moze
    szybki algorytm na ladniejsze kulki ?

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: