A complicated challenge for artificial intelligence since its inception has been knowledge representation in problems with uncertain domains. What a system can't see is, nonetheless, of possible importance to its reasoning mechanisms. What is unknown is also often still vital to common sense reasoning. This posting will hopefully publicise Bayesian networks, which provide a formalism for modelling and an inference mechanism for reasoning under uncertainty and initiate discussion about uncertainty problems and probabilistic reasoning in game AI's.
Huffman Compression, also known as Huffman Encoding, is one of many compression techniques in use today. Others are LZW, Arithmetic Encoding, RLE and many many more. One of the main benefits of Huffman Compression is how easy it is to understand and impliment yet still gets a decent compression ratio on average files.
Until we start seeing games with a serious amount of geometry, the greatest slice of the memory pie will belong to textures. The hundreds of megabytes of stuff coming from the art quarters must be compressed. Conventional image-compression algorithms are not very well suited to the specific requirements of art storage in games. This article provides an introduction to the field of VQ, presents two algorithms for performing VQ, and goes into the details of a successful real-world application for VQ texture compression.
This article gives a brief, non-academic (i.e. no dwelling into time complexity issues), explanation of what binary trees are about. It also provide source and demo of a generic tree class. Functionality to balance the tree is also described/provided.
This article explains how BSP (binary space partitioning) trees can be used in a game such as DOOM as part of the rendering pipeline to perform back-face culling, partial Z-ordering and hidden surface removal.
By Kimberley Burchett. I got a lot of letters asking for a copy of my post on connecting points into a shape. So, instead of mailing a bunch of letters, I'm going to just post it here.
Here's a hexagonal grid with a coordinate system mapped to square grids. Note that this is just one possible orientation of the hexagons---if you change it so hexes are adjacent horizontally instead of vertically, you get a symmetric situation.
The idea is to assume first that if the mouse landed in a rectangle, then it landed in hexagon and then correct if the mouse position is in one of the two triangular flaps.