Visual Game Creator

VGC is a 3D game engine I developed back when I probably should have been at school. It features its own scripting system with GUI functions, WYSIWYG real-time editing and networking capabilities.

General

  • Object-Oriented Design
  • Plug-in Architecture
  • Other
  • Network editing (one scene, multiple AGE users.)
  • Direct3D 9 support.
  • Distance based loading system.
  • Customisable engine GUI (and GUI functions.)
  • Plug-in architecture.
  • BASIC-like scripting language (including loose, easy object-oriented variable approach.)
  • Sliding collision.
  • Free.
  • Fixed-function
  • Fonts
  • GUI Shaders may be supported in the future.
  • Billboarding
  • Depth of Field
  • Fog DirectX fog is supported, and billboarding is already implemented for foilage.

Texturing

  • Basic
  • Multi-texturing More graphical features are planned.

Meshes

  • Mesh Loading Mesh data is loaded from objects automatically.

Scene Management

  • General
  • Occlusion Culling
  • LOD Level of Detail is used in particular with the included (with source) foilage entities (so grass, etc). Billboarding used here, and occlusion culling is automatic.

Animation

  • Keyframe Animation Animation data is loaded from the objects’ mesh data files.

Terrain

  • Rendering A plugin is included, to create terrain meshes from heightmap and texture files. This can then be inserted into the scene, inside the AGE editor.

Physics

  • Collision Detection
  • Essential collision detection functions are provided, as well as functions to automatically move an object upon collision.
  • Further physics support is planned.

Networking

  • Client-Server Uses Benjamin’s ‘Multisync’ network plug-in, for Client-Server mode TCP/IP networking.

Sound

  • 2D Sound
  • Uses DirectSound for high-quality sound, supports multiple formats for loading music/sfx files.
  • It may be theoretically possible to ‘stream’ sounds over a network, but it isn’t included as such.

Tools & Editors

  • Integrated script editor, linked to the entity and object selection menus. ‘Script’ affects current level, entities that are selected, have their code changed and then inserted, are one-off variations on the entity model.
  • Integrated 3D environment editor that enables you to view, modify, and place objects and scripted entities (although it is possible to make programs that do not use 3D at all.)
  • Syntax highlighting is supported within the AGE editor for scripts and entities.
  • Gui editor.

Scripting

  • Compact, Object-Oriented scripting language gets things done fast and safely.
  • AGE editor enables you to position and navigate in your 3D world, as it will be shown, and to develop and edit code and run your build.
  • Supports plugins; simple terrain builder (based on heightmap & texture input) currently available, more planned! (And of course more can be made easily, as the API is open.)
  • Support for custom functions within the script editor.

Download

You can grab the source and the executable with some demo media off of GitHub:

https://github.com/KohakuDoig/VisualGameCreator