CorEngine RSS
NAVIGATION >>
HOME TUTORIAL API TOOLS FORUM REPORT BUGS
:. CorEngine - Compact and Powerful 3D Game Engine [Alpha] [ Work in Progress ]
CorEngine-app
CorEngine is a work in progress, OpenGL graphics powered 3D game engine designed to help independent game developers with quick prototyping and game/virtual environment creation.
The engine supports a standard set of features, like skeletal animation, post processing, Lua/C programming, physics powered by Bullet Physics, GUI and 2D/3D Audio.

CorEngine is licensed under the zLib license. That means you can use it freely for any purpose - including commercial purposes with no limitations.

:. Main Features
  • Fast application development through Lua scripting language.
  • OpenGL renderer enabling crossplatform development and compatibility.
  • Support for Collada, 3ds, ms3d and various other common model formats through Assimp.
  • Scene editor.
  • Dynamic visibility culling with hardware occlusion queries.
  • Completely shader based rendering architecture (Shader Model 3.0).
  • Blender pak exporter.
  • Special effects like normal/parallax/specular mapping and particles system.
  • Post processing effects like Bloom and Depth of Field.
  • Skeletal animation.
  • Physics powered by Bullet Physics.
  • Built in GUI objects like labels, buttons, pictures and text fields.
  • Built in 3d and stereo audio support, support for OGG and WAV formats.
:. What's New in This Version?
  • Added some tutorials
  • Fixed some bugs on CorEngine and CorEditor
  • Changed license to zLib License
:. Videos


CorEngine - Demo (Aug 2014) by CorEngine


CorEngine Scene Editor - Demo 01 (Mar 2014) by CorEngine

:. Example

init.lua

  Context.HideMouse( true )

  local scene = Engine.LoadScene( "level1.pak" )

  -- Create GUI
  local gui = Create.Gui()
  Engine.SetGui( gui )

  -- Add a Label
  local label = Create.Label( gui, "FPSLabel", 10, 10, "FPS: 0" )

  -- Get a Camera
  local camera = Scene.GetActiveCamera( scene )

  -- Main Loop
  while ( Engine.Run() ) do

    if ( Context.GetKeyState(KEY_W) == DOWN ) then
      Actor.MoveLocal( camera, 0.0, 0.0, -12.0 )
    end

    if ( Context.GetKeyState(KEY_S) == DOWN ) then
      Actor.MoveLocal( camera, 0.0, 0.0, 12.0 )
    end

    if ( Context.GetKeyState(KEY_A) == DOWN ) then
      Actor.MoveLocal( camera, -12.0, 0.0, 0.0 )
    end

    if ( Context.GetKeyState(KEY_D) == DOWN ) then
      Actor.MoveLocal( camera, 12.0, 0.0, 0.0 )
    end

    mf = Context.GetMouseForce()
    Actor.Rotate( camera, 0.0, 0.0, -mf.x * 10.0 )
    Actor.RotateLocal( camera, -mf.y * 10.0, 0.0, 0.0 )

    -- Close the app when key escape is pressed
    if ( Context.GetKeyState(KEY_ESC) == PRESSED ) then
      Engine.Quit()
    end
    
    Label.SetText( label, "FPS: " .. Engine.GetFps() )

  end
:: CURRENT VERSION

rev1506

Alpha :: Jun / 2015
:: PLATFORMS SUPPORTED
WINDOWS
:: DOWNLOAD
DOWNLOAD Deps
:: DONATE
CorEngine needs your support, please donate 1 dollar or more to make this project better.
:: POWERED BY
OpenGL
OpenAL
Bullet Physics Library
Open Asset Import Library
FreeImage
Lua
:: VISITORS
:: CONTACT AND FEEDBACK

CorEngine Developer
CorEngine@Mail.com

Indie DB
Mod DB - Change the Game
SourceForge.net
CorEngine.sf.net Except where otherwise noted, content on this site is
licensed under a Creative Commons Attribution 3.0 License.