.[ ČeskéHry.cz ].
Změna typu čar v Opengl
Jdi na stránku 1, 2  Další
 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Visual Basic (6.0)
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
lubos



Založen: 10. 06. 2009
Příspěvky: 10

PříspěvekZaslal: 10. červen 2009, 17:15:55    Předmět: Změna typu čar v Opengl Odpovědět s citátem

Ahoj,
již delší dobu se snažím změnit typ čar ve VB používám pro vykreslování OpenGL ale at jsem zkoušel cokoliv nešlo to. Hledal sem i na webu ale nenašel jsem jediný zdroják kde by to ve VB bylo použito. Pokud by někdo věděl děkuji za jakoukoliv radu.
Luboš
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 10. červen 2009, 17:26:47    Předmět: Odpovědět s citátem

Jsou 2 způsoby.

Pro nastavení čar se v OpenGL používá funkce glLineStipple. Nicméně je vysoce pravděpodobné, že pod kapotou se na čáru mapuje textura s průhledností a daným vzorkem. To je ten druhý způsob.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
lubos



Založen: 10. 06. 2009
Příspěvky: 10

PříspěvekZaslal: 10. červen 2009, 17:30:27    Předmět: Odpovědět s citátem

To jsem tak nějak zkoušel ale když zkusím
glLineStipple ( 1, 0XFFFF)
což by měla být tuším čárkovaná tak už v téhle fázi na mě VB řve že argument pro typ čáry 0xFFFF je špatně a at do argumentu zkusím napsat cokoliv tak to na mě řve. Už jsem z toho neštastnej.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
if.then



Založen: 13. 04. 2008
Příspěvky: 579

PříspěvekZaslal: 10. červen 2009, 17:37:01    Předmět: Odpovědět s citátem

------
EDIT
Moje chyba, nejak jsem pozapomnel ze 1 byte = 8 bitu = 256 hodnot
GLbyte = char = 1 byte
GLshort = short int = 2 byty
GLint = int/long int = 4 byty

v cem by tedy mohl byt problem? OGL prece s disablovanou funkci chybu nehazi Surprised spis bych videl problem v zapisu(prece jenom, desitkova soustava je lidem blizsi)
_________________
For guns and glory, go to www.ceske-hry.cz.
For work and worry, execute VC++.


Naposledy upravil if.then dne 10. červen 2009, 18:17:04, celkově upraveno 4 krát
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
nou



Založen: 28. 07. 2007
Příspěvky: 1047

PříspěvekZaslal: 10. červen 2009, 17:39:14    Předmět: Odpovědět s citátem

nie to bude plna ciara kedze by to bolo vsetko bitove jednotky. skor napr 0xAAAA
_________________
Najjednoduchšie chyby sa najtažšie hľadajú.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
lubos



Založen: 10. 06. 2009
Příspěvky: 10

PříspěvekZaslal: 10. červen 2009, 18:15:15    Předmět: Odpovědět s citátem

Právě že tohle vše jsem zkoušel, bud mi to hodnotu nevzalo nebo to byla jen plná čára.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
johnnash



Založen: 30. 07. 2007
Příspěvky: 80

PříspěvekZaslal: 10. červen 2009, 18:15:24    Předmět: Odpovědět s citátem

glEnable (GL_LINE_STIPPLE);
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
lubos



Založen: 10. 06. 2009
Příspěvky: 10

PříspěvekZaslal: 10. červen 2009, 18:38:37    Předmět: Odpovědět s citátem

to volam
ale ani s porametrem 0xFF mu to VB nevezme viz
http://www.htronik.eu/zaloha/a.JPG
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
if.then



Založen: 13. 04. 2008
Příspěvky: 579

PříspěvekZaslal: 10. červen 2009, 19:02:06    Předmět: Odpovědět s citátem

Ozkoušet v desítkových. glLineStipple - mám dojem že na velkých písmenech záleží i v Basicu Smile
_________________
For guns and glory, go to www.ceske-hry.cz.
For work and worry, execute VC++.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
posila



Založen: 29. 07. 2007
Příspěvky: 201

PříspěvekZaslal: 10. červen 2009, 19:13:31    Předmět: Odpovědět s citátem

Implementace Visual Basicu jsou většinou case insensitive.

Hexadecimální čísla mají prefix nikoliv 0x ale &H
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
lubos



Založen: 10. 06. 2009
Příspěvky: 10

PříspěvekZaslal: 10. červen 2009, 19:29:39    Předmět: Odpovědět s citátem

ani tohle nechodí
glLineStipple ( 1, &HFFFF)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
if.then



Založen: 13. 04. 2008
Příspěvky: 579

PříspěvekZaslal: 10. červen 2009, 19:34:57    Předmět: Odpovědět s citátem

Ach jo... můj nápad o použití desítkové soustavy zřejmě nikdo nebere vážně Very Happy
_________________
For guns and glory, go to www.ceske-hry.cz.
For work and worry, execute VC++.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 10. červen 2009, 20:07:09    Předmět: Odpovědět s citátem

if.then napsal:
GLbyte = char = 1 byte
GLshort = short int = 2 byty
GLint = int/long int = 4 byty

Špatně. V jazyce C++ specifikuje norma pouze toto: sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long) <= sizeof(long long). Na GCC x86_64 platí především: sizeof(int)==4, sizeof(long)==8. GL typy mají trochu jiná pravidla a nemusí přesně souhlasit se základními typy. A jsme přece ve VB, kde se ty základní typy jmenují jinak.

if.then napsal:
v cem by tedy mohl byt problem? OGL prece s disablovanou funkci chybu nehazi Surprised

Špatně. GL vždy musí dát chybu při špatných parametrech nebo špatném použití bez ohledu na aktuální stavy.

if.then napsal:
Ach jo... můj nápad o použití desítkové soustavy zřejmě nikdo nebere vážně Very Happy


Uhodls. Desítková soustava je pro reprezentaci bitového pole asi nejhorší možnost.

2x měř, jednou řež.

Ostatní>
Trochu si představte, jak tam ty bity jsou uložený. F dá vždycky 1111, to je plná čára, takže FFFF je zase a jen plná čára. FF00 (1111111100000000) nebo 00FF (0000000011111111) udělá čárkovanou čáru. AAAA (1010101010101010) nebo 5555 (0101010101010101) udělá tečkovanou, pokud to neovlivníte prvním parametrem glLineStipple, atd.

Návod: Použijte kalkulačku ve win. Zvolte Bin, zadejte číslo, zvolte Hex.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Weny Sky



Založen: 28. 07. 2007
Příspěvky: 241

PříspěvekZaslal: 10. červen 2009, 20:18:48    Předmět: Odpovědět s citátem

lubos napsal:
ani tohle nechodí
glLineStipple ( 1, &HFFFF)

a co toto :
kód:
glLineStipple ( 1, CLng("&HFFFF"))
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
lubos



Založen: 10. 06. 2009
Příspěvky: 10

PříspěvekZaslal: 10. červen 2009, 20:25:41    Předmět: Odpovědět s citátem

Tak at tam napíšu cokoliv tak mi to inhned po dopsání hodí hlášku compile error : Expected =
zkoušel jsem
glLineStipple ( 1, &HAAAA)
glLineStipple ( 1, Clng(&HAAAA))
glLineStipple ( 1, Clng("&HAAAA"))
glLineStipple ( 1, &H5555)
glLineStipple ( 1, 5555)
glLineStipple ( 1, &HAAAA)

Kalkulačku použít umím to není problém, problém je že mi to nevezme žádnouhodnotu. Vim i jak to tam funguje ale at tam napíšu cokoliv v jakémkoliv tvaru ( bin, hec , dec tak to na mě řve compile error
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Visual Basic (6.0) Časy uváděny v GMT + 1 hodina
Jdi na stránku 1, 2  Další
Strana 1 z 2

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna