Nathan Reed

Blog Stuff I’ve Made Talks About Me
All Posts

git-partial-submodule

September 4, 2021 · Comments

View on GitHub

Have you ever thought about adding a submodule to your git project, but you didn’t want to bear the burden of downloading and storing the submodule’s entire history, or you only need a handful of files out of the submodule?

Git provides partial clone and sparse checkout features that can make this happen for top-level repositories, but so far they aren’t available for submodules. That’s a hole I aimed to fill with this project. git-partial-submodule is a tool for setting up submodules with blobless clones. It can also save sparse-checkout patterns in your .gitmodules file, allowing them to be managed by version control, and automatically applied when the submodules are cloned.

Read more


little-py-site

October 12, 2016 · Comments

View on GitHub

Welcome back, readers! You may have noticed that the site looks a bit different now. Over the last few weeks I’ve redesigned the theme, making it more modern and mobile-friendly, and also converted it from Wordpress to a static site generator, which should make it faster in general as well as hopefully more resilient to the occasional slashdotting. 😅

I ended up building my own little static site generator in Python, and I’ve put it up on GitHub in case it’s helpful as a starting point for anyone else’s efforts.

Read more


Star Trek: TNG Theme Reorchestration

August 15, 2016 · Comments

Screenshot of score for TNG theme

Download (2.5 MB)

In June 2016, game developer Sophie Houlden held a month-long game jam inspired by Star Trek. Although my initial plan was to actually make a game, after one thing and another I ended up radically de-scoping and I decided instead to re-arrange the Next Generation theme music, as an exercise in orchestral writing. Working from a piano score and my nostalgia for the original, I turned out this take on the classic.

The show’s original version (one of them—there are a few slightly different variants used in different seasons) can be found on YouTube here.


EEVEE.WAD Doom Map

February 18, 2016 · Comments

Screenshot of EEVEE.WAD

Download (12 MB)

Like many people, my first foray into game development was modding. In the early 2000s I spent a lot of time making maps for Doom, and later Half-Life. But I hadn’t touched it for about ten years, until this winter, when Eevee posted a series of blog articles on Doom mapping, and I was inspired to take up the editor again. This map was the result.

I spent about a month on this (my initial plan turned out to take a lot longer to execute than I thought—big surprise), and I’m pretty happy with the result. It was neat to come back to Doom after this time and see how my perspective had changed. The tools available today are a lot better than what I remember, and I’m way smarter about level design than I was ten years ago. Still, by the end of making this, I was starting to get frustrated with Doom’s limitations, and I’m definitely all mapped out for awhile.

I’ve packaged up the map with a copy of the ZDoom engine and the Freedoom asset pack (since the original Doom textures, sprites, sounds, etc. are all under copyright and can’t be redistributed). If you have a copy of Doom 2, drop your doom2.wad file in the directory and use that; otherwise, you can play it with the Freedoom assets.


reed-framework

April 14, 2014 · Comments

View on GitHub

A basic D3D11 graphics framework that I use for personal projects. Probably not too interesting to anyone else, but includes such things as:

  • D3D11 device and window initialization
  • Helper classes and functions for basic D3D11 tasks
  • A half-baked asset pipeline with OBJ mesh processing, texture mip generation, and incremental recompilation when source files are changed
  • A ¼-baked camera/input system
  • Basic GPU profiling support using timestamp queries
  • Oculus Rift and SteamVR support

reed-util

December 1, 2013 · Comments

View on GitHub

A utility library that I use for personal projects. The main thing here is a pretty full-featured vector math library, designed on the principles of my article On Vector Math Libraries. There’s also a logging system, asserts/errors/warnings, lightweight random number generation, and some other assorted junk.

All Posts

Subscribe

  • Follow in Feedly Feedly
  • RSS RSS

Recent Posts

  • Reading Veach’s Thesis, Part 2
  • Reading Veach’s Thesis
  • Texture Gathers and Coordinate Precision
  • git-partial-submodule
  • Slope Space in BRDF Theory
  • Hash Functions for GPU Rendering
  • All Posts

Categories

  • Graphics(32)
  • Coding(23)
  • Math(21)
  • GPU(15)
  • Physics(6)
  • Eye Candy(4)
© 2007–2023 by Nathan Reed. Licensed CC-BY-4.0.