eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming3d -> 2d › Re: 3d -> 2d
  • Received: by 10.49.87.9 with SMTP id t9mr1107941qez.16.1354360226430; Sat, 01 Dec
    2012 03:10:26 -0800 (PST)
    Received: by 10.49.87.9 with SMTP id t9mr1107941qez.16.1354360226430; Sat, 01 Dec
    2012 03:10:26 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!
    i9no470013qap.0!news-out.google.com!gf5ni37485490qab.0!nntp.google.com!i9no4700
    08qap.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Sat, 1 Dec 2012 03:10:26 -0800 (PST)
    In-Reply-To: <6...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=46.134.121.51;
    posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
    NNTP-Posting-Host: 46.134.121.51
    References: <6...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <7...@g...com>
    Subject: Re: 3d -> 2d
    From: firr kenobi <p...@g...com>
    Injection-Date: Sat, 01 Dec 2012 11:10:27 +0000
    Content-Type: text/plain; charset=ISO-8859-2
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.comp.programming:201275
    [ ukryj 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: