Computer mit Software statt mit Hardware schneller machen?

Also meine Idee wäre das man z.B. die Bildausgabe von Spielen und auch von alltäglichen Dingen über Software beschleunigt, und sagen wir mal das man aus 10fps -> 100 fps machen kann. Das wäre auch recht ökologisch da der Energiebedarf nicht steigen würde da der Computer diengleichen Watt verbraucht und nicht höher takten muss. Außerdem kann man sich so die Herstellung von neuen Teilen ersparen, welche gerade bei Aluminium extrem viel Energie verbraucht.

Neuere Computer könnten ebenfalls profitieren und mit eben noch weniger Taktrate das gleiche erreichen. Weniger Auslastung würde auch die Kühlung begünstigen und wieder Energie sparen. Auch die Reduzierung von übertragenen Daten im Netzwerk kann hilfreich sein und so die Latenz verbessern und dazz verhindern das Internetknoten überlastet werden.

Selbstverständlich ist desto weniger Ram auch besser da so mehr Ram für andere Arbeiten frei bleibt um idealfall nichts auf das Speichermedium geschrieben/gelesen werden muss.

Was haltet ihr davon? Habt ihr Umsetzungsideen? Oder vielleicht sogar konkrete Software?

Finde ich nicht so gut 77%
Finde ich von Vorteil 23%
PC, Computer, Computerspiele, Handy, Betriebssystem, Mathematik, Linux, CPU, Grafikkarte, Hardware, Elektronik, programmieren, RAM, Gaming, Update, AMD, Intel, Nvidia, OpenGL, Softwareentwicklung, Treiber, DirectX, x86, Laptop
Opengl Shader Uniform wird im Code nicht erkannt?

Ich versuche gerade OpenGl zu lernen. Und ich habe folgendes Problem, wenn ich mit glGetUniformLocation versuche meine Uniform vom Shader ausfindig zu machen findet er diesen uniform einfach nicht. Habt ihr eine Idee wieso?

Mein Code:

const char* vertexShaderSource = R"(
    #version 460 core


    uniform vec3 transformation;


    in vec3 position;
    out vec4 color;


    void main()
    {
        gl_Position = vec4(position, 1.0);
        color = vec4(1.0, 1.0, 0.0, 1.0);
    }
)";


const char* fragmentShaderSource = R"(
    #version 460 core


    in vec4 color;
    out vec4 outColor;


    void main()
    {
        outColor = color;
    }
)";

int main()
{
    SDL_Init(SDL_INIT_VIDEO);
    Window2D window2D("Debug", 800, 600);
    gladLoadGL();
    glViewport(0, 0, 800, 600);


    //Dreieck vertices


    float vertices[] = {
        -0.5f, -0.5f, 0.0f,
        0.5f, -0.5f, 0.0f,
        0.0f, 0.5f, 0.0f
    };


    //Shader
    //Vertex Shader
    GLuint vertexShader = glCreateShader(GL_VERTEX_SHADER);
    glShaderSource(vertexShader, 1, &vertexShaderSource, NULL);
    glCompileShader(vertexShader);


    //Fragment Shader
    GLuint fragmentShader = glCreateShader(GL_FRAGMENT_SHADER);
    glShaderSource(fragmentShader, 1, &fragmentShaderSource, NULL);


    //Programm
    GLuint program = glCreateProgram();
    glAttachShader(program, vertexShader);
    glAttachShader(program, fragmentShader);
    glLinkProgram(program);


    //Uniform
    GLint uniform = glGetUniformLocation(program, "transformation");
    if (uniform == -1) {
    std::cerr << "Error: Not Found" << std::endl;
    }


    //Shader


    //VBO and VAO
    GLuint VBO, VAO;
    glGenVertexArrays(1, &VAO);
    glGenBuffers(1, &VBO);


    glBindVertexArray(VAO);


    glBindBuffer(GL_ARRAY_BUFFER, VBO);
    glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW);


    glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 3 * sizeof(float), (void*) 0);
    glEnableVertexAttribArray(0);


    glBindBuffer(GL_ARRAY_BUFFER, 0);
    glBindVertexArray(0);


    while(window2D.windowRun() == false)
    {
        glClearColor(0.2f, 0.3f, 0.3f, 1.0f);
        glClear(GL_COLOR_BUFFER_BIT);


        glUseProgram(program);


        glBindVertexArray(VAO);
        glDrawArrays(GL_TRIANGLES, 0, 3);
    }
    window2D.closeWindow();
    return 0;
}

Sonst funktioniert tatsächlich alles, das Dreieck wird Gelb angezeigt nur der Uniform funktioniert nicht.

CPP, Informatik, OpenGL, Spieleprogrammierung, GLSL
Welche Engine würdet ihr benutzen um 2D Games für Android zu programmieren?

Zur Erklärung: ich habe bis jetzt schon sehr viel für Android mit Java in Android Studio programmiert und bin hier nun an die Grenzen des SurfaceViews gestoßen ..... die Performance. Bei meinem letzten Spiel hatte ich nur noch mit Glück um die 25FPS (mit Glück lief die draw() und update() Methode 25mal pro Sekunde durch ... meistens deutlich weniger) und das ist einfach zu wenig. Jetzt meine Frage, wie würdet ihr mir Empfehlen jetzt weiter zu machen ? Soll ich weiter für Android programmieren, aber diesmal mit einer Engine ? Ich habe in absehbarer Zeit nur vor 2D Spiele zu entwickeln. Es wäre schön, wenn ich bei Java bleiben könnte, da ich jetzt schon seit fast 3 Jahren mit Java programmiere. Und jetzt zur eigentlichen Frage: welche Engine würdet ihr mir empfehlen ?

  • (am wichtigsten) Es sollte viele Tutorials dazu geben (egal ob auf Deutsch oder Englisch)
  • Ich würde gerne bei Java bleiben
  • die Engine sollte kostenlos benutzbar sein und man sollte auch Apps ohne weitere kosten mit dieser Engine veröffentlichen können
  • (optimal) wäre wenn die Engine keine Werbung ins Spiel für sich einbaut
  • (davon hab ich keine Ahnung) Wie sieht es mit Cross-Plattfrom Support aus ?

Bitte antwortet nicht einfach nur mit einem Wort (dem Engine namen )... sondern begründet die Antwort auch in Bezug auf die 5 Punkte.

Computer, App, Technik, programmieren, Java, engine, Android, OpenGL, Technologie, Unity, Spiele und Gaming
Spiel hat von DirectX auf OpenGL gewechselt, warum funktioniert Spiel nicht mehr?

Hallo allerseits,

Ein Spiel (Star Stable Online) hat seit dem neusten Update von DirectX auf OpenGL gewechselt. Nun funktioniert das Spiel bei vielen nicht mehr. Auch bei meiner besten Freundin und einer anderen Freundin nicht mehr...nun haben wir gerätselt wie wir das hinbekommen.

Zum Problem bei der besten Freundin: Sie kann sich grundsätzlich ins Spiel einloggen nur hat sie extreme Laggs und die Gebäude sind alle extrem verunstaltet mit bunten Farben. Auf jeden Fall kann sie nicht spielen, weil die Laggs so extrem sind und alles nur ruckhaft und sehr langsam funktioniert.

Zum Problem bei der anderen Freundin: Sie kann sich gar nicht ins Spiel einloggen, kurz nach dem Einloggen bekommt sie Black Screen und das Fenster schließt sich wieder und sie kommt wieder zurück auf den Desktop. Und seit neustem öffnet sich das Spiel gar nicht mehr und es kommt eine Meldung: "Ihre Grafikkarte unterstützt nicht die Mindestanforderung OpenGL 2.1 - es wird Unterstützung benötigt" -> Auch unten nochmal ein Screenshot im Anhang von dieser Meldung.

Nun hat das Spiel News raus gebracht zu den technischen Fehlern bei vielen Leuten, hier die Seite dazu: https://www.starstable.com/de/article/3066

Das komische ist nur, meine beste Freundin und jemand anders haben den gleichen Laptop, und bei der anderen funktioniert es aber komischerweise.

Ich bitte um dringende Hilfe, es kann nicht sein das sie deswegen sich einen neuen Laptop zu legen müssen...gibt es da noch andere Lösung?

Bild zu Frage
Spiele, Computer, Grafikkarte, Grafik, Laggs, OpenGL, Star Stable, DirectX

Meistgelesene Fragen zum Thema OpenGL