Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
relic.tar.gz | 2016-01-20 | 35.7 MB | |
README.md | 2016-01-20 | 7.1 kB | |
Totals: 2 Items | 35.7 MB | 0 |
Reliquarium -- v 1.0
Whats new:
ver 1.0 -- 21jan16
- initial release
What is special about this project?
Uses modern OpenGL methods in the Ada programming language, with textures, shaders and uniforms. Achieves version 3.3 core profile contexts, and compiles and runs on both GNU/Linux and Mac OS-X systems.
Focusing on portability and freedom, no coding effort or compromise has been made to accomodate proprietary operating systems. It relies on a thin SDL2 binding from Dan Vazquez, a thin OpenGL binding from "Lumen", a PNG reader by Stephen Sanguine, and SFML-Audio (because of its elegant audio interface).
Written in C++ style, the code neglects many safety features available to Ada, but it does serve as a working example for learning OpenGL. The Ada bindings used are thin, so the relationship to C++ methodology is transparent. Developers should note that these Ada bindings are usable as a standalone library for most any OpenGL project that uses Ada.
Thus, for the C++ programmer the code should be easy to comprehend; and for the experienced Ada programmer there are many potential improvements to be made. Suggestions or improvements from Ada developers are not only welcomed, but solicited.
Reliquarium Game Description
Reliquarium is a unique set of three 3D slider puzzles, all with a Crystal Skull theme...reckless raiders have plundered a sacred tomb and displaced an ancient relic. The objective is to return the relic to the center of its cubical tomb by rearranging the numbered blocks back into their proper order, which also represents a proper RGB coloring...Red in the X-direction, Green in the Y-direction, Blue in the Z-direction.
Dragging the cursor rotates the cube for a better view angle. The mouse wheel zooms. Typing a number 1..8 selects a block to move, 0 selects the relic itself. Then use the keys {u,d,l,r,f,b} to move it.
As indicated on screen, (h) will toggle a help screen.
These unique puzzles are easy enough for children and will likely help with learning 3D visualization, geometry, problem solving and computer skills.
Works on Macs running OS-X and PCs running GNU/Linux.
Game Features
-
Works on PCs or laptops running OS-X or GNU/Linux. And if GNAT is installed you can build it yourself! But first try the delivered binaries.
-
Both GNU/Linux and OS-X binaries provided, as well as full source. Improved compatibility of pre-built binaries run on many recent distros of linux and OS-X.
-
Laptop friendly controls; supports Mac Retina displays.
Mouse/touchpad/keyboard controls
Look direction is controlled by touch pad swipe or mouse drag;
Movement is controlled by the keys:
u d l r f b (Up Down Left Right Forward Backward)
...which might get confusing unless you try to keep the X-axis rightward, the Y-axis upward, and the Z-axis outward...the standard viewpoint for mathematical discussions involving geometry.
(esc)-key => exit;
There are 3 variations numbered 4, 5, and 6, according the the vertical (Y) dimension of the puzzle.
To begin, open a [command-line] console, and at the command line type "tombx_gnu" or "tombx_osx", where x= 4 or 5 or 6.
Required for running:
- graphics card & driver that supports OpenGL version 3.3 or later;
- GNU/Linux or a Mac running OS-X (even Yosemite & ElCapitan);
Open Source libraries included for rebuilding:
- systems: OS-X or GNU/Linux
- a recent gnat compiler
- the included "libs" directory contains Ada interfaces:
- AdaPngLib
- gl
- sdlada
Running Reliquarium:
Unzip the archive and you will see a new directory appear with a name like "bundle_date", that you should rename to something like "install_directory".
Linux users should cd to install_directory, then type "tombx_gnu" to start the game.
Mac users please note: this game is initiated by opening a terminal, navigating to the install_directory, and typing "tombx_osx" on the command line.
Feel free to send comments, suggestions or questions to: fastrgv@gmail.com
Build instructions:
Six [pre-compiled] binary executables are provided, 3 for gnu/linux and 3 for OS-X. The linux versions, tombx_gnu, are intended to run in the presence of the directory "libs", which contains some dynamically loaded libraries that can be, but need not be present on a target system: SFML, SDL2
Build scripts for GNAT2015 are provided. Suggestions for improving the build process are welcome.
MacOSX:
oxcmp.sh (x=4,5,6):
build script for generating a portable executable that will run on most OS-X platforms whether or not they have non-standard libraries SDL2 or SFML installed. I used this to build the executables that I deliver, named tombx_osx. Any Mac with a recent but standard configuration of OS-X should be able to rebuild using this script. Here, all nonstandard libraries, included under the ./libs/ directory, are statically linked.
GNU/Linux:
lxcmp.sh (x=4,5,6):
utilizes the uncommon relocatable libraries (mainly SDL2, SFML) that are delivered in this bundle under ./libs/. This is used to build the dynamic [gnu/linux] executable, which should run in the presence of ./libs, whether or not your system has those libraries installed. This was used to create the executables named tombx_gnu.
If it doesnt run on your linux distro, you will have to try to build the executable yourself. In that case, it is hoped that these scripts will work for you. The intent was to provide all the needed interface/include files under ./libs/.
Legal Issues:
Reliquarium is covered by the GNU GPL v3 as indicated in the sources:
Copyright (C) 2016 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/.
Media Files for Reliquarium:
SoundFiles [x.wav]
Sounds are from freesound.org and is covered by the Creative Commons Attribution noncommercial license documented in the accompanying file creativeCommons.txt.
ImageFiles
Images for textures were from pixabay.com have a CC0 license. Files for text-textures were created using gimp and are also covered by the GNU GPL v3 license.