Av3boy / Av3boy/SharpEngine

SPIKE: Multiple renderers vs one renderer and a Renderable class

Offen
#55 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
spike
Vorherrschende Sprache
C#
Sterne
6
Forks
0
Ø Merge
1 Std. 1 Min.
Gemergte PRs (30 T.)
2

Beschreibung

Investigate what should be the best approach in terms of performance, maintanability and use of use for developers.

If all objects can just inherit the Renderable class and tell how a single renderer should manage them that's fine.
We can also create multiple renderes and objects of different type just tell that specific renderer how they are supposed to be rendered.

How do UI elements and "traditional" game objects differ from each other? The shader tells the gpu where and how it should be rendered and the class itself passes the data to the shaders and the gpu.

# No difference how the renderer renders the object

If we are using just a single `Render` function then a single renderer would make sense. However, iterating through all types of objects and calling `Render` on them may not the be the most performant solution with a single renderer.

Maybe we could create a `Renderer` class that handles rendering of objects of different types.

# Differences in the way objects need to be rendered
TBD: This is the part we need to investigate right now. If there are non, investigate the above and see what is the best / most performant / maintainable solution.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Es werden keine Dateien oder Tests genannt. Beginne damit, den bestehenden Renderer, die Render-Methoden, mit Renderable zusammenhängende Typen und Shader-Pfade zu finden, und vergleiche anschließend einen Renderer mit typspezifischen Renderern für UI und herkömmliche Spielobjekte. Als abgeschlossen gilt die Dokumentation einer festgelegten Architektur auf Grundlage von Performance, Wartbarkeit und Benutzerfreundlichkeit für Entwickler.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp
Bereich
computer-graphics, game-dev
Issue-Typ
Refactoring
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.