Jump to content

February 2017 »

S M T W T F S
   1234
567891011
12131415161718
19202122 23 2425
262728    

Recent Comments

Latest Visitors

Richards Software Ramblings

4: Adsense

Voronoi Diagrams

A little over two years ago, I first saw Amit Patel's article on Polygonal Map Generation , and thought it was incredibly cool. The use of Voronoi regions created a very nice, slightly irregular look, compared to grid-based terrains. At the time, I had just finished up working on my DX11 random terrain code, and it looked like a fun project to try to tack...

Ray Tracing #3: Let's Get Some Actual Rays!

Alright, ready for the third installment of this ray tracing series? This time, we'll get some actual rays, and start tracing them through a scene. Our scene is still going to be empty, but we're starting to get somewhere. Although the book I'm working from is titled Ray Tracing in One Weekend , it's starting to look like my project is going to be more li...

Ray Tracing #2: Abstractions

It's going to take me considerably longer than one weekend to build out a ray tracer... Last time , I laid the groundwork to construct a PPM image and output a simple gradient image, like the one below.
https://richardssoftware.blob.core.windows.net/images/70_vector.png
This time around, I'm going to focus on building some useful abstractions that...

Hello Raytracing

Whew, it's been a while... A few weeks ago, I happened across a new book by Peter Shirley, Ray Tracing in One Weekend . Longer ago than I like to remember, I took a computer graphics course in college, and the bulk of our project work revolved around writing a simple ray tracer in Java. It was one of the few really code-heavy CS courses I took, and I...

Finite State Machines, Part 1

One of my favorite books on AI programming for games is Matt Buckland's Programming Game AI By Example . Many AI programming books lean more towards presenting topics and theories, leaving the dirty work of implementing the techniques and algorithms up to the reader. This book takes a very different tack, with each chapter featuring one or more fully impl...

Setting up Chocolate Wolfenstein 3D in Visual Studio 2013

For the past few weeks, I've been once again noodling on the idea of starting a .NET port of a classic Id FPS. As a kid on my first computer, an off-brand 486 with DOS, I just hit the tail end of the good old days of shareware. And amongst all the floppy disks of kiddy and educational software and sliming Gruzzles couldn't really hold a candle to explorin...

Model Loading Code Updated to AssimpNet 3.3.1

Just a quick update today. I've updated the 3D model loading code to use the latest version of AssimpNet that is on Nuget now. The latest code is updated on GitHub.

The biggest changes appear to be that the AssimpImporter/Exporter classes have been merged into a single AssimpContext class that can do both. Some of the GetXXX methods to retrieve vertex e...

Serving HTML5 Video using Nancy

Not really game related, but something I've been working on lately.

Recently, I have been using OWIN a good deal for developing internal web applications. One of the chief benefits of this is that OWIN offers the ability to host its own HTTP server, which allows me to get out of the business of installing and configuring IIS on windows, which is one of t...

Geodesic Sphere Tessellation

A couple of weeks ago as I was browsing HackerNews, I stumbled onto an article about creating spherical procedural maps by Andy Gainey. Procedural terrain/map generation is always something I find interesting, having grown up slightly obsessed with Civilization and its successors. Various methods of tiling a sphere in order to make a game grid have been...

HLSL Cookbook: Directional Lighting

Moving along with Chapter 1 of the HLSL Development Cookbook , we're on to handling directional lighting. I've covered most of the theory behind directional lighting previously , so this is going to be quite brief.

To recap, in case anyone is unfamiliar with the term, a directional light is a light which illuminates the entire scene equally from a given...