Español
Fuente/ Codesnippets

@Jonathans 3D-Screensaver en OGL

 

p.specht

Ein äusserst erhaltenswertes Ejemplo para el OGL-Fähigkeiten de XProfan. Yo hoffe, Jonathan es esta weitere Veröffentlichung bastante. Bitte ev. en nachträgliches OK! LG p.specht
'/// RamschWare(tm) by Jonathan ///
Var DotzAnzahl& = 20
Declarar Doetze#[DotzAnzahl&], Temp&
Class Dotz = X!, Y!, Z!, VX!, VY!, VZ!, R!, G!, B!, Seg&, Form&, RotoX!, VRotoX!, RotoY!, VRotoY!
Dim Doetze#[], Dotz
Ventana de Estilo 16+64+256
Ventana %maxx, %maxy
Selección aleatoria
'Doetze redactar

WhileLoop 0, DotzAnzahl& - 1

    With Doetze#[&bucle]

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

        If Temp& = 0

            .R! = 1

        ElseIf Temp& = 1

            .G! = 1

        ElseIf Temp& = 2

            .B! = 1

        EndIf

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

    EndWith

EndWhile

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

Proc ZeichneDoetze

    Parámetros Doetze#[], DA&
    Ogl("Clear")

    WhileLoop 0, DA& - 1

        With Doetze#[&bucle]

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

            If .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

Sinestar encargado @Iskey(27)

    WhileLoop 0, DotzAnzahl& - 1

        With Doetze#[&bucle]

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

            If .RotoX! < 360

                .RotoX! = .RotoX! + 360

            EndIf

            If .RotoX! > 360

                .RotoX! = .RotoX! - 360

            EndIf

            .RotoY! = .RotoY! + .VRotoY!

            If .RotoY! < 360

                .RotoY! = .RotoY! + 360

            EndIf

            If .RotoY! > 360

                .RotoY! = .RotoY! - 360

            EndIf

            Caso negativo @Between(.X!, -8, 8)

                .VX! = -.VX!

            EndIf

            Caso negativo @Between(.Y!, -8, 8)

                .VY! = -.VY!

            EndIf

            Caso negativo @Between(.Z!, -8, 8)

                .VZ! = -.VZ!

            EndIf

        EndWith

    EndWhile

    ZeichneDoetze Doetze#[], DotzAnzahl&
    WaitInput

EndWhile

KillTimer
Ogl("Done")
Disponer 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


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

496 Views

Untitledvor 0 min.
H.Brill29.10.2023
Tango06.08.2021
Ernst21.07.2021
Sven Bader11.07.2021
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie