Oglądasz wypowiedzi znalezione dla hasła: GLU H
Temat: DX vs OpenGL - re z NVidii
Benji wrote:
Ludzie ze tez sie Wam jeszcze chce pisac na ten temat!!!
(ale skoro piszecie pierdoly nalezy to prostowac)
(...)
LUDZIE! PRZESTANCIE SIE ZACHOWYWAC JAK DZIECI I PRZESTANCIE JUZ TE
FLAMEWAR'y DX<-OGL!
To ze sam masz ochote na gloszenie Ewangelii to jeszcze nie powod
zebys mi to zarzucal. Temat jest oklepany i wiem o tym rownie
dobrze co ty. Odpowiadzialem na post Zbyszka dlatego ze sam mialem
kiedys
(szczerze!) prywatny dylemat "DX czy OGL".
Ty zas przemowiles z pozycji experta, ktory musi "sprostowac pierdoly".
Niestety wykazujesz ignorancje, miejscami sam przyznajesz sie do
niewiedzy.
| Zbyszek wrote:
| Odpisali mi z NVidii. Mowia, ze OpenGL jest prostsze do nauczenia, ale w
DX
| szybciej i latwiej stworze "production quality code".
| OpenGl ma swoje wady, ale IMHO dlubanie w DX to strata czasu i nerwow:
| - swoj pierwszy program pod OpenGl pisalem rownoczesnie z czytaniem
| help'a.
| W przypadku DX (byla to ver. 5) po kilku nieudanych probach musialem
| rozpoczac
| od kopiowania i modyfikacji przykladow z SDK.
Gdyz: nie potrafiles programowac pod winda/nie wiedziales co to COM/nie
chcialo Ci sie tego rozumiec. Wiedziales jak sie programuje proceduralnie i
wydawalo Ci sie ze tak jest latwiej i lepiej.
LOL!
gratuluje - rozszyfrowales mnie
Cala roznice w wygodzie miedzy OGL a DX zredukowales do tego:
styl OGL: glSomething();
styl DX: lpSomeObject-DoSomething();
:)))))))))))
| - DX jest B A R D Z O niescisle udokumentowany. Bedziesz musial stosowac
| metode
| prob i bledow, pisac programy typu
| czy-taka-kombinacja-flag-bedzie-dzialac
W kazdym SDK sa pewnie bledy. Dokumentacja jest duza (moze az za duza) i
Przyznaj sie ze nie widziales dokumentacji do OGL, a tylko helpa z MSDN.
Ta pierwsza jest precyzyjna, inzynierska. Miejscami czyta sie ja jak
twierdzenia matematyczne. Tu nie ma miejsca na bledy i
niejednoznacznosci. To nie jest help do Word'a.
jest w niej w zasadzie wszystko co potrzebne.
Twoje potrzeby byly ograniczone.
| - szybko dojdziesz do wniosku ze w praktyce DX nie da sie uzywac
| bezposrednio - bedziesz
| musial napisac jakas swoja "wrapper-library". Nawet te palanty z M$ to
| dostrzegly, dlatego
| stworzyli wlasna: D3DX.
Aha, a palanty z SGI i inni ludzie zaczeli robic glu i glut'y. ARGUMENT
BOMBA!
Niech Ci bedzie, ale po tych kilku latach obecnosci DX5/6/D3D-Retained
D3DX jest dla mnie przyznaniem sie do spapranej roboty.
(...)
| - tylko pod OpenGl uzyskasz dostep do 100% mozliwosci GeForce'a 2 & 3
| (dlatego zacytowana odpowiedz z nVidii troche mnie zaskoczyla)
O jakie mozliwosci chodzi? Fakt ze kazda rzecz mozna w OGL'u dodac jako
extension,
A wiec probujesz oceniac cos czego nie znasz.
ale za to przy programowaniu trzeba sie niezle pieprzyc ze
sprawdzaniem 100 sterownikow dla 100 kart.
To jest twoj "ARGUMENT BOMBA".
Dokladnie to samo ma miejsce w DX.
Wlasnie dlatego 99% gier korzysta ze "wspolnego mianownika"
aktualnego hardware'u bo pod DX trzeba by bylo sie TAK SAMO pieprzyc.
Niektorych roznic w hardwarze nie zniweluje zaden API.
W d3d wszystko jest w jednym
interfejsie,
W OGL jest zestaw rozszerzen ktore supportuje kazda karta klasy DX6/DX7
a akurat dx8 to chyba wszystko supportuje co gf3 oferuje.
Prawie.
Odwiedz http://www.nvidia.com, to nie bedziesz musial pisac "chyba".
Marcin.
Przejrzyj resztę wiadomości
Temat: ogl->pytania...
"KaMiKaZ/BOR@" <gei@poczta.onet.plwrote in message
Witam!!!
Probuje zabawy z OGL'em ;-) I po przeczytaniu kilku tutoriali zaczynam
glupiec.
Otoz aby napisac cokolwiek korzystajacego z OGL do projektu w VC musze
dolaczyc do projektu biblioteki onengl32.lib,glu32.lib,glaux.lib. To wiem
!
Zanim bede robil cokolwiek dalej musze rozwiac moje dotychczasowe
watpliwosci ...
Po pierwsze czym roznia sie te trzy biblioteki ?
:))))
po pierwsze coby urzywać OpenGL'a musisz linkować tylko i wyłącznie z
OpenGl32.lib (lub implementacją SGI opengl.lib)
Domyslam sie ,ze opengl32 robi to, a glaux i glu tamto ---- tylko
dokladnie
co ?
no wię OpenGL to api ;) ...
glu - GL Utils
są tam procki do robienia mipmam, tesselator i inne takie ciekawostki ;)
GLAUX - to jest dawno już zapomniany [i stary] pomost pomiędzy OpenGL
a windozą który ma ułatwiać init okienek ...
Dalej ... rozumiem , ze w/w liby sa tylko pomostami pomiedzy api z lib'ow
a
prockami zawartymi w windows/system/opengl32.dll ....
to co siedzi w OpenGL32.dll to addy prockuff ma w OpenGL32.lib
to co siedzi w glu32.dll to ma addy w glu32.lib ;)
Implementacja libow (budowa api) jest jednakowa, natomiast sama
implementacja dll'i zalezy od producenta karty dostrczanych razem ze
sterami? Mam racje ???
no masz ... tylko pamiętaj o tym ze producent ma WŁASNEGO dll'ka
[w przypadku nvidii nvOpenGL.dll]
ty linkujesz z OpenGL32.dll a już sama dll'ka "przezuca" wszystko na
hardware'ową implementacje
[albo i nie przezuca ... zalezu od ustawień formatu pixel'a ;)]
Co w takim razie z rozszerzeniami - jak sie do nich dobrac ?
rozszezenia pobierasz procką
wglGetProcAddress(nazwa_procki_której_addy_chcesz_pobrać)
no ale są też rozszezenia które nie poczebują procek ... wtedy sprawdzasz
w extension_stringu czy takowe istnieje, po czym podajesz parametry już do
istniejących procek
I ostatnie pytanie - GLUT - oplaca sie uzywac ta biblioteke? Czy
przypadkiem
za cene latwiejszej inicjalizacji okienek i przenosnosci na inne osy nie
spadnie wydajnosc moich progow?
Jak to jest Waszym zdaniem ?
Gdzie znajde help do gluta ?
help znajdziesz:
http://reality.sgi.com/opengl/glut3/glut37.zip
http://reality.sgi.com/mjk_asd/glut3/glut3.html
http://www.xmission.com/~nate/glut.html
w każdym razie gdzieś tam ;)
teraz co do spowalniania ... glut _W NICZYM_ nie zpowalnia twojej
aplikacji !!! ... robi init okienka i na tym kończy się jego rola
chyba ze urzywasz jeszcze tam jakiś zaszytych w nim menusów / callbacków
ogólnie GLUT powstał po to aby to samo SRC mozna było przenosić
pomiędzy windą a Linuxem/Unixem (Xwinda ;)
ponieważ OpenGL nie jest tak do końca niezależny od systemu
[chodzi o procki zaczynające się od wgl... - te występują _TYLKO_ w windzie
a z kolei w Xwindzie są te co zaczynają się od glx...]
chodzi tu głównie o init kontextu i dobur formatu pixela
ale nic nie szkodzi aby [tak jak ja ;)] nie urzywać ani GLAUX ani GLUT'a
i samemu sobie init napisać co wcale trudne nie jest ... parenaście linijek
kodu ;)
Z gory wielkie dzieki za odpowiedzi....
3majcie sie
KaMiKaZ/BOR@
gei@poczta.onet.pl
scena PC,grafika 3D,programowanie
Przejrzyj resztę wiadomości
Temat: ogl->pytania...
Witam!!!
Dzienx MX za odpowiedz na mojego posta .... moze dalej pogadamy na temat OGL
?
Ciagle rodza mi sie nowe pytania ;-)
:))))
po pierwsze coby urzywać OpenGL'a musisz linkować tylko i wyłącznie z
OpenGl32.lib (lub implementacją SGI opengl.lib)
Ok ... rozumiec !
no wię OpenGL to api ;) ...
glu - GL Utils
są tam procki do robienia mipmam, tesselator i inne takie ciekawostki ;)
Co to jest ten mipmam AND tesselator .... jakie inne ciekawostki .... sory
za upierdliwosc, ale jak sie chce czegos pozadnie nauczyc to potrafie byc
bardzo dociekliwy ;-)
Ewentualnie moze dasz mi jakiegos linka, gdzie moge poczytac o organizacji
OGL (najlepiej po polsku .,.. choc i z angielskim dam sobie rade)
GLAUX - to jest dawno już zapomniany [i stary] pomost pomiędzy OpenGL
a windozą który ma ułatwiać init okienek ...
Tzn., ze bez glaux tez zainicjuje okienko do OGL ?
A moze tak do tej pory robilem ? Kurde sam juz nie wiem ;-)
to co siedzi w OpenGL32.dll to addy prockuff ma w OpenGL32.lib
to co siedzi w glu32.dll to ma addy w glu32.lib ;)
O to mi chodzilo ;-)
no masz ... tylko pamiętaj o tym ze producent ma WŁASNEGO dll'ka
[w przypadku nvidii nvOpenGL.dll]
ty linkujesz z OpenGL32.dll a już sama dll'ka "przezuca" wszystko na
hardware'ową implementacje
[albo i nie przezuca ... zalezu od ustawień formatu pixel'a ;)]
Ale nic z tymi dll'ami nie musze kombinowac. Wystarczy oengl32.lib ?
rozszezenia pobierasz procką
wglGetProcAddress(nazwa_procki_której_addy_chcesz_pobrać)
no ale są też rozszezenia które nie poczebują procek ... wtedy sprawdzasz
w extension_stringu czy takowe istnieje, po czym podajesz parametry już do
istniejących procek
Tym pobawie sie troche pozniej ;-)
help znajdziesz:
http://reality.sgi.com/opengl/glut3/glut37.zip
http://reality.sgi.com/mjk_asd/glut3/glut3.html
http://www.xmission.com/~nate/glut.html
w każdym razie gdzieś tam ;)
Szukalem ... i znalazlem , tylko ze pdf nie chcial sie sciagnac ! To
paszkwil jeden ...
ale nic nie szkodzi aby [tak jak ja ;)] nie urzywać ani GLAUX ani GLUT'a
i samemu sobie init napisać co wcale trudne nie jest ... parenaście
linijek
kodu ;)
Tylko,ze sam nie wiem czego uzywam ... tzn. trza bedzie sprawdzic w
naglowkach jakimi prockami (tzn. z ktorego liba) inicjalizuje okienko ....
sposob z tutorialu NeHe ;-) Moze sam wiesz i mi powiesz ;-) ????
Pewnie niezle zamotalem .... coz poczatki ;-)
Acha ... jeszcze jedno ... chce z poziomu api windy sprawdzic dostepne
rozdzialki na karcie graf...jak to zrobic ... moze sam ogl ma tego typu
funkcje ?
KaMiKaZ/BOR@
gei@poczta.onet.pl
scena PC,grafika 3D,programowanie
Przejrzyj resztę wiadomości
Temat: BHP - Trojany, robaki i szczury, fingery i inne bajery...
"Wojciech L." wrote:
Szanowny Panie Dariuszu!
Załóżmy, że moje rymy to grafomaństwo.
Czy mógłby Pan podać jakieś konkretne przykłady?
Miejsca w których nie ma przedziałów składniowo-intonacyjnych,
użyto gdzieś niezrozumiałej przerzutni? Chętnie poczytam.
Jesli ktos pisze, ze "biora go RETORSJE", to nie ma co dyskutowac o
przedzialach skladniowo-intonacyjnych. Chyba, ze nie zrozumialaem dowcipu.
Być może błądzę i tak już mieszam w metaforach,
że tylko ja wiem o co w mych wierszach chodzi?
Ja wiem, o co Panu chodzi, ale czy mnie te Panskie rozwazania moga
zainetresowac? Czegos dowiedzialem sie z nich na ciekawego, juz nawet
niekoniecznie na temat DTP?
Gdyby Pan napisał np. nie podoba mi się system wersyfikacyjny
wiersza, lub nawet nie cierpię słowa "retorsje" bo jest głupie
- ja bym raczej użył słowa "odwet".
To trzeba bylo uzyc. Wszystko byloby wtedy jasne: "bierze mnie odwet gdy
mnie szpieguja" czy jak tam bylo. Ja niestety mam wrazenie, ze Panu
"retorsje" po prostu pokickaly sie z "torsjami", ale juz Pan zajrzal do
slownika i stara sie z tego wybrnac.
/.../
Wtedy służę takim zakończeniem mojego wierszyka:
Retorsje mnie biorą, gdyż chcą mnie szpiegować,
Jak mam tych "głu-ptaków" w sobie opanować?
Raczej długo nie posiedzę na "netowej minie"
Muszę ich wypuścić - wypuszczam - bo zginę.
Bardzo dramatyczne.
Z powyzszego fragmentu nic kompletnie nie rozumiem, ale przywodzi on mi
na mysl jedno z opowiadan Stanislawa Lema (chyba z "Cyberiady" lub
"Bajek Robotow") - o maszynie do pisania wierszy. Szkoda, ze nie mam pod
reka i nie moge zacytowac, bo podobienstwo stylistyki jest uderzajace.
Tylko tamte wiersze byly smieszniejsze. Sadze ze rowniez Witkacy jako
piewca czystej formy bylby z Pana dumny.
...wtedy by było dopiero nie na temat!
Nawet grupy dyskusyjnej takiej nie ma, do której mógłby mnie Pan skierować.
Przykro mi, to nie moj problem. Ale zdaje mi sie ze chyba sa jakies
grupy dotyczace tworczosci artystycznej oraz bezpieczenstwa systemow komputerowych.
Tak więc skąd mam wiedzieć jak Pan odbiera metafory skoro Pan NICZEGO
nie napisał tylko KRYTYKUJE RYMY Z ZASADY!
Oczywiscie, Z ZASADY. Takoz samo Z ZASADY bede krytykowal wszystko, co w
tych zasadach sie nie miesci, a Pana wiersz nijak nie pasuje do zasad
obowiazujacych na grupie pl.comp.dtp.
Wie Pan co? Tak to się nigdy nie dogadamy.
Dowiedziałem się jedynie, że były "radosne" ;-)
Skoro takie były to chyba lepiej, niż Pana smutne wypociny prozą w tym
wątku.
Ja Pana nie zmuszam do czytania moich wypocin, prosze wiec tez mnie nie
zmuszac do czytania Panskich. Prosze pisywac na inne grupy.
Przeczytalem dalsze fragmenty, ale nie mam niestety czasu na polemike.
Zreszta nie bardzo widze taka potrzebe - powiedzialem juz wszystko.
Darek (s102)
Przejrzyj resztę wiadomości
Temat: Pytanie OpenGL
On Wed, 25 Aug 2004 11:24:44 +0200, Yogi wrote:
No i drugie juz takie
konkretniejsze jak znajdze sie ktos kto sie tym zajmuje, czy zna sposob
(jaki??) na wygladzanie powierzchi oswietleniem pod OpenGL. Tzn jezeli
juz mam oswietlenie, ale wiadomo ze normale sa liczone dla powierzchni,
czyli trojkata, to strasznie sie rzucaja w oczy krawiedzie tych
trojkatow. Chodzi mi o wprowadzenie czegos na zasadzie gradientu
pomiedzy tym, ale nie znam konkretnego rozwiazania. Z gory dzieki za pomoc.
Hej
Aby uzyskać gładnie cieniowanie przy włączonym oświetleniu musisz:
1) właczyć glEnable(GL_SMOOTH)
2) dla _każdego_ wierzchołka wyznaczyć wektor normalny, który będzie
znormalizowaną sumą wektorów normalnych płaszczyzn, do których ten
wierzchołek należy. i już :)
Pozdrawiam
krzysiek
Oto przykład "gładkiej" kuli:
parametry: R- promień kuli
int u oraz int v oznaczają ilość "równoleżników" i "południków"
co do dwóch pierwszych linijek to nie wiem czy tak samo wygląda to pod
Winodwsem... jak programuję w linuxie :)
P.S. Zamiast 2x GL_TRIANGLES można było użyć raz GL_QUADS, ale tą
funkcję pisałem dosyć dawno temu i choć ją używam nie chce mi się
jej zmieniać :)
sphere.cpp:
#include <GL/glu.h
#include <GL/glx.h
#include <stdio.h
#include <math.h
void Sphere (float R, int u, int v)
{
int i,j;
float dx, dy, X, Y, Z, alfa=0, beta=0;
float X1, X2, X3;
float Y1, Y2, Y3;
float Z1, Z2, Z3;
float xs, ys, zs;
float len;
dx = (2.0* M_PI) / (float) u;
dy = M_PI / (float) v;
for (i=0; i<u; i++) {
alfa = 0.0;
for (j=0; j<v; j++) {
X = sin (alfa) * cos (beta) * R;
Y = cos (alfa) * R;
Z = sin (alfa) * sin (beta) * R;
X1 = sin (alfa + dy) * cos (beta) * R;
Y1 = cos (alfa + dy) * R;
Z1 = sin (alfa + dy) * sin (beta) * R;
X2 = sin (alfa + dy) * cos (beta + dx) * R;
Y2 = cos (alfa + dy) * R;
Z2 = sin (alfa + dy) * sin (beta + dx) * R;
X3 = sin (alfa) * cos (beta + dx) * R;
Y3 = cos (alfa) * R;
Z3 = sin (alfa) * sin (beta + dx) * R;
glBegin (GL_TRIANGLES);
xs=X;ys=Y;zs=Z; len=sqrt(xs*xs + ys*ys + zs*zs);
glNormal3f (xs/len, ys/len, zs/len);
glTexCoord2f (beta / (2.0*PI), alfa / PI);
glVertex3f (X, Y, Z);
xs=X2;ys=Y2;zs=Z2; len=sqrt(xs*xs + ys*ys + zs*zs);
glNormal3f (xs/len, ys/len, zs/len);
glTexCoord2f ((beta + dx) / (2.0*PI), (alfa + dy) / PI);
glVertex3f (X2, Y2, Z2);
xs=X1;ys=Y1;zs=Z1; len=sqrt(xs*xs + ys*ys + zs*zs);
glNormal3f (xs/len, ys/len, zs/len);
glTexCoord2f (beta / (2.0*PI), (alfa + dy) / PI);
glVertex3f (X1, Y1, Z1);
glEnd();
glBegin (GL_TRIANGLES);
xs=X;ys=Y;zs=Z; len=sqrt(xs*xs + ys*ys + zs*zs);
glNormal3f (xs/len, ys/len, zs/len);
glTexCoord2f (beta / (2.0*PI), alfa / PI);
glVertex3f (X, Y, Z);
xs=X3;ys=Y3;zs=Z3; len=sqrt(xs*xs + ys*ys + zs*zs);
glNormal3f (xs/len, ys/len, zs/len);
glTexCoord2f ((beta + dx) / (2.0*PI), alfa / PI);
glVertex3f (X3, Y3, Z3);
xs=X2;ys=Y2;zs=Z2; len=sqrt(xs*xs + ys*ys + zs*zs);
glNormal3f (xs/len, ys/len, zs/len);
glTexCoord2f ((beta + dx) / (2.0*PI), (alfa + dy) / PI);
glVertex3f (X2, Y2, Z2);
glEnd();
alfa+=dy;
};
beta+=dx;
};
}
<koniec
Przejrzyj resztę wiadomości
zanotowane.pldoc.pisz.plpdf.pisz.plorientmania.htw.pl
Strona 3 z 3 • Wyszukano 182 wyników • 1, 2, 3