Download Latest Version ag8jul24.7z (102.5 MB)
Email in envelope

Get an email when there's a new version of AdaGate

Home / 2oct2014_update
Name Modified Size InfoDownloads / Week
Parent folder
READMEag.txt 2014-10-02 4.2 kB
ag_bundle_2oct2014.tar.gz 2014-10-02 171.1 MB
Totals: 2 Items   171.1 MB 0
AdaGate v 1.3 beta  1oct2014
=================================================================
What's new :
. both GNU/Linux and Mac OS-X binary executables included:
  adagate_osx, adagate_gnu;
. added level 5 epilogue;
. reflective water in levels 2, 5

==========================================
what is special about this project?
==========================================
Uses fully modern OpenGL methods in Ada using textures, shaders and uniforms that achieves version 3.3 core profile contexts in a way that is sufficiently mainstream that it easily compiles and runs on both GNU/Linux and Mac OS-X systems.  This project serves as a testbed for learning the complexities of modern OpenGL and GLSL.

Absolutely no coding efforts or compromises have been made to accomodate proprietary operating systems except for learning how to compile on OS-X.

It relies on a GLFW3 binding by Felix Krause, a thin OpenGL binding from "Lumen", and a PNG reader by Stephen Sanguine, as well as my own poor-man's "sound4ada" libraries.

If one defines "modern" OpenGL to mean version 3.3 or beyond, then I think this may be the most functionally advanced demonstration of "modern" OpenGL using Ada to be found.  The code itself is by no means elegant, but serves as a how-to example.


==============================================================
AdaGate Game Introduction
==============================================================

AdaGate is a combination of Portal and Sokoban.  In a curious dungeon, escape from each room will require ingenuity to solve some 3D sokoban puzzles.

The Zero Point Modules [ZPMs] that you find provide power to the two portal guns.  You can shoot these guns at most walls to place the endpoints of a wormhole shortcut through space-time.  But, in order to empower the portals, all cylindrical ZPMs must be bumped onto their base receptacles.  Not easy!  Note that you can only PUSH the ZPMs.  That means you can fail if you roll one into a corner or against a wall.  Note that the ZPM shape is the intersection of two cylinders, which means they roll in only two perpendicular directions.

There are currently 4 levels and each game resumes at the level attained in the previous game.


-----------------------------------------------------------
-- controls
-----------------------------------------------------------
Pointing is by touch pad or mouse;

Movement is by arrow keys:
     <Up>
<Lt>	<Dn>	<Rt>

L-key,R-key, or  
L-Mouse,R-Mouse : shoot the two portal-guns

<space> = jump

<esc> = exit;  

at the command line type "adagate <enter>" to begin.
------------------------------------------------------------



required for running:
-------------------------------------------
. graphics card & driver that supports OpenGL version 3.3 or later;
. GNU/Linux or a Mac running OS-X;
. command-line version of mplayer for sound effects...
  (I just installed one on my MacBook Pro that works great)
. note that the delivered executables were statically linked
  to glfw so you should not need GLFW3 just to run.

Open Source libraries required for building:
-------------------------------------------
. a recent gnat compiler
. GLFW3 libraries
. Mac or GNU/Linux
. see example scripts linux: lcmp.sh;  osx: ocmp.sh




AdaGate itself is covered by the GNU GPL v3 as indicated in the sources:

--
-- Copyright (C) 2014  <fastrgv@gmail.com>
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- GNU General Public License for more details.
--
-- You may read the full text of the GNU General Public License
-- at <http://www.gnu.org/licenses/>.
--
======================================================================
Open source developers are welcome to help improve or extend this game.

Feel free to send comments or suggestions:

<fastrgv@gmail.com>
September 2014


Source: READMEag.txt, updated 2014-10-02