Add old projects
|
@ -1,6 +1,5 @@
|
|||
---
|
||||
title: "Blog"
|
||||
layout: "list"
|
||||
---
|
||||
|
||||
A blog??
|
12
content/software/astra.md
Normal file
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
title: "Astra"
|
||||
date: 2021-12-01T22:29:22-05:00
|
||||
draft: false
|
||||
tags:
|
||||
- FFXIV
|
||||
layout: "redirect"
|
||||
new-url: "https://xiv.zone/astra"
|
||||
featured: yes
|
||||
---
|
||||
|
||||
Cross-platform FFXIV launcher, designed for Wine users.
|
BIN
content/software/chip8/img/output.png
Normal file
After Width: | Height: | Size: 30 KiB |
24
content/software/chip8/index.md
Normal file
|
@ -0,0 +1,24 @@
|
|||
---
|
||||
title: "chip8"
|
||||
date: 2020-01-25T22:29:22-05:00
|
||||
draft: false
|
||||
source: "https://git.sr.ht/~redstrate/chip8"
|
||||
license: MIT
|
||||
tags:
|
||||
- C++
|
||||
- Emulation
|
||||
resources:
|
||||
- src: img/output.png
|
||||
name: Screenshot
|
||||
---
|
||||
|
||||
Basic Chip-8 emulator.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
This is my first ever (working) emulator, of the simple CHIP-8 system. I'm pretty proud of this, because apart from the sprite collision logic I was able to implement most of the opcodes just looking at a basic overview of the instruction set.
|
||||
|
||||
Technically, this implements the SCHIP type of instructions but can still play many of the ROMs you can find online. I also added a cute debugger window and a memory viewer. The emulator also comes with a built-in deflicker for the display.
|
||||
|
||||
For funsies, I included a basic parser that can spit out valid CHIP-8 instructions for a C-style language!
|
24
content/software/gallery/index.md
Normal file
|
@ -0,0 +1,24 @@
|
|||
---
|
||||
title: "Gallery"
|
||||
date: 2020-01-25T22:29:22-05:00
|
||||
draft: false
|
||||
source: "https://git.sr.ht/~redstrate/gallery"
|
||||
license: MIT
|
||||
tags:
|
||||
- Swift
|
||||
- UIKit
|
||||
- iOS
|
||||
- macOS
|
||||
resources:
|
||||
- src: img/mobilefort.png
|
||||
name: Screenshot
|
||||
---
|
||||
|
||||
Local booru for macOS and iOS devices.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
I had always wanted to build a local booru application, especially for Apple devices. This was also an experiment in Mac Catalyst, which released the same year.
|
||||
|
||||
This utilizes UIKit for it's GUI, and uses Apple's own Core Data framework to actually build relationships between tags, images, etc. To run on macOS, it uses Mac Catalyst. The actual functionality of this is incredibly basic, but it does work!
|
28
content/software/graph.md
Normal file
|
@ -0,0 +1,28 @@
|
|||
---
|
||||
title: "Graph"
|
||||
date: 2018-08-11T22:29:22-05:00
|
||||
draft: false
|
||||
source: "https://git.sr.ht/~redstrate/graph"
|
||||
license: MIT
|
||||
tags:
|
||||
- 3D
|
||||
- C++
|
||||
- Vulkan
|
||||
- Qt
|
||||
---
|
||||
|
||||
Game engine utilizing Vulkan and Qt.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
Following up [XT]({{<ref XT>}}), this was my first adventure into Vulkan - which was a relatively new API at the time. This is an extremely old project, but this is where the majority of my Vulkan knowledge was born from. Unlike some of my older projects I've recovered recently, this one actually has **all** of my commit history intact!
|
||||
|
||||
This features things such as:
|
||||
* Working depth of field pass utilizing near and far fields.
|
||||
* This was started back when the engine was originally conceived but I actually finished this feature recently :-)
|
||||
* Custom Qt interfaces for all of the tooling, compared to the dear imgui interfaces of Prism and XT.
|
||||
* Antialiasing utilizing SMAA.
|
||||
* Audio playback using OpenAL Soft.
|
||||
|
||||
This was eventually replaced by [Prism]({{< ref prism >}}) in 2020 and onward
|
11
content/software/libxiv.md
Normal file
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
title: "libxiv"
|
||||
date: 2022-01-05T22:29:22-05:00
|
||||
draft: false
|
||||
tags:
|
||||
- FFXIV
|
||||
layout: "redirect"
|
||||
new-url: "https://xiv.zone/libxiv"
|
||||
---
|
||||
|
||||
Custom FFXIV modding and data-mining library.
|
11
content/software/novus.md
Normal file
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
title: "Novus"
|
||||
date: 2022-01-05T22:29:22-05:00
|
||||
draft: false
|
||||
tags:
|
||||
- FFXIV
|
||||
layout: "redirect"
|
||||
new-url: "https://xiv.zone/novus"
|
||||
---
|
||||
|
||||
Collection of FFXIV modding and data-mining tools.
|
BIN
content/software/prism/img/buddha.png
Normal file
After Width: | Height: | Size: 61 KiB |
BIN
content/software/prism/img/custom models.png
Normal file
After Width: | Height: | Size: 170 KiB |
BIN
content/software/prism/img/pcss.png
Normal file
After Width: | Height: | Size: 463 KiB |
BIN
content/software/prism/img/sponza.png
Normal file
After Width: | Height: | Size: 492 KiB |
39
content/software/prism/index.md
Normal file
|
@ -0,0 +1,39 @@
|
|||
---
|
||||
title: "Prism"
|
||||
date: 2020-08-11T22:29:22-05:00
|
||||
draft: false
|
||||
source: "https://git.sr.ht/~redstrate/prism"
|
||||
license: MIT
|
||||
tags:
|
||||
- Prism
|
||||
- 3D
|
||||
- C++
|
||||
- Vulkan
|
||||
- Metal
|
||||
resources:
|
||||
- src: img/buddha.png
|
||||
name: Buddha Statue
|
||||
- src: img/custom models.png
|
||||
name: Custom Models with Sphere
|
||||
- src: img/pcss.png
|
||||
name: PCSS in action
|
||||
- src: img/sponza.png
|
||||
name: Sponza example scene
|
||||
featured: yes
|
||||
---
|
||||
|
||||
Cross-platform game engine specializing in the real-time rendering of physically-based graphics.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
{{< resource page="projects/prism" name="PCSS in action" >}}
|
||||
|
||||
This engine is the summation of all of my graphics developer knowledge. The list of features is not limited to:
|
||||
|
||||
* Physically based rendering and image based lighting based on scene probes or from a dynamic sky.
|
||||
* Skeleton and also a basic cutscene system.
|
||||
* Custom editors to edit the most common assets, such as materials and maps.
|
||||
* Beautiful shadows using a runtime configurable option of PCSS, PCF or just plainly sampled.
|
||||
* Scalability options including turning off all image based lighting or toning down point light shadowing which can run on lower end devices such as a phone.
|
||||
* Advanced render interface layer that can run on top of Vulkan, Metal and eventually DirectX.
|
19
content/software/protean.md
Normal file
|
@ -0,0 +1,19 @@
|
|||
---
|
||||
title: "Protean"
|
||||
date: 2021-08-25T10:29:22-05:00
|
||||
source: "https://git.sr.ht/~redstrate/protean"
|
||||
license: MIT
|
||||
tags:
|
||||
- Go
|
||||
- Mastodon
|
||||
- Twitter
|
||||
draft: false
|
||||
---
|
||||
|
||||
Mastodon to Twitter cross-poster designed for mirroring my art account.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
This is one of my first Go and Twitter projects, and i'm actually using it
|
||||
for [@redstrate](https://www.twitter.com/redstrate)!
|
BIN
content/software/raytracer/img/output.png
Normal file
After Width: | Height: | Size: 36 KiB |
26
content/software/raytracer/index.md
Normal file
|
@ -0,0 +1,26 @@
|
|||
---
|
||||
title: "Raytracer"
|
||||
date: 2020-02-17T22:29:22-05:00
|
||||
draft: false
|
||||
source: "https://git.sr.ht/~redstrate/raytracer"
|
||||
license: MIT
|
||||
tags:
|
||||
- C++
|
||||
- 3D
|
||||
resources:
|
||||
- src: img/output.png
|
||||
name: Screenshot
|
||||
---
|
||||
|
||||
CPU raytracer.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
This is a CPU-based raytracer, and also my first! This features things such as:
|
||||
|
||||
* Naive multi-threading support based on tiles and utilizing C++ futures.
|
||||
* Ability to load arbitrary OBJs and render them.
|
||||
* Indirect light sampling.
|
||||
* Shadows!!
|
||||
* dear imgui interface for easily viewing the results.
|
22
content/software/realm-of-chaos.md
Normal file
|
@ -0,0 +1,22 @@
|
|||
---
|
||||
title: "Realm of Chaos"
|
||||
date: 2020-02-19T22:29:22-05:00
|
||||
draft: false
|
||||
source: "https://git.sr.ht/~redstrate/realm-of-chaos"
|
||||
license: GPLv3
|
||||
license-url: "https://git.sr.ht/~redstrate/realm-of-chaos/tree/master/item/LICENSE"
|
||||
tags:
|
||||
- C++
|
||||
- Game
|
||||
---
|
||||
|
||||
Rogue-like game with a couple of interesting features.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
This is my attempt at building a rogue-like game for the first time, but I'm pretty happy with it's feature set. The whole thing is still full of programmer art.
|
||||
|
||||
For example, it features **multiplayer** that is actually turn-based but does function! There's also a dynamic lighting system that can be interacted with in-game by picking up or throwing a torch - for example.
|
||||
|
||||
The combat is also based on hacking off parts of your victim, but you could also try to influence them by talking and interacting with them. The AI is advanced enough to also chase after you, utilizing A* pathfinding.
|
13
content/software/silica-viewer.md
Normal file
|
@ -0,0 +1,13 @@
|
|||
---
|
||||
title: "Silica Viewer"
|
||||
date: 2021-09-10T22:29:22-05:00
|
||||
draft: false
|
||||
tags:
|
||||
- Swift
|
||||
- Procreate
|
||||
layout: "redirect"
|
||||
new-url: "/silica-viewer"
|
||||
featured: yes
|
||||
---
|
||||
|
||||
macOS app to view Procreate© Silica documents.
|
BIN
content/software/trinity/img/screenshot.png
Normal file
After Width: | Height: | Size: 201 KiB |
24
content/software/trinity/index.md
Normal file
|
@ -0,0 +1,24 @@
|
|||
---
|
||||
title: "Trinity"
|
||||
date: 2018-03-18T12:00:00-05:00
|
||||
draft: false
|
||||
source: "https://git.sr.ht/~redstrate/trinity"
|
||||
license: GPLv3
|
||||
tags:
|
||||
- C++
|
||||
- Qt
|
||||
resources:
|
||||
- src: img/screenshot.png
|
||||
name: Screenshot
|
||||
---
|
||||
|
||||
Discord-like Matrix client using QML and Qt.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
I was super interested in Matrix back in 2018, and thus
|
||||
was determined to create a client similar to Discord that
|
||||
could help users who were looking for a similar experience. Trinity was born, and I learned a ton about the Matrix specification and Qt/QML development from this project.
|
||||
|
||||
Unfortunately I could only recover an older version of the source code, but it's still completely functional today. However, The commit history is wiped clean. It used to feature some stuff that didn't exist in some of the most popular Matrix clients back then, such as audio/video calling (using WebRTC) and custom emotes.
|
28
content/software/watersymbol/index.md
Normal file
|
@ -0,0 +1,28 @@
|
|||
---
|
||||
title: "Water Symbol"
|
||||
date: 2022-05-01T12:00:00-05:00
|
||||
draft: false
|
||||
source: "https://git.sr.ht/~redstrate/watersymbol"
|
||||
license: GPLv3
|
||||
license-url: https://git.sr.ht/~redstrate/watersymbol/tree/main/item/LICENSE
|
||||
tags:
|
||||
- Java
|
||||
- Game
|
||||
resources:
|
||||
- src: img/screenshot.png
|
||||
name: Screenshot
|
||||
---
|
||||
|
||||
Fire Emblem clone for a course final project.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
A Fire Emblem clone using libGDX and Java. This is for a course final project, and it features stuff like:
|
||||
|
||||
* Proper A* navigation for enemies, and is also player unit pathing.
|
||||
* All the assets are wholly created by me, except for the default Arial font included in libGDX.
|
||||
* Working gameplay loop, allowing you to kill or be killed by the enemy units on a test map.
|
||||
* Maps can be created in Tiled, allowing for easy authoring.
|
||||
|
||||

|
BIN
content/software/watersymbol/screenshot.png
Normal file
After Width: | Height: | Size: 122 KiB |
BIN
content/software/xt/img/IMG_0160 copy.png
Normal file
After Width: | Height: | Size: 660 KiB |
27
content/software/xt/index.md
Normal file
|
@ -0,0 +1,27 @@
|
|||
---
|
||||
title: "XT"
|
||||
date: 2016-01-25T22:29:22-05:00
|
||||
draft: false
|
||||
tags:
|
||||
- OpenGL
|
||||
- C++
|
||||
- 3D
|
||||
resources:
|
||||
- src: img/IMG_0160 copy.png
|
||||
name: Screenshot
|
||||
---
|
||||
|
||||
My first OpenGL based game engine.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
This was one of my first custom game engines, and my first foray into using OpenGL for a serious project. Unfortunately, I have lost all of the source code, but the image below is what I was able to save from a dear imgui screenshot thread.
|
||||
|
||||
From what I remember, it had the following features:
|
||||
* Custom editor using dear imgui
|
||||
* the tabbing library was based off of XYZ's engine since the docking branch did not exist at the time.
|
||||
* The editor also had auto-generated previews as shown for models, textures, and materials.
|
||||
* Skybox support using cubemapping, this was also used for lighting my "PBR shader" (hint: as you can tell in the screenshot, I didn't know how to gamma correct anything in 2016.)
|
||||
|
||||
This is succeeded by my first Vulkan game engine, [Graph]({{< ref graph >}}).
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
<table class="w-full table-auto mt-4">
|
||||
<tr>
|
||||
{{ if in .File.Dir "projects" }}
|
||||
{{ if in .File.Dir "software" }}
|
||||
<th>Name</th>
|
||||
<th>Description</th>
|
||||
<th>Year Created</th>
|
||||
|
@ -24,7 +24,7 @@
|
|||
</td>
|
||||
|
||||
<td class="border-t">
|
||||
{{ if in .File.Dir "projects" }}
|
||||
{{ if in .File.Dir "software" }}
|
||||
<time datetime='{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}'></time>{{ .Date.Format " 2006"}}</time>
|
||||
{{ else }}
|
||||
<time datetime='{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}'>{{ .Date.Format "Jan 2, 2006"}}</time>
|
||||
|
|