Author Archives: mikolalysenko

Geometry without geometric algebra

When I was younger I invested a lot of time into studying geometric algebra.  Geometric algebra is a system where you can add, subtract and multiply oriented linear subspaces like lines and hyperplanes (cf. Grassmanian). These things are pretty important if … Continue reading

Posted in Geometry, Mathematics, Rambling | Leave a comment

A level of detail method for blocky voxels

Large voxel terrains may contain millions of polygons.  Rendering such terrains at a uniform scale is both inefficient and can lead to aliasing of distant objects.  As a result, many game engines choose to implement some form of level of … Continue reading

Posted in Geometry, Programming, Voxels | 2 Comments

Voxel lighting

Been a long time since I’ve written anything here.  Lately I’ve been working on a new multiplayer WebGL voxel engine for codemao (an educational platform to teach kids programming via games).  It’s not live yet, but a bunch of neat ideas … Continue reading

Posted in Programming, Voxels | 2 Comments

Collision detection (part 3): Benchmarks

Previously in this series we covered the basics of collision detection and discussed some different approaches to finding intersections in sets of boxes: Collision detection (part 1): Overview Collision detection (part 2): Box intersection Today, we’ll see how well this … Continue reading

Posted in Collision detection, Geometry, Mathematics, Programming | 10 Comments

Collision detection (part 2): Box intersection

Last time, we discussed collision detection in general and surveyed some techniques for narrow phase collision detection.  In this article we will go into more detail on broad phase collision detection for closed axis-aligned boxes.  This was a big problem in the 1970’s … Continue reading

Posted in Collision detection, Geometry, Mathematics, Programming | 8 Comments

Collision detection (part 1): Overview

Collision, or intersection, detection is an important geometric operation with a large number of applications in graphics, CAD and virtual reality including: map overlay operations, constructive solid geometry, physics simulation, and label placement.  It is common to make a distinction … Continue reading

Posted in Collision detection, Geometry, Mathematics, Programming, Video games | 2 Comments

Replication in network games: Bandwidth (Part 4)

Last time, I finished up talking about latency issues for networked video games. Today I want to move onto the other major network resource, which is bandwidth. Compared to latency, bandwidth is much easier to discuss. This has been observed many … Continue reading

Posted in Distributed systems, Programming | Tagged , | 4 Comments