1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. minx

Beiträge von minx

  • Hilf bei Script zum Abfangen von Win+D

    • minx
    • 10. Januar 2014 um 12:29

    Langen AutoIt Code bitte als Spoiler mit Code Highlight posten:

    Quellcode -> -> -> STRG-V

  • Perseus 2.6 - Caffeinated Cat

    • minx
    • 9. Januar 2014 um 23:57

    Der Support / die Refrenz für Perseus 2.6 ist eingestellt. Den Download lasse ich noch so lange wie möglich verfügbar, bevor bald Perseus++ herausgegeben wird.

  • Simples Skript benötigt

    • minx
    • 8. Januar 2014 um 15:06

    Du kannst dafür ebenso die Excel UDF von water (?) nutzen. Ist deutlich zuverlässiger als die Tasten zu "drücken" und wahrscheinlich auch um einiges schneller.

  • GUI wie bei Steam oder Spotify?

    • minx
    • 4. Januar 2014 um 15:30

    AutoIt Steam UI
    AutoIt Steam UI Nr. 2
    Steam UI Nr 3 (bestes imho)

  • Animierte prozedurale Landschaft aus impliziten Gleichungen

    • minx
    • 4. Januar 2014 um 00:05
    Zitat von Andy

    Ich such mir gerade nen Wolf....

    Wir brauchen Mond & Sterne. Mond ist Sonne in weiß + Halo aus einem anderen weißen Kreis, der radial transparenter wird. Sterne müssen auch blinken ^^

    Eine LUT empfiehlt sich zumindest (pre-generiert, nicht hard-gecodet). Damit kann man schon 400*60 Berechnungen sparen, wenn man nur ein sin(x) ersetzt.

  • Animierte prozedurale Landschaft aus impliziten Gleichungen

    • minx
    • 3. Januar 2014 um 23:52

    Macht bei mir keinen Unterschied :?:

    Ich habe übrigens Width und Height ganz bewusst entfernt, da in den Formeln viele konstante Zahlen sind, die von 400 als festen Wert ausgehen.

    Der Deal hier ist wohl eher die Mathematik. ASM empfiehlt sich :D

  • AutoIt hatte ein Virus?

    • minx
    • 3. Januar 2014 um 22:58

    Die AutoIt Versionen sind alle sauber. Die Dateien im Archiv sind alle auch nochmal geprüft.

    Wahrscheinlich lauert ein Scherzvirus auf deiner Platte, der irgendwie AutoIt als Runtime braucht.

  • Animierte prozedurale Landschaft aus impliziten Gleichungen

    • minx
    • 3. Januar 2014 um 22:02

    Skript und Formeln sind nun auf neuestem Stand.

  • Animierte prozedurale Landschaft aus impliziten Gleichungen

    • minx
    • 3. Januar 2014 um 21:39

    //1: Dann lassen wir die fancy Ladebalken gleich weg, sonst siehts sch**** aus ;)
    //2: Sinnvolle Variablen-Namen

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    #include <WinAPI.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("WinTitleMatchMode", 2)
    Global $nFrames = 60
    Global $nFPS = 30
    If $nFrames < $nFPS Then $nFrames = $nFPS
    Global $aBitmaps[$nFrames][4]
    For $i = 0 To $nFrames - 1
    $aBitmaps[$i][2] = _WinAPI_CreateCompatibleDC(0)
    $tBMI = DllStructCreate($tagBITMAPINFO)
    DllStructSetData($tBMI, 1, DllStructGetSize($tBMI) - 4)
    DllStructSetData($tBMI, 2, 400)
    DllStructSetData($tBMI, 3, 400)
    DllStructSetData($tBMI, 4, 1)
    DllStructSetData($tBMI, 5, 32)
    $aDIB = DllCall('gdi32.dll', 'ptr', 'CreateDIBSection', 'hwnd', 0, 'ptr', DllStructGetPtr($tBMI), 'uint', 0, 'ptr*', 0, 'ptr', 0, 'uint', 0)
    $aBitmaps[$i][1] = $aDIB[0]
    $aBitmaps[$i][0] = $aDIB[4]
    _WinAPI_SelectObject($aBitmaps[$i][2], $aBitmaps[$i][1])
    $aBitmaps[$i][3] = DllStructCreate("dword[160000]", $aBitmaps[$i][0])
    Next
    Global $fPi = 4 * ATan(1)
    $hGUI = GUICreate("Animated Landscape")
    $hDC = _WinAPI_GetDC($hGUI)
    GUISetState()
    For $iFrame = 1 To $nFrames
    $SunX = -14 + ((39 / ($nFrames - 1)) * ($iFrame - 1))
    $SunY = -(27 / 380) * $SunX ^ 2 + (297 / 380) * $SunX + (945 / 38)
    $fAmbientLight = ($SunY / 27)
    $iFrameTimer = TimerInit()
    $iSunRedSaturation = Int(0.111 * $iFrame ^ 2 - 6.667 * $iFrame + 100)
    For $fy = 0 To 400
    $y = -15 + $fy * 0.125
    For $fx = 0 To 400
    $x = -20 + $fx * 0.125
    $fDirectionalLight = Int((Abs($SunX - ($x + 6)) / 39) * 60)
    $iColorARGB = RGB(2 * $iSunRedSaturation, 200 - $iSunRedSaturation, 200 - $iSunRedSaturation)
    If $y > Sin($x) And $y > Cos($x) And $y < Tan($x) And $y < Sin($fPi * $x) + 7 And $x < 9 Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 0, 0)
    ElseIf ((Mod(Abs($x) - $fPi / 2, 2 * $fPi) - $fPi) ^ 2 + ($y - 8.5 + $x ^ 2 / 250) ^ 2) < 5 And $x < 8 Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 87 + Int(87 * $fAmbientLight) - $fDirectionalLight, 0)
    ElseIf ((Mod(Abs($x) + $fPi / 2, 2 * $fPi) - $fPi) ^ 2 + ($y - 7.5 + $x ^ 2 / 280) ^ 2) < 5 And $x < 11 Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 41 + Int(41 * $fAmbientLight) - $fDirectionalLight, 0)
    ElseIf $y <= ATan(10 - $x) Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 87 + Int(87 * ($fAmbientLight)) - $fDirectionalLight, 0)
    ElseIf $y < ($iFrame / 75) * Sin($x * 2) ^ 2 + 0.5 And $y < $x - 9 Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 0, 87 + Int(87 * $fAmbientLight) - $fDirectionalLight)
    ElseIf Abs(30 - ($x - $SunX) ^ 2 - ($y - $SunY) ^ 2) = 30 - ($x - $SunX) ^ 2 - ($y - $SunY) ^ 2 Then
    $iColorARGB = RGB(0xFF, 0xFF - 2 * $iSunRedSaturation, 0);0x00FFFF00
    EndIf
    DllStructSetData($aBitmaps[$iFrame - 1][3], 1, $iColorARGB, $fy * 400 + $fx + 1)
    Next
    Next
    WinSetTitle("Animated Landscape", "", "Animated Landscape Frame " & $iFrame & "/" & $nFrames & " (" & Round((TimerDiff($iFrameTimer) / 1000) * ($nFrames - $iFrame)) & "s remaining)")
    _WinAPI_BitBlt($hDC, 0, 0, 400, 400, $aBitmaps[$iFrame - 1][2], 0, 0, $srccopy)
    Next
    AdlibRegister("DrawScene", 1000 / $nFPS)
    $iFrame = 0
    $iAnimator = 1

    [/autoit] [autoit][/autoit] [autoit]

    While GUIGetMsg() <> -3
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func RGB($R, $G, $B)
    If $R <= 0 Then $R = 0
    If $G <= 0 Then $G = 0
    If $B <= 0 Then $B = 0
    Return '0x00' & Hex($R, 2) & Hex($G, 2) & Hex($B, 2)
    EndFunc ;==>RGB

    [/autoit] [autoit][/autoit] [autoit]

    Func DrawScene()
    $iFrame += $iAnimator
    If $iFrame = $nFrames - 1 Or $iFrame = 0 Then $iAnimator *= -1
    _WinAPI_BitBlt($hDC, 0, 0, 400, 400, $aBitmaps[$iFrame][2], 0, 0, $srccopy)
    EndFunc ;==>DrawScene

    [/autoit]
  • Animierte prozedurale Landschaft aus impliziten Gleichungen

    • minx
    • 3. Januar 2014 um 18:03

    Gerendertes Bild hinzugefügt.

    Wer die Frames selbst speichern möchte:

    [autoit]

    $hImage = _GDIPlus_BitmapCreateFromHBITMAP($aBitmaps[$iFrame-1][1])
    _GDIPlus_ImageSaveToFile($hImage, @MyDocumentsDir & "\Landscape_Frame_" & $iFrame-1 & ".bmp")

    [/autoit]
  • Animierte prozedurale Landschaft aus impliziten Gleichungen

    • minx
    • 3. Januar 2014 um 17:18

    Ich habe das nur getan um mit der aktuellen "Stable" kompatibel zu bleiben. Ansonsten würde mir das nie in den Sinn kommen (Es ist übrigens: Width, -Height, .., Bits) ;)

  • Animierte prozedurale Landschaft aus impliziten Gleichungen

    • minx
    • 3. Januar 2014 um 15:16

    Andy hat gestern Quick'n'Dirty das hier in AutoIt umgesetzt.

    Was hab ich noch verbessert:

    • Bitmap Frames statt SetPixel
    • Animiertes Wasser
    • Animierte Sonne
    • Ambientes Licht durch Stand der Sonne
    • Direktionales Licht durch Position der Sonne

    Baumstämme: [Blockierte Grafik: http://r21.img-up.net/trunks665e.gif]

    Helle Baumkronen: [Blockierte Grafik: http://e76.img-up.net/leavded6e.gif]

    Dunkle Baumkronen: [Blockierte Grafik: http://k12.img-up.net/leavh0f27.gif]

    Boden: [Blockierte Grafik: http://g00.img-up.net/ground19fa.gif]

    Wasser: [Blockierte Grafik: http://r14.img-up.net/water239a.gif]

    Kreis der Sonne: [Blockierte Grafik: http://j11.img-up.net/suneb32.gif]

    Bewegung der Sonne auf der Parabel: [Blockierte Grafik: http://h12.img-up.net/sun2eb42.gif]

    Rot-Sättigung der Pixel durch die Sonne (Andy): [Blockierte Grafik: http://i82.img-up.net/srs2dee.gif]

    Berechnung der Farbwerte:
    [Blockierte Grafik: http://g13.img-up.net/trunkrgb1ee0.gif]

    [Blockierte Grafik: http://g36.img-up.net/llrgb3852.gif]

    [Blockierte Grafik: http://i78.img-up.net/dlrgb29a3.gif]

    [Blockierte Grafik: http://d61.img-up.net/eqw908c.gif]

    [Blockierte Grafik: http://u82.img-up.net/ebwre7b3.gif]

    [Blockierte Grafik: http://o83.img-up.net/avbwjbwc73b.gif]

    Das Skripte muss die Szene berechnen, dazu braucht es etwa 5 Minuten.

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    #include <WinAPI.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("WinTitleMatchMode", 2)
    Global $nFrames = 60
    Global $nFPS = 30
    If $nFrames < $nFPS Then $nFrames = $nFPS
    Global $aBitmaps[$nFrames][4]
    For $i = 0 To $nFrames - 1
    $aBitmaps[$i][2] = _WinAPI_CreateCompatibleDC(0)
    $tBMI = DllStructCreate($tagBITMAPINFO)
    DllStructSetData($tBMI, 1, DllStructGetSize($tBMI) - 4)
    DllStructSetData($tBMI, 2, 400)
    DllStructSetData($tBMI, 3, 400)
    DllStructSetData($tBMI, 4, 1)
    DllStructSetData($tBMI, 5, 32)
    $aDIB = DllCall('gdi32.dll', 'ptr', 'CreateDIBSection', 'hwnd', 0, 'ptr', DllStructGetPtr($tBMI), 'uint', 0, 'ptr*', 0, 'ptr', 0, 'uint', 0)
    $aBitmaps[$i][1] = $aDIB[0]
    $aBitmaps[$i][0] = $aDIB[4]
    _WinAPI_SelectObject($aBitmaps[$i][2], $aBitmaps[$i][1])
    $aBitmaps[$i][3] = DllStructCreate("dword[160000]", $aBitmaps[$i][0])
    Next
    Global $fPi = 4 * ATan(1)
    $hGUI = GUICreate("Animated Landscape")
    $hDC = _WinAPI_GetDC($hGUI)
    GUISetState()
    For $iFrame = 1 To $nFrames
    $SunX = -14 + ((39 / ($nFrames - 1)) * ($iFrame - 1))
    $SunY = -(27 / 380) * $SunX ^ 2 + (297 / 380) * $SunX + (945 / 38)
    $fAmbientLight = ($SunY / 27)
    $iFrameTimer = TimerInit()
    $iSunRedSaturation = Int(0.111 * $iFrame ^ 2 - 6.667 * $iFrame + 100)
    For $fy = 0 To 400
    $y = -15 + $fy * 0.125
    For $fx = 0 To 400
    $x = -20 + $fx * 0.125
    $fDirectionalLight = Int((Abs($SunX - ($x + 6)) / 39) * 60)
    $iColorARGB = RGB(2 * $iSunRedSaturation, 200 - $iSunRedSaturation, 200 - $iSunRedSaturation)
    If $y > Sin($x) And $y > Cos($x) And $y < Tan($x) And $y < Sin($fPi * $x) + 7 And $x < 9 Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 0, 0)
    ElseIf ((Mod(Abs($x) - $fPi / 2, 2 * $fPi) - $fPi) ^ 2 + ($y - 8.5 + $x ^ 2 / 250) ^ 2) < 5 And $x < 8 Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 87 + Int(87 * $fAmbientLight) - $fDirectionalLight, 0)
    ElseIf ((Mod(Abs($x) + $fPi / 2, 2 * $fPi) - $fPi) ^ 2 + ($y - 7.5 + $x ^ 2 / 280) ^ 2) < 5 And $x < 11 Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 41 + Int(41 * $fAmbientLight) - $fDirectionalLight, 0)
    ElseIf $y <= ATan(10 - $x) Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 87 + Int(87 * ($fAmbientLight)) - $fDirectionalLight, 0)
    ElseIf $y < ($iFrame / 75) * Sin($x * 2) ^ 2 + 0.5 And $y < $x - 9 Then
    $iColorARGB = RGB(2 * $iSunRedSaturation, 0, 87 + Int(87 * $fAmbientLight) - $fDirectionalLight)
    ElseIf Abs(30 - ($x - $SunX) ^ 2 - ($y - $SunY) ^ 2) = 30 - ($x - $SunX) ^ 2 - ($y - $SunY) ^ 2 Then
    $iColorARGB = RGB(0xFF, 0xFF - 2 * $iSunRedSaturation, 0);0x00FFFF00
    EndIf
    DllStructSetData($aBitmaps[$iFrame - 1][3], 1, $iColorARGB, $fy * 400 + $fx + 1)
    Next
    Next
    WinSetTitle("Animated Landscape", "", "Animated Landscape Frame " & $iFrame & "/" & $nFrames & " (" & Round((TimerDiff($iFrameTimer) / 1000) * ($nFrames - $iFrame)) & "s remaining)")
    _WinAPI_BitBlt($hDC, 0, 0, 400, 400, $aBitmaps[$iFrame - 1][2], 0, 0, $srccopy)
    Next
    AdlibRegister("DrawScene", 1000 / $nFPS)
    $iFrame = 0
    $iAnimator = 1

    [/autoit] [autoit][/autoit] [autoit]

    While GUIGetMsg() <> -3
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func RGB($R, $G, $B)
    If $R <= 0 Then $R = 0
    If $G <= 0 Then $G = 0
    If $B <= 0 Then $B = 0
    Return '0x00' & Hex($R, 2) & Hex($G, 2) & Hex($B, 2)
    EndFunc ;==>RGB

    [/autoit] [autoit][/autoit] [autoit]

    Func DrawScene()
    $iFrame += $iAnimator
    If $iFrame = $nFrames - 1 Or $iFrame = 0 Then $iAnimator *= -1
    _WinAPI_BitBlt($hDC, 0, 0, 400, 400, $aBitmaps[$iFrame][2], 0, 0, $srccopy)
    EndFunc ;==>DrawScene

    [/autoit]
  • Kleinster HD-Kurzfilm

    • minx
    • 3. Januar 2014 um 03:15

    Mich interessiert eher das Halftoning bei dem Sphere-Beispiel. Damit kann man ja 3D darstellen ohne jemals 3D-relevante Berechnungen durchzuführen. Vielleicht eine neue Art von Engine :whistling:

  • System-Bot Fehler

    • minx
    • 2. Januar 2014 um 22:33

    Die Hilfe bleibt erhalten, ist aber noch nicht Bug-Frei und deshalb sollte sie noch nicht benutzt werden. (Sie hat bereits einen Spam Schutz, also nicht rumspielen ;) )

  • Zeichen finden

    • minx
    • 2. Januar 2014 um 17:45

    »In der Zeichentabelle«

  • System-Bot Fehler

    • minx
    • 2. Januar 2014 um 17:27

    Nein, ich entschuldige mich dafür. Mein Client hat gesponnen, während ich geschlafen habe. Sorry für den Spam und sorry an alle, die es genervt hat. Kommt nicht wieder vor (ist jetzt entfernt) ;)

  • Perseus 2.6 - Caffeinated Cat

    • minx
    • 2. Januar 2014 um 00:31

    Das ist mir bei AutoIt noch nie passiert. Es wird immer nur ein Kern ausgelastet (das Skript läuft ja auch nur auf einem Thread -> einem Kern).

  • AutoIt Versions-Archiv und Diskussionsthread (3.3.8.1 bis 3.3.10.2, Stand 30.12.13)

    • minx
    • 30. Dezember 2013 um 20:07

    Alle Links von Betas und neue Stable.

  • Wo setzt ihr AutoIt ein?

    • minx
    • 30. Dezember 2013 um 15:40

    Würde ich eher als Arbeit rechnen: An der Uni zum Massenberechnen und zum Erstellen von Großen Datensaätzen als Input. Sowie zur Steuerung eines kleinen Clusters.

    Und natürlich zum Spaß für alle möglichen Dinge ^^

  • AutoIt Versions-Archiv und Diskussionsthread (3.3.8.1 bis 3.3.10.2, Stand 30.12.13)

    • minx
    • 30. Dezember 2013 um 13:54
    Zitat von Andy

    Ist es jetzt soweit gekommen, dass man die maintenance.build-Nummern mit angeben muss, damit ein Script anstandslos läuft?!


    Zumindest wenn man ein paar Beta Features genießen will, trotzdem aber PlugIns ^^

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™