Die Farben der Überschriften auf jeden Fall eins dunkler, auf Echtfarben- bzw. Adobe RGB Monitoren sieht man fast nichts mehr. Die Kennzeichnung mit Farben sieht auch eher extrem unaufgeräumt auf. Wichtig ist doch eine sinnvolle (selbstgewählte) Unterteilung mit Überschriften in verschiedenen Größen und Breiten.
Beiträge von minx
-
-
was ich als AutoIt-ler schmerzlich vermisse, sind "Einfachst"-Befehle, die 80% des (in so gut wie jedem existierenden GL-Programm) anfallenden identischen Codes mittels simpler Anweisungen kapseln.
Im Stile der "Extensions"Da OpenGL eine Low-Level API ist, ist dies "von Haus aus" nicht nötig. Würde man es immer weiter abstrahieren, wäre man bei Irrlicht und Co. (nebenbei fehlt dann die Möglichkeit doch durch kleine Umordnungen noch Performanceschübe zu bekommen
). -
Meines Wissens nicht. Es scheint aber Eventartige Verknüpfungen zu geben. Da steht etwas dazu in Verbindung mit glade/GTk
-
Please speak english. Google Translate texts are just greek to us.
-
Bei den wichtigen Beispielen kann man die FPS selbst einstellen. Allgemein wird die Performance ja durch das Anzeigen der FPS gemindert

-
Mit Freebasic (PNG per GDI+ in GUI) Quelle
Spoiler anzeigen
C
Alles anzeigen'mit fbc -s gui kompiliert wird kein Konsolefenster erzeugt #include Once "windows.bi" #Include Once "win/GdiPlus.bi" Using Gdiplus Function WindowProc( Byval hWnd As HWND, Byval uMsg As uint,_ Byval wParam As WPARAM, Byval lParam As LPARAM ) As LRESULT Static As GdiplusStartupInput gdipsi Static As ULONG_PTR gdipToken Static As GpGraphics Ptr pGraphics Static As GpImage Ptr pImage1 Static rc As RECT Dim As PAINTSTRUCT ps Select Case uMsg Case WM_CREATE gdipsi.GdiplusVersion = 1 GdiplusStartup( @gdipToken, @gdipsi, null ) GdipLoadImageFromFile( WStr("Osci.png"), @pImage1) 'siehe GdiplusImaging.bi GdipImageRotateFlip( pImage1, RotateNoneFlipX ) 'vertikal gespiegelt GetClientRect( hWnd, @rc ) Case WM_PAINT BeginPaint( hWnd, @ps ) GdipCreateFromHDC(ps.hdc, @pGraphics) GdipDrawImageRect(pGraphics, pImage1, rc.left, rc.top, rc.right, rc.bottom ) 'oder 'GdipDrawImageRect(pGraphics, pImage1, 0, 0, 640, 480 ) GdipDeleteGraphics(pGraphics) EndPaint( hWnd, @ps ) Case WM_CLOSE DestroyWindow( hWnd ) Case WM_DESTROY GdipDisposeImage( pImage1 ) GdiplusShutdown( gdipToken ) PostQuitMessage( null ) Case Else Return DefWindowProc( hWnd, uMsg, wParam, lParam ) End Select Return 0 End Function 'Start Main Dim hWnd As HWND Dim wMsg As MSG Dim As Integer wx, wy, nWidth, nHeight Dim wcx As WNDCLASSEX Dim className As String = "test_png" With wcx .cbSize = sizeof( WNDCLASSEX ) .style = CS_HREDRAW Or CS_VREDRAW Or CS_BYTEALIGNWINDOW .lpfnWndProc = cast( WNDPROC, @WindowProc ) .cbClsExtra = null .cbWndExtra = null .hInstance = GetModuleHandle( null ) .hbrBackground = GetStockObject( BLACK_BRUSH ) .lpszMenuName = null .lpszClassName = Strptr( className ) .hIcon = LoadIcon( null, IDI_APPLICATION ) .hCursor = LoadCursor ( null, IDC_ARROW ) .hIconSm = 0 End With RegisterClassEx( @wcx ) nWidth = 650 nHeight = 510 wx = (GetSystemMetrics( SM_CXSCREEN ) / 2) - nWidth / 2 wy = (GetSystemMetrics( SM_CYSCREEN ) / 2) - nHeight / 2 hWnd = CreateWindowEx( WS_EX_OVERLAPPEDWINDOW,_ Strptr( className ), "GDI+ Draw PNG Test",_ WS_OVERLAPPED Or WS_SYSMENU,_ wx, wy, nWidth, nHeight,_ null, null, GetModuleHandle( null ), null ) ShowWindow( hWnd, SW_SHOWNORMAL ) UpdateWindow( hWnd ) Do Until( GetMessage( @wMsg, null, 0, 0 ) = 0 ) TranslateMessage( @wMsg ) DispatchMessage( @wMsg )Geht als Anregung durch ^^. Für GUIs allgemein siehe hier
-
Direkt-Download hinzugefügt.
-
ogl4au3
v 2.0 Alpha
Willkommen zur 2. großen OpenGl-UDF für AutoIt3.
Die UDF findet sich im Ordner Includes und heißt opengl.au3. Diese UDF inkludiert automatisch alle
anderen UDFs die für die Funktionalität von ogl4au3 verantwortlich sind. Sie muss als einziges
inkludiert werden.
Im Ordner Media finden sich alle Dateien, die in den Beispielen gebraucht werden. Die Beispiele
sind im Ordner Examples mit Nummern angeführt, die ihe Komplexität symbolisiert.
Werte, die ihr selbst einstellen dürft sind mit ; Public gekennzeichnet!Inbetriebnahme
Um die UDF zu nutzen, muss opengl.au3 inkludiert werden. Alle anderen Includes müssen sich
im selben Ordner wie opengl.au3 aufhalten. Alle DLLs müssen ebenfalls im SkriptDir liegen, das heißt
alle DLLs, die sich auch im Examples Ordner finden (!).Hilfe
Die "Hilfe" findet sich im Ordner Doc. Der gewünschte Artikel lässt sich per Windows-Dateisuche findenBugs
- Hilfe ist unvollständig, nicht übersetzt und nicht ausgefüllt
- Beispiele sind nicht ganz optimal geschrieben / aufgeräumt
- UDFs sind weder aufgeräumt noch konform noch irgendwie sonst ordentlich
- Hier und da noch ein Bug...
Download
Der Download kann über wpt-get erfolgen (Dateigröße, und es ist für mich einfacher zu verwalten!):mfG

-
Wurde die WinAPI unter Win8 nicht teilweise eingestellt?
-
So viel Fuzz um ein so kleines Skript :D. Aber schön, dass es jetzt funktioniert

-
Das ist ne Möglichkeit ^^. In einer VBox läufts mit ~60FPS so. Kein Unterschied zu der optimierten Variante bei mir - logisch. Ich kann es nicht testen, da ich gerade keinen nativen PC habe

-
Also meine Spezigikationen nochmal deutlicher:
MacBook mit i5 und Windows 7 in einer VBox. In der VBox läuft es wirklich rasend schnell

-

Wow, das trifft sich ja famos! Das ist mein stolzer 500. Beitrag in diesem Forum.
-
Bei mir 1440x9xx. Wüsste aber nicht, woher der Geschwindigkeitsverlust kommen sollte. Weder am Random (lol) noch am Blt kanns liegen...
-
Hm. Bei mir (i5) läuft es so schnell, dass man nach kurzer Zeit nichts mehr von Ursprung erkennen kann

-
Jetzt gibt es von mir 22 Effekte die den Desktop verformen, wie schmelzen, fließen, wehen...
Je nach Bedarf kann man nun auch Andys Modus einschalten, wenn es nicht richtig läuft. Eigene Effekte hinzuzufügen dürfte relativ leicht sein!Spoiler anzeigen
[autoit]#include <ScreenCapture.au3>
[/autoit] [autoit][/autoit] [autoit]; Animation from 0 to 21
[/autoit] [autoit][/autoit] [autoit]
Local $iAnimation = 0Local $bAndyMode = False
[/autoit] [autoit][/autoit] [autoit]; m1, m2, k1, k2, z1, z2
[/autoit] [autoit][/autoit] [autoit]
Local $aAnimations[22][6] = [ _
[2,2,128,128,1,1], _ ; 0 - Melt (Good)
[20,20,128,128,1,1], _ ; 1 - Powder Blow
[9,9,128,128,1,1], _ ; 2 - Powder
[0,0,128,128,1,1], _ ; 3 - Evaporate
[3,3,128,128,1,1], _ ; 4 - Water Color
[5,5,128,128,1,1], _ ; 5 - Accumulate
[10000,10000,128,128,1,1], _ ; 6 - Checks
[1000,1000,128,128,1,1], _ ; 7 - Extreme Checks (Fast)
[10,2,128,128,1,1], _ ; 8 - Wind Blow (Good)
[2,10,128,128,1,1], _ ; 9 - Pour Down (Quite)
[10,10,128,128,1,1], _ ; 10 - Running
[20,10,128,128,10,10], _ ; 11 - Crazy Smoke (Good)
[2,2,128,128,-100,2], _ ; 12 - Super Fast Stream (Good)
[2,2,100,10,1,1], _ ; 13 - Moving Water (Good)
[10,8,100,10,1,1], _ ; 14 - Sort of Powder & Water
[50,10,1,25,80,10], _ ; 15 - Dissolve
[2,10,12,1,5,10], _ ; 16 - Blinds
[1,1,1,1,-2,10], _ ; 17 - Stars
[5,5,8,4,-2,10], _ ; 18 - Arrows (sort of.)
[2,10,200,4,-2,10], _ ; 19 - Fire
[30,30,10,10,10,10], _ ; 20 - Grained
[25,25,25,255,250,25] _ ; 21 - Shake
]Global Const $hDwmApiDll = DllOpen("dwmapi.dll")
[/autoit] [autoit][/autoit] [autoit]
Global $sChkAero = DllStructCreate("int;")
DllCall($hDwmApiDll, "int", "DwmIsCompositionEnabled", "ptr", DllStructGetPtr($sChkAero))
Global $aero = DllStructGetData($sChkAero, 1)
If $aero Then DllCall($hDwmApiDll, "int", "DwmEnableComposition", "uint", False)
;Sleep(500)
Opt("GUIOnEventMode",1)
Local $c=b(0),$a=@DesktopWidth,$b=@DesktopHeight
_ScreenCapture_Capture("m.bmp",0,0,-1,-1,False)
$d = GUICreate(0,$a,$b,0,0,0x80000000)
GUISetOnEvent(-3,"a")
GUICtrlCreatePic("m.bmp",0,0,$a,$b)
$e=b($d)
GUISetState()While 1;.
[/autoit] [autoit][/autoit] [autoit]
$f=($a-$aAnimations[$iAnimation][2])*random(0,1)
$g=($b-$aAnimations[$iAnimation][3])*random(0,1)
$h = $aAnimations[$iAnimation][0]*random(0,1) - $aAnimations[$iAnimation][4]
$i = $aAnimations[$iAnimation][1]*random(0,1) - $aAnimations[$iAnimation][5]
If Not $bAndyMode Then
DllCall("gdi32.dll","bool","BitBlt","handle",$e,"int",$f+$h,"int",$g+$i,"int",$aAnimations[$iAnimation][2],"int",$aAnimations[$iAnimation][3],"handle",$c,"int",$f,"int",$g,"dword",0x00CC0020);
Else
DllCall("gdi32.dll","bool","BitBlt","handle",$e,"int",int($f + $h), "int",int($g + $i),"int",128, "int",128,"handle",$e,"int",int($f),"int",int($g), "dword", 0x00CC0020) ;Andy's Variante
EndIf
WEnd;DllCall("user32.dll","int","ReleaseDC","hwnd",$d,"handle",$e)
[/autoit]
DllCall("user32.dll","int","ReleaseDC","hwnd",0,"handle",$c)
Func a();
If $aero Then DllCall($hDwmApiDll, "int", "DwmEnableComposition", "uint", True)
Exit;
EndFunc;.
Func b($j);
$k=DllCall("user32.dll","handle","GetDC","hwnd",$j);
Return $k[0];
EndFunc;. -
Ich hatte so viel zu tun mit der neuen OpenGL.

-
Alles gute euch allen!
-
Ich möchte mal eure Kreativität sehen

Das ist kein Wettbewerb, eher eine kleine Sammlung. Erstellt ein schönes Bild mit Bezug zu AutoIt (auch wenns nur das Logo ist).
Ich gehe da mal mit guten Beispiel voran:Kaffee
[Blockierte Grafik: http://i40.img-up.net/mug6669.png]
Und hier ist ein Wallpaper (das AutoItlogo als Grafitti) Achtung 6MB. Am besten gleich Speichern:
http://u68i.img-up.net/grafittif96e.png?l=de
Lets have fun!
-
Warum recyclen wir nicht altes Material

[Blockierte Grafik: http://www.autoit.de/wcf/images/autoit_logo.gif]