You are on page 1of 3

Prototyping tools overview Gameloft 02/2005

Blitz 3D
Overview
Blitz 3D is a high level coding library, built on top of DirectX, and dedicated to
2D and 3D games. It features ready-made functions to manipulate and manage
game assets with only little code.

Paradigm
Blitz uses a similar syntax to the BASIC language, and is based upon the
notion of entities. Basically, all the game elements (cameras, meshes, lights…)
are considered by the system as entities. Thus, the same Blitz commands can be
used to manipulate very different elements. From the outside, this looks like high
level polymorphism.

the Blitz interface

The typical workflow is as follows:


• define the graphics settings ;
• define the environment (lights, scene pivots, cameras) ;
• import the game map (including characters and objects in .X, .3ds or .b3d
files) ;
• define collision groups ;
• model behaviours (attack patterns, trajectories…) using Blitz functions.
Prototyping tools overview Gameloft 02/2005

Sample Blitz code


;Define a new weapon
Global weapon2 = LoadMesh("gloc.3ds",camera_pivot) specific
mesh loading function
weapon_tex2 = LoadTexture("glocmap.jpg")
EntityTexture weapon2,weapon_tex2
RotateEntity weapon2,12,170,14
ScaleEntity weapon2,0.01,0.01,0.01 generic entity functions
PositionEntity weapon2,1,-1,1.5

This sample shows the syntax to import and texture a 3D mesh, and place it on screen. We
can see how the entity paradigm is applied: generic functions are used for texturing, and 3D
transformations, whatever the object specificities.

;Collision Handling
Collisions are handled very simply, by affecting a 3D object to a collision group (basically a
global value) at its creation.
Ex: EntityType terrain,SCENERY

Then, by calling the collision detection function, the treatment is automated.


Collisions CARPET,SCENERY,2,1
Collisions ENEMY,CASTILLO,2,3 (...)
The numerical parameters after the function call define the behaviour of the collision groups
when the event occurs (among a set of predefined behaviours).

Prototyping with Blitz 3D


Blitz has functions to create both 2D and 3D applications. Though everything
is controlled by code, the language is fairly simple and can be rapidly mastered
by a game designer familiar with scripting, or with previous knowledge of
programming.
The only bottleneck in Blitz prototyping could concern the assets: Blitz is
“only” a manipulation language, so it comes with no default sounds or 3D data.
However, the engine has native support for .3ds models and .X files, so models
can be directly imported and tested.
Prototyping tools overview Gameloft 02/2005

Package info
• Current version : Blitz 3D build 1.83
• Developer / Publisher : Blitz Research Ltd.
• Games related extensions : VR pack, AI pack, Physics pack, Xbox Kit

Useful resources
http://www.blitzbasic.com
 The Blitz homepage; features demo versions and documentation.

http://www.blitzbasic.com/Community/_index_.php
 The Blitz forum; features tutorials from beginners to advanced users.

Off-shore racing using Blitz3D

Plane game with Blitz3D

You might also like