English Text
3D for PiStorm!
Up to now 3D Games on PiStorm equipped Amiga Computers were limited to pure software rendering despite a Pi4/CM4 having a good 3D Chip (Videocore VI).
The goal of this project is to change this. The developer Dennis Boon offered to create, for a certain payment, a Warp3D.library for PiStorm systems equipped with Pi4 and Pi CM4.
Many games (for example Heretic 2, Quake 2 and Quake 1) already include a Renderer using MiniGL. MiniGL supports 3D Hardware Acceleration.
So all that was missing was a 3D library to support the Videocore VI Chip.
3D Hardware Acceleration will give you a higher resolution, faster fps and more stunning looking visuals for 3D Gaming on PiStorm-equipped Amiga systems.
Additionally it will offer making ports of games possible which would require 3D Hardware acceleration (or would be too slow in pure software rendering on a PIStorm equipped Amiga).
What We Need & What You Get
The funding will be exclusively used to pay the developer, Dennis Boon. If the project overfunds the extra funds will also go to the developer.
What will be the result of this project is:
- A 3D library for PiStorm 4 (and CM4). This will be not an "official Warp3D Driver", but a reimplementation of the API (or a new API) similar to the proof-of-concept done by Paraj (Paraj is one of the advisors of the project, the full source-code of his proof-of-concept is available to Dennis though note Dennis' Driver will be to a different 3D Chip - the proof of concept was for Pi3, now we go for Pi4).
- The 3D library will be released under MIT Licence into OpenSource. A public GitHub Page will be set up for this.
- If the current situation (certain people trying to prevent this project from happening) cannot be resolved a new API will be created, a MiniGL version which uses the new API, and several games will be adapted to support this new MiniGL version. We still hope the situation can be resolved in a way which is easier to handle though. Among the games who would be adapted in such a case are Heretic 2 and Quake 2 and all future Amiga 3D games by me. Other authors promised support as well.
- Anyone who pledged at least 50 EUR will get Beta Versions (as soon as the project is far enough to be called Beta Version) in Binary form, anyone else will get the final version in Binary form. At finalization of the project the full source code will be publicly available
The Impact
A 3D library for PiStorm will make a big difference to 3D Gaming on PiStorm-equipped Amiga's. It will show the real power of these systems.
Risks & Challenges
It is a lot of work. With Dennis Boon we have a developer though who is very experienced with Amiga Lowlevel Hardware development.
Something like this (asides from a proof-of-concept) has not yet been done for PiStorm. But it will be done now. Dennis also will have the possibility to get hints and tips about PiStorm from Paraj (the author of the proof-of-concept of the Pi3 Warp3D.library) and from Claude Schwarz and Michal Schulz.
Another Challenge to the project is that the Documentation on the Videocore VI Chip is limited. We have though investigated already a lot, and found a lot of reverse engineered information as well as the source-code of several libraries (on Linux) doing 3D Display on the Videocore VI on Pi4. We also got contacts to people in the Linux community who wrote Rendering software for the Videocore VI and who offered to give advice.
Because of this we are pretty confident that Dennis will be able with the available information to implement the 3D library for PiStorm 4.
In case this project does not work out all people doing pledges will of course fully get a back-payment of their pledge. But we think the case of the project failing for technical reasons is very unlikely.
Other Ways You Can Help
If you have any technical information or source-code related to the Videocore VI -> contact me at tirionareonwe@gmail.com.
Deutsche Beschreibung
3D für PiStorm!
Bis jetzt waren 3D-Spiele auf Amiga-Computern mit PiStorm auf reine Software-Rendering-Lösungen beschränkt, obwohl ein Pi4/CM4 über einen leistungsstarken 3D-Chip (Videocore VI) verfügt.
Das Ziel dieses Projekts ist es, dies zu ändern. Der Entwickler Dennis Boon hat angeboten, gegen eine entsprechende Bezahlung eine 3D library für PiStorm-Systeme mit Pi4 und Pi CM4 zu erstellen.
Viele Spiele (z. B. Heretic 2, Quake 2 und Quake 1) verfügen bereits über einen Renderer, der MiniGL nutzt. MiniGL unterstützt 3D Hardware.
Was bisher gefehlt hat, war eine 3D library, die den Videocore VI-Chip unterstützt.
Mit 3D-Hardware-Beschleunigung erhalten Sie höhere Auflösungen, schnellere FPS und beeindruckendere visuelle Darstellungen für 3D-Gaming auf PiStorm-ausgestatteten Amiga-Systemen.
Zusätzlich ermöglicht es Portierungen von Spielen, die 3D-Hardware-Beschleunigung erfordern, oder Spielen, die in reinem Software-Rendering auf einem PiStorm-Amiga zu langsam wären.
Was wir benötigen & was Sie erhalten
Die Finanzierung wird exklusiv verwendet, um den Entwickler Dennis Boon zu bezahlen. Falls mehr Funding reinkommt als angegeben, wird auch das zusätzliche Geld an den Entwickler ausbezahlt werden.
Das Ergebnis dieses Projekts wird sein:
Eine 3D library für PiStorm 4 (und CM4). Dies wird kein „offizieller Warp3D-Treiber“ sein, sondern eine Reimplementierung der API (oder eine neue API), ähnlich dem Proof-of-Concept von Paraj. (Paraj ist einer der Berater des Projekts. Der vollständige Quellcode seines Proof-of-Concepts ist Dennis verfügbar. Beachten Sie jedoch, dass Dennis' 3D library für einen anderen 3D-Chip erstellt wird – der Proof-of-Concept war für den Pi3, jetzt zielen wir auf den Pi4 ab.)
Sollte die Situation einen Wechsel auf eine komplett neue API erforderlich machen (es gibt Personen, die versuchen das Projekt zu verhindern) dann wird eine angepasste MiniGL Library erstellt werden (als Teil des Projekts), die die neue API verwendet. In diesem Fall würde ich auch meine 3D Spiele (Heretic2 und Quake 2) mit der neuen MiniGL-Version neu linken, so dass diese unterstützt werden. Andere Autoren wären auch - selbst in diesem Fall - an einer Unterstützung interessiert und haben mich bereits kontaktiert.
Die 3D library wird unter der MIT-Lizenz als Open Source veröffentlicht. Eine öffentliche GitHub-Seite wird dafür eingerichtet.
Jeder, der mindestens 50 EUR beisteuert, erhält Beta-Versionen (sobald das Projekt so weit fortgeschritten ist, dass es eine Beta-Version genannt werden kann) in binärer Form. Alle anderen erhalten die finale Version in binärer Form. Nach Abschluss des Projekts wird der vollständige Quellcode öffentlich verfügbar gemacht.
Die Auswirkungen
Eine 3D library für PiStorm wird einen großen Unterschied für 3D-Gaming auf PiStorm-ausgestatteten Amigas machen. Es wird die wirkliche Leistung dieser Systeme zeigen.
Risiken & Herausforderungen
Es ist eine Menge Arbeit. Mit Dennis Boon haben wir jedoch einen Entwickler, der sehr erfahren in der Low-Level-Hardware-Entwicklung für Amiga ist.
Etwas Vergleichbares (abgesehen von einem Proof-of-Concept) wurde für PiStorm bisher noch nicht umgesetzt. Jetzt wird es aber realisiert. Dennis hat außerdem die Möglichkeit, Hinweise und Tipps über PiStorm von Paraj (dem Autor des Proof-of-Concepts des Pi3-Treibers) und Claude Schwarz und Michal Schulz zu erhalten. Außerdem haben wir Kontakte in der Linux-Community zu Entwicklern, die sich bereits mit der Thematik beschäftigt haben, und angeboten haben, Tips und Rat zu geben, sollten wir diese benötigen.
Eine weitere Herausforderung des Projekts ist die begrenzte Dokumentation des Videocore VI-Chips. Wir haben jedoch bereits viele Informationen recherchiert, darunter Reverse-Engineering-Ergebnisse und den Quellcode mehrerer Bibliotheken (unter Linux), die 3D-Displays auf dem Videocore VI des Pi4 ermöglichen.
Daher sind wir zuversichtlich, dass Dennis mit den verfügbaren Informationen in der Lage sein wird, den Treiber zu implementieren.
Falls dieses Projekt wider Erwarten nicht umgesetzt werden kann, werden alle Unterstützer selbstverständlich ihr Geld vollständig zurückerstattet bekommen. Wir halten es jedoch für sehr unwahrscheinlich, dass das Projekt aus technischen Gründen scheitert.
Andere Möglichkeiten, wie Sie helfen können
Falls Sie technische Informationen oder Quellcodes in Bezug auf den Videocore VI haben, kontaktieren Sie mich bitte unter tirionareonwe@gmail.com.