Français
Source/ Codesnippets

@Jonathans 3D-Screensaver dans OGL

 

p.specht

un äusserst erhaltenswertes Beispiel pour qui OGL-Fähigkeiten de XProfan. je hoffe, Jonathan ist cet weitere Veröffentlichung droite. s'il te plaît ev. um nachträgliches OK! LG p.specht
'/// RamschWare(tm) by Jonathan ///
Var DotzAnzahl& = 20
Déclarer Doetze#[DotzAnzahl&], Temp&
Class Dotz = X!, Y!, Z!, VX!, VY!, VZ!, R!, G!, B!, Seg&, Form&, RotoX!, VRotoX!, RotoY!, VRotoY!
Faible Doetze#[], Dotz
Fenêtre Style 16+64+256
Fenêtre %maxx, %maxy
Randomiser
'Doetze erstellen

WhileLoop 0, DotzAnzahl& - 1

    With Doetze#[&loop]

        .R! = @Tour()
        .G! = @Tour()
        .B! = @Tour()
        Temp& = @Tour(3)

        Si Temp& = 0

            .R! = 1

        ElseIf Temp& = 1

            .G! = 1

        ElseIf Temp& = 2

            .B! = 1

        EndIf

        .Seg& = @Tour(5) + 3
        .VX! = (@Tour() - .5) / 4
        .VY! = (@Tour() - .5) / 4
        .VZ! = (@Tour() - .5) / 4
        .Form& = @Tour(5)
        .VRotoX! = @Tour() * 10 - 5
        .VRotoY! = @Tour() * 10 - 5

    EndWith

Endwhile

Ogl("Init", %hwnd, 0, 0, 0, 1)
Ogl("PosMode", 1)

Proc ZeichneDoetze

    Paramètres Doetze#[], DA&
    Ogl("Clear")

    WhileLoop 0, DA& - 1

        With Doetze#[&loop]

            Ogl("Origin", .X!, .Y!, .Z! - 8)
            Ogl("Color", .R!, .G!, .B!, 1)
            Ogl("Rotate", .RotoX!, .RotoY!, 0)

            Si .Form& = 0

                Ogl("Sphere", .5, .Seg&, .Seg&)

            ElseIf .Form& = 1

                Ogl("Cuboid", .5, .5, .5)

            ElseIf .Form& = 2

                Ogl("Triangle", .5, .5, .5)

            ElseIf .Form& = 3

                Ogl("Tube", .5, .5, .5, .Seg&)

            ElseIf .Form& = 4

                Ogl("Disk", .5 / 2, .5, .Seg&)

            EndIf

        EndWith

    Endwhile

    Ogl("Show")

ENDPROC

ZeichneDoetze Doetze#[], DotzAnzahl&
SetTimer 30

WhileNot @Iskey(27)

    WhileLoop 0, DotzAnzahl& - 1

        With Doetze#[&loop]

            .X! = .X! + .VX!
            .Y! = .Y! + .VY!
            .Z! = .Z! + .VZ!
            .RotoX! = .RotoX! + .VRotoX!

            Si .RotoX! < 360

                .RotoX! = .RotoX! + 360

            EndIf

            Si .RotoX! > 360

                .RotoX! = .RotoX! - 360

            EndIf

            .RotoY! = .RotoY! + .VRotoY!

            Si .RotoY! < 360

                .RotoY! = .RotoY! + 360

            EndIf

            Si .RotoY! > 360

                .RotoY! = .RotoY! - 360

            EndIf

            Si non @Between(.X!, -8, 8)

                .VX! = -.VX!

            EndIf

            Si non @Between(.Y!, -8, 8)

                .VY! = -.VY!

            EndIf

            Si non @Between(.Z!, -8, 8)

                .VZ! = -.VZ!

            EndIf

        EndWith

    Endwhile

    ZeichneDoetze Doetze#[], DotzAnzahl&
    WaitInput

Endwhile

KillTimer
Ogl("Done")
Dispose Doetze#[]
 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
09.05.2021  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

498 Views

Untitledvor 0 min.
H.Brill29.10.2023
Tango06.08.2021
Ernst21.07.2021
Sven Bader11.07.2021
plus...

Themeninformationen

cet Thema hat 1 participant:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie