A cross-platform OpenGL program written in C++. Builds and runs natively on Windows, OSX and Linux. Runs in Chrome, Firefox and Safari when built with Emscripten.
- Increasing code coverage using the custom OpenGL and GLEW mock lib
- Install the following, paying careful attention to any platform specific instructions:
-
CMake - (currently using 3.4.1)
- OSX: Launch the CMake app after copying it to your Applications and follow the instructions found under Tools > How to Install For Command Line Use
-
Emscripten from here - (currently using 1.35.0)
-
OSX:
-
Put the extracted
emsdk_portable
in your home directory -
Follow the Platform-specific notes
-
You can install Python 2.7.10 here instead of doing the last step in the Platform-specific notes since that step may not work. Do not use Python 3.
-
Open a command prompt in the
emsdk_portable
directory and run these commands:./emsdk update ./emsdk install latest ./emsdk activate latest source ./emsdk_env.sh
-
Add the following line to your ~/.bash_profile:
alias initem='source ./emsdk_portable/emsdk_env.sh'
-
Before compiling JavaScript, make sure you have run this in your command prompt once:
initem
-
-
Windows:
-
emsdk install mingw-4.6.2-32bit emsdk activate mingw-4.6.2-32bit
-
Open the Emscripten Command Prompt and run these commands:
emsdk update emsdk install latest emsdk activate latest
-
-
-
NodeJS from here - (currently using 4.2.1)
- Emscripten uses a different version when you run
initem
- Emscripten uses a different version when you run
-
Grunt - (currently using 0.1.13)
-
Windows: Run the following in a command prompt:
npm install -g grunt-cli
-
OSX: Run the following in a command prompt:
sudo npm install -g grunt-cli
-
-
Bower - (currently using 1.6.5)
-
Windows: Run the following in a command prompt:
npm install -g bower
-
OSX: Run the following in a command prompt:
sudo npm install -g bower
-
-
Run the following command from the repository root:
npm install
-
Update the version of npm that came with NodeJS to the latest:
-
OSX: Run the following in a command prompt:
sudo npm install npm -g
-
Windows:
-
Run the following in a command prompt:
npm install npm -g
-
Delete the
npm
andnpm.cmd
files from the\Program Files\nodejs
directory.
-
- Run the following command in the repository root after running
initem
:
grunt build:js
- Open www/index.html in Chrome, Firefox or Safari (OSX)
--jsMin - Runs uglify with mangle and compress options on the output JavaScript
--jsUseDist - Support is temporarily removed. Uses pre-built JS and HTML for git deploy on a server that does not have CMake and Emscripten available.
- Run the following command from the repository root:
grunt
- Build using the generated files under the
build
directory. For example, if developing on Windows with Visual Studio, open the otucha.sln, build and run. If developing on Mac or Linux, build using the Makefile.
- Run the following command from the repository root:
grunt cmake:xcode
Xcode will launch when completed.
- Switch the target from ALL_BUILD to otucha
- Build and run
A perspective view of a copper cube and three lights in positions that produce specular highlights. Some rendered text also appears on the bottom left corner.
Live Demo - It may take a minute for the server to wake up since "Always On" is turned off.
Like otucha, these code names have no special meaning and are picked using the random page feature on Wikipedia. They are used for namespaces.
RFFalcon: Short for Red-Footed Falcon. Geometry, models and rendering. Point and Matrix classes including vec union structs. Text rendering with C++ OpenGL layer on top of FreeType.
Terasca: Simple MVC application framework utilizing GLFW and GLEW.
Warbler: Console and logging.