SBB timeTable

SBB timeTable ist ein Haltestellen-Dashboard mit allen Abfahrten einer beliebigen SBB Haltestelle in der Schweiz. Es handelt sich um ein Demo-Projekt zur Technologie-Erprobung, ist aber voll funktionsfähig. Das Projekt wurde mit Preact in TypeScript erstellt und nutzt Pico.css für das Styling. Die Daten werden mittels SWR direkt von einem API-Endpoint von search.ch geladen, sodass neben dem Hosten des statischen Preact-Builds keine Serverkomponenten involviert sind. Die Illustrationen kommen von unDraw.

Die timeTable kann unter aufgerufen werden timetable.ragersweb.de

Banana Rider - Ein PICO-8 Spiel

"Banana Rider" ist ein kleines PICO-8 Spiel. Ziel des Spieles ist es möglichst viele Münzen einzusammeln und die Felsen zu vermieden. Bei einer Kollision mit einem Felsen verliert man ein Leben. Nach drei Kollisionen oder einer Minute ist das Spiel automatisch zu Ende und es wird die erreichte Punktzahl angezeigt.




Hier geht es zum Spiel: Banana Rider

BlitzBasic Md2-Model-Viewer

Lange ist das letzte Update her, aber es gibt neues zu berichten! In letzter Zeit habe ich mich wieder etwas mit BitzBasic beschäftigt. Ich habe mir vorgenommen „Line Rider“ in BB3D nach zu programmieren. Um diese Projekt umzusetzen habe ich erst ein Tool benötigt indem ich meine Modelle testen konnte. Leider stellt BlitzBasic 3D ja nicht immer alles so dar wie man es erwartet. Aus diesem Grund habe ich kurzentschlossen einen „Md2-Viewer“ programmiert. Momentan kann er nur Modelle im „md2“-Format und Texturen im „PNG“, „BMP“ und „JPG“-Format laden. Das Menü ist mit BlitzBasic Plus umgesetzt der eigentliche Viewer wurde natürlich in BlitzBasic 3D Programmmiert.

Ihr könnt euch das ganze hier herunterladen: Download

Primzahlen mit C++

Hier zwei kleine C++ Konsolenanwendung, mit ihnen ist es möglich Primzahlen testen und berechnen zu lassen. Diese Programme stellen natürlich keine perfekte Lösung dar und eignen sich auch nur für kleine Primzahlen. Da der Bereich in dem in C++ ohne Zuhilfenahme von speziellen Math-Klassen stark begrenzt ist, da der unsigned long int (nur positiv, großer Wertebereich) der größte dem ANSI Standard entsprechende Datentyp ist.

Viele gängige Compiler bieten einen größeren ganz Zahl Typen an: long long oder  __int64 . Diese Typen sind größer als long und, wie der Name __int64 schon sagt: 64 Bit groß. Allerdings ist weder long long  noch  __int64 im C++ Standard enthalten, weswegen man diese Typen mit Vorsicht genießen sollte. Vermutlich wird der nächste C++ Standard den Typen long long einführen (der neueste C Standard kennt long long bereits) - man sollte also auf dieses Pferd setzen.

 Diese Programme arbeiten mit dem unsigned __int64 welcher aber ein Borland spezifischer Datentype ist, also ist der hier gezeigte Quelltext nur mit den Borland C++ Builder compilierbar. Wer den Code mit einem anderen C++ Compiler übersetzen will, muss den unsigned __int64 einfach durch einen unsigned long int ersetzen. Dadurch verringert sich allerdings auch der Zahlenraum in dem die Programme arbeiten.

Quelltext und Programm downloaden

Update: ARCA3D

In letzter Zeit gabe es keine großen Fortschritte bei ARCA3D. Dennoch sind bereits einige neue Features implementiert wie man an den Bildern erkennen kann. So sind nun schon Textuern eingebunden und es ist möglich Maps zu laden, auch wenn diese noch aus BlitzBasic-Datein bestehen. In der nächsten Version sollen bereits alle Level-Daten aus einer XML-Datei importiert werden. Gegner und Objekte können nun auch schon erstellt werden auch wenn sich hier sicherlich noch das ein oder andere ändern wird. 
 

Dennoch ist die Fertigstellung des Projekts noch weit entfernt. Folgende Features werden demnächst umgesetzt:

  • HUD 
  • Schatten aller Objekte auf dem Terrain  
  • Kollisionsabfrage  
  • Waffen 
  • Alternativer BackGround (Weltall) 
  • Loading-Screens  
  • Start Screen  
  • Physik Engine 

ARCA3D

ARCA3D soll ein einfacher Arcade Weltraumshoter werden. Dies sind die ersten Bilder aus der preAlpha Version. Es muss noch eine Menge programmiert werden. Die Steuerung des Fighters und die Kollisionsabfrage sind noch nicht implementiert. Dennoch ist es faszinierend wie einfach sich 3D-Anwendungen oder Spiele miz BlitzBasic 3D programmieren lassen.