| |
|
|
 | si je ici im Programme mon linkes Opengl-Bild drehe (bouton Q/E), soll im rechten la fenêtre cela Bild comme normales Pic dargestellt volonté. Es funktioniert soweit sous dem normalen Profan, avec Profan2cpp pas cela Problem, ist si je anfange trop drehen, ensuite wird cela rechte Bild erneuert, mais qui Surface ist weiss, il y a aucun données drin
Muss dans Profan2cpp irgendwie qui grenier pour Bild usw anders reserviert volonté? quelle faute habe je gemacht. Unten ist cela gesamte Programme.
Im Anhang ist une Zip aussi avec une EXE de Profan et une EXE de Profan2cpp KompilierenMarqueSéparation $H Windows.ph
DEF rgb_umwandlung(2) ! "bmptex.dll","bmptex"
declare x1!,y1!,dx!,dy!,winkel!,y&,z%,a&,test%
declare bild_auto_h&,bild_umw_h&
declare bmi#,bildxy# ,ogl_rgb#
dim ogl_rgb#,128*128*4+1032
var texid%=0
var ende%=1
Window 20,20-600,400
Cls @RGB(220,220,220)
var hWin& = @Create("text", %hWnd, "Test1", 10, 10, 128,128)
var hWin1& = @Create("text", %hWnd, "Test1", 180, 10, 250,250)
oGL("Init", hwin&, 0,0, 0, 0)
oGL("PosMode", 1)
ogl("glReadBuffer",~GL_Front)
bild_auto_h& = Create("hPic", -1,"leer.bmp") Bildcontainer für "setDIBits"
var tex.auto%=erzeugetex("auto.bmp")
setTimer 18
drawglscene
drawglscene
oglzubmp
WHILE ende%
WaitInput
if isKey(81)
winkel!=winkel!+1.0
drawglscene
oglzubmp()
endif
if isKey(69)
winkel!=winkel!-1.0
drawglscene
oglzubmp()
endif
ENDWHILE
killTimer
end
proc oglzubmp
ogl("glReadPixels",0,0,128,128,~GL_BGRA,~GL_UNSIGNED_BYTE,ogl_rgb#)
~setDIBits(%hdc,bild_auto_h&,0,128,ogl_rgb#,bmi#,0)
mcls 128,128
startpaint -1
drawpic bild_auto_h&,0,0,-1
endpaint
startpaint hWin1&
mcopybmp 0,0-127,127>50,50,-1
endpaint
endproc
proc drawglscene
OGL("Clear")
OGL("origin",0,0,-1.11)
OGL("texture",tex.auto%,1)
OGL("rotate",0,0,winkel!)
OGL("quad",0.5,0.5)
OGL("show")
endproc
proc bitmap_header
def &BI_RGB 0
def &DIB_RGB_COLORS 0
struct BITMAPINFOHEADER =
biSize&, biWidth&, biHeight&, biPlanes%, biBitCount%, biCompression&,
biSizeImage&, biXPelsPerMeter&, biYPelsPerMeter&, biClrUsed&, biClrImportant&
dim bmi#,BITMAPINFOHEADER
clear bmi#
with bmi#
.biSize& = sizeof(bmi#)
.biWidth& = 128
.biHeight& = 128
.biPlanes% = 1
.biBitCount% = 32
.biCompression& = &BI_RGB
.biSizeImage& = ((.biWidth& * .biBitCount% 8 - 1) | 3 + 1) * abs(.biHeight&)
endwith
endproc
proc erzeugetex
parameters namebild$
bitmap_header()
bild_umw_h& = Create("hPic", -1, namebild$)
a&=bmi#.biSizeImage&
dim bildxy#,a&+1032
~GetDIBits(%hdc,bild_umw_h&,0,bmi#.biHeight&,bildxy#,bmi#,0)
rgb_umwandlung(bildxy#,a&)
OGL("glGenTextures",1,ADDR(texid%))
OGL("glBindTexture",~GL_TEXTURE_2D,texid%)
OGL("glEnable",~GL_ALPHA_TEST)
OGL("glAlphaFunc",~GL_GREATER, 0.1)
OGL("glTexParameteri",~GL_TEXTURE_2D, ~GL_TEXTURE_MAG_FILTER, ~GL_LINEAR)
OGL("glTexParameteri",~GL_TEXTURE_2D, ~GL_TEXTURE_MIN_FILTER, ~GL_LINEAR)
OGL("gluBuild2DMipmaps",~GL_TEXTURE_2D, ~GL_RGBA, 128, 128, ~GL_RGBA, ~GL_UNSIGNED_BYTE, bildxy#)
dispose bildxy#
RETOUR texid%
endproc
mfg peter |
 |
|
| |
|
|
|
 Sebastian König | allô Peter,
prinzipiell sollte es avec Profan2Cpp genauso marcher comment avec XProfan - je vais alors la fois en aus, dass es un faute dans Profan2Cpp ist. je werde mir cela la fois regarder et mich wieder annoncer - peux mais malheureusement quelque chose dauern (mercredi soir ou bien jeudi demain) là je im Moment justement assez ausgelastet suis...
MfG
Sebastian |
|
|
| |
|
|
|
 | allô Sebastian, merci pour deine Aider.
mfg peter |
|
|
| |
|
|
|
 | Im Anhang ist encore une avec dem gleichen faute. chez qui Profan2cpp erscheint pas qui Bitmap.
Steuern peux on avec den Tasten "QWES"
mfg peter |
|
|
| |
|
|
|
 Sebastian König | allô Peter,
j'ai mir qui l'affaire justement la fois angesehen. qui gute nouvelle ist, dass qui erste Testcode avec dem kommenden Profan2Cpp 2.0 déjà korrekt funktioniert. seulement chez dem zweiten (aus dem ZIP-Archiv) gibt es encore une Darstellungsfehler (cela voiture im rechten la fenêtre ist simple une schwarze Box...). je werde mich bemühen, cette Bug dans Version 2.0a trop beheben.
Profan2Cpp 2.0 wird officiel zusammen avec XProfan 11 erscheinen (hoffentlich bientôt). dans den prochain Tagen werde je Schonmal qui neue Testversion sur qui Profan2Cpp-Page d'accueil zum Télécharger einstellen.
MfG
Sebastian |
|
|
| |
|
|
|
 |
dans den prochain Tagen werde je Schonmal qui neue Testversion sur qui Profan2Cpp-Page d'accueil zum Télécharger einstellen.
Hmm..., sommes qui prochain Tage déjà rum....  peux à peine erwarten.
mfg peter |
|
|
| |
|
|
|
 Sebastian König | Peter Bierbachh
Hmm..., sommes qui prochain Tage déjà rum....  peux à peine erwarten.
je werde mich bemühen, es jusqu'à ce soir (dt. Zeit) fertigzumachen.  |
|
|
| |
|
|
|
 Sebastian König | Ok, erledigt sur qui Profan2Cpp-Page d'accueil [...] gibt es eh bien qui Testversion 2.0 zum Télécharger. |
|
|
| |
|
|
|
 | allô, cela ging mais Superschnell. qui Grafik funktioniert aussi comment vous soll.
une tolle travail cela ganze Profan2cpp 2.0
si je maintenant avec BCC55 compiliere, peux je ensuite là aussi "if-auswertungen " ala C++ gemäß BCC55 reinbringen usw ou bien gibt es là irgendwelche besondere einschränkungen, cela seulement bestimmter Code pris volonté darf?
un faute? qui Compiler beanstandet qui "PVAR", cela il qui pas kennt, si je je sur plus vais, stürzt il ab. KompilierenMarqueSéparation |
|
|
|
|
 Jörg Sellmeyer | si cela avec dem Inline CPP allez, peux je pas dire mais Du meinst doch sûrement "EndProc" et pas "end proc", ou bien? |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ...  | 12.09.2008 ▲ |
|
|
|
|
 | oGL("scale", scale_1!, scale_1!,scale_1!)
cette Befehl wird beanstandet, weil qui falsche Anzahl de Parametern transfert wird. chez Scale volonté mais 3 paramètre transfert. (était chez Vers 1.6c pas)
mfg peter |
|
|
| |
|
|
|
 | un paramètre pour ogl.Scale! (dans qui piège suis je aussi déjà getappt) |
|
|
| |
|
|