Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 3.360 pregleda

Najnovija ↓

Crtanje linije koja se sjece sa poligonom 14.07.2005. u 00:04 · pre 259 meseci #1
Imam jedan poligon koji je nacrtan u glPolygonMode(GL_FRONT_AND_BACK,GL_LINE) modu.
E ,sad bih zelio da nacrtam liniju koja ce da prolazi kroz poligon(dakle da ga sjece),ali na
takav nacin da dio linije koji se nalazi ispred poligona bude nacrtan punom linijom,a drugi
dio linije koji se nalazi iza poligona bude nacrtan isprekidanom linijom.
Da li se ovo moze uraditi pozivom funkcija openGL-a ili ja moram sam da programiram,tako sto
bih nacrtao dvije ili vise linija(koje bi izgledale kao jedna),jednu ispred i jednu iza poligona,
sa razlicitim glLineStipple().
Unaprijed zahvalan!
Potpis
[email protected]
Re: Crtanje linije koja se sjece sa poligonom 14.07.2005. u 00:18 · pre 259 meseci
izmenjeno 1 put, poslednji put bkaradzic 14.07.2005. u 00:19
  1. bkaradzic14.07.2005. u 00:19zapis iz teksta poruke
#2
Verovatno je najlakše da nađeš presek trougla i linije i onda crtaš dve linije. Ako crtaš samo par poligona i par linija ne treba ti neka velika shader vratolomija i ovakva metoda je efikasna, ali ako ti je potrebno da renderuješ veliki broj linija onda bi verovatno bilo efikasnije odraditi preko shadera.
Potpis
https://github.com/bkaradzic/bgfx
Re: Crtanje linije koja se sjece sa poligonom 14.07.2005. u 11:20 · pre 259 meseci #3
U pitanju je nekoliko poligona pa cu vjerovatno uraditi preko dvije linije.
Ali tu moze doci do ne pozeljnih situacija.Na primjer ako linija izadje iz zaklona poligona.Onda je potrebno opet nacrtati punu liniju.Dakle 3 linije :)
Ja mislim ipak da bi trebalo da postoji neko univerzalo rijesenje.
Pozdrav
Potpis
[email protected]
Re: Crtanje linije koja se sjece sa poligonom 14.07.2005. u 21:23 · pre 259 meseci #4
Ako ti je to bitno, onda je najbolje:

- nacrtaš prvo punu liniju sa uključenim zwrite
- nacrtaš poligon koji je iste boje kao i boja pozadine (zbuffer test ukljucen, zwrite isključen). Ako ti je bitno da zadršiš pozadinu onda ćeš morati da koristiš rendering u teksturu. Ovo je da bi se izbrisala puna linija iz onog dela koji predstavlja poligon.
- nacrtaš isprekidanu liniju
- nacrtaš ivice poligona

U kompjuterskoj grafici ne postoje univerzalna rešenja za ovakve probleme. Uvek ima više rešenja i svako rešenje ima prednosti i mane, a na tebi je da smisliš koje rešenje najviše odgovara tvojim potrebama.
Potpis
https://github.com/bkaradzic/bgfx
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme