Skip to content

Small C++ 2D/3D video game framework for Windows (Vista/7/8/RT/10), Linux, and the Windows Store. Supports OpenGL/DirectX and X86/X64/ARM architectures. Also, in developement: Valve's Steamworks API support, and web port using Emscripten.

License

phrounz/volatile-dove-engine

Repository files navigation

The Volatile Dove Engine

... is a video game engine, and includes Makefiles, Visual Studio projects, etc and a script to manage your multi-plaftorm video games projects easily. See http://www.volatiledove.com/Engine for more informations.

See LICENSE.txt to know the engine license. Read it before use!

Engine source code and dependancies

  • include are the Volatile Dove Engine "include" files

  • shaders are the default source shaders files used in the application you build, in HLSL (DirectX) and GLSL (OpenGL) languages.

  • source are the Volatile Dove Engine "source" files

  • common contains files common to several projects (Application_... directories), for example compilation procedures for a given target platform common to several projects and stuff used by generate_project.pl. This includes all the dependancies for Windows (includes, lib and dll already compiled) in common/dependancy_libraries.

  • Doxyfile is the Doxygen file, which requires Doxygen, This will automatically generates the documentation in the directory "html". It is currently set up to browse the "include" directory only.

generate_project.pl

The script generate_project.pl is a Perl script which helps you to create a new empty project and maintain existing ones.

  • Installation:
  • On Linux, Perl should be already installed (if not, type: apt-get install perl or yum install perl)
  • On Windows, install http://strawberryperl.com/ . When Perl is installed, just double-click on the .pl file.
  • How it works: This script is used to:
  • create a new project. A new directory with the name of your project will then be been created with the file setup.ini in it and the source file code/MainClass.cpp. You can then take notice of the particularities of each target platforms within this project.
  • update an existing project. This can be useful if you pull changes from GitHub and new sources files are available, for example, or if there are new cpp/h files to take into consideration in code/, or to take into consideration the configuration you made manually in setup.ini. If the .sln,.vcproj, and any other file which was created by the script is going to change, it will ask for confirmation in order to choose between the new generated version and the local version (note: for some items like code/MainClass.cpp, WorkDir/data/default_font.png, copy_work_dir_to_appx.bat, and files in App_VS2013_DX_Store/Assets/ , local version will always be kept if existing).

Example projects

See PROJECTS.md for description of how each example project is organized.

About

Small C++ 2D/3D video game framework for Windows (Vista/7/8/RT/10), Linux, and the Windows Store. Supports OpenGL/DirectX and X86/X64/ARM architectures. Also, in developement: Valve's Steamworks API support, and web port using Emscripten.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published