Christian Schladetsch's repositories
AsmTracer
A simple raytracer written in 64-bit assembly (NASM) for Linux, rendering spheres with basic shading into a BMP image.
Cpp23VerletNBody
C++23 Verlet Integration using N bodies.
AsmChaosSim
An interactive ASCII animation of the logistic map's chaotic behavior.
Cpp23LockFreeQueue
A high-performance, lock-free queue implementation in C++23 with a multi-threaded producer-consumer test harness. Features colorful output and easy build/run scripts.
AdaCalculator
A forth calculator written in Ada.
Cpp23JsonParser
A fast and efficient C++23 JSON parser implementation with comprehensive test suite and easy-to-use API
Cpp23AsciiRayTracer
A simple ray tracer implemented in C++23 that renders 3D scenes as ASCII art in the console. This project demonstrates modern C++ features, parallel processing with OpenMP, and basic 3D graphics concepts.
Cpp23ConsoleAstar
IDA* Pathfinding Visualizer An efficient implementation of the Iterative Deepening A* (IDA*) algorithm for pathfinding on a 2D grid, featuring ASCII visualization. Written in C++23, this project demonstrates advanced search techniques with a focus on performance and low memory usage.
AsmCalculator
A cacluator written in assembly language. It accepts written text and gives useful output.
Cpp23BasicQt
A very basic Qt app with a text input and button. Written using WSL/Ubuntu.
CppFFT
A C++ application that performs real-time FFT analysis on audio files and visualizes the frequency spectrum.
RustTracer
A simple yet powerful raytracer implemented in Rust. Features include reflection, soft shadows, specular highlights, and customizable scenes. Demonstrates fundamental raytracing techniques with a focus on performance and image quality.
CppTracer
A C++ raytracer with reflections, soft shadows, and a real-time progress spinner. Features multithreaded rendering and customizable 3D scenes.
AsmGame
Assembly code to generate a simple bitmap image using NASM (Netwide Assembler) on a Linux system or WS L (Windows Subsystem for Linux). The main goal is to create a bitmap (`output.bmp`) with basic pixel manipulation in assembly.
RustGame
A simple Rust implementation of a game window using the `ggez` library. It creates a window with a movable w hite square that can be controlled using arrow keys.
PyGame
A simple Python program that creates a basic window using the Pygame library. I added it to GitHub so I could branch from. Maybe you too.
JSoust
A very simple, modern implementation of the classic arcade game Joust, built using JavaScript and the Phaser 3 game framework.
Cpp20-Rust-FileCompare
A C++/Rust tool to efficiently compare large text files. It uses multi-threading to handle large file sizes and marks discrepancies with visual indicators. Includes a Python script for generating large test files with controlled differences.
SortFolderUsage
An optimised C++17 implemtation of 'du -sh | sort -rh' for WSL Ubuntu.
CardChess-Unity3d
A Unity3d game inspired by Chess, MtG and SC2. The playfield is a NxM board. Players take turns casting spells, which can summon a creature to the board, add an item to a creature, or do other special effects. Attacking and movement of the pieces are mostly Chess-based, except that pieces have Health. Full rules are available on the wiki pages.
Cpp-AI-Repl
This project is a C++ code analysis tool that uses the Phi language model to provide insights and answer questions about a C++ repo.
KAI
KAI is a distributed computing model written in modern C++ and is cross-plaftorm. Using custom language translators and an executor, KAI provides full reflection, persistence and cross-process communications without having to modify existing source code. KAI Comes with an automated, generational tricolor garbage collector, and Console- and Window-based interfaces.
WorkFolder
Common shared functionality for managing git repos and general development using a bash shell such as `git-bash`.
Skeleton
Basic system for using Json, Boost and Catch2 with CMake and C++
RpnConversionAndIntegrator
C++20 program that converts mathematical expressions from standard infix notation to Reverse Polish Notation (RPN) and then calculates the definite integral over various ranges.
YoutubeScripts
Bash scripts that use ffmpeg to make recording, encoding videos easier.