Tag Archives: WebGL

KZ

It’s alive! View KZ demos in your browser

Go check it out :) It should look something like this:

Although it is not the final version, it is pretty much stable and viewable. Extra love to eDark for demo loading code.

In case you just want to fly around the map, open this link.

Source code will be available soon.

KZ

Online KZ viewer – project update

I have updated my Online KZ project, look at how wonderful it looks like:

No seriously, look at it (controls are WASD + mouse + mouse buttons).

Some notes from this relatively big update:

  • Switched from homebrew WebGL attempte to three.js
  • Added texturing (although some textures are missing and all textures are inverted :( )
  • Source code can be found on github for both bsp to json converter and the web page itself
  • Added first person camera for easy navigation

A lot of things remain to be implemented, this is just an early milestone.

Bonus picture (when texturing goes haywire :) ):

You can check and fork the source over at github.

KZ

New project – Online KZ map viewer/demo player

I have started a new project – Online KZ. The idea is to bring the world of KZ to web, thus making the game available to anyone everywhere without the need of an installed game on the computer.

Try the WIP version here.

Kreedz, or simply abbreviated as KZ, is a popular mod for Counter Strike (itself a mod for Half Life) where the goal of the player is to traverse the map from the defined start point to the end point in least time possible. The gameplay has a large learning curves since there are lot of techniques to conquer. For more information go to http://xtreme-jumps.eu. You can find more information there as well as links to youtube videos for some world records.

On the development side, the primary technology used is WebGl which limits the browsers that can be used. Currently, all major browsers support WebGl with the, unsurprising, exception of Internet Explorer. The maps used by the engine are written in binary files using the popular Quake BSP file format. Since parsing binary files is not something we want to do in javascript code, bsp files are converted to a json file offline and they are then used for rendering information. This also allows for some preprocessing as well since this conversion is done once.

Textures are stored in WAD files and they are not currently used since this is still a work in progress. Other missing features are lightmaps, entities, etc.

For more information regarding the BSP file format, refer to the http://www.flipcode.com/archives/Quake_2_BSP_File_Format.shtml. Since Half Life was based on the Quake 1 engine, the file format is slightly different and you should refer to the Half Life SDK and use the structures defined in bspfile.h for parsing the maps.

Stay tuned.