All Projects โ†’ alaingalvan โ†’ Opengl Seed

alaingalvan / Opengl Seed

Licence: unlicense
โšช๐ŸŒฑA modern OpenGL starter repo that you could use to get the ball rolling.

Projects that are alternatives of or similar to Opengl Seed

vuejs-typestyle-seed
VueJS + TypeStyle seed using JSX
Stars: โœญ 20 (+0%)
Mutual labels:  seed, starter
angular-gulp-starter
Simple dev/prod build for Angular (2+) using gulp, systemjs, rollup, ngc (AOT), scss, Visual Studio
Stars: โœญ 18 (-10%)
Mutual labels:  seed, starter
example-app
Example app showcasing fulls1z3's Angular libraries
Stars: โœญ 27 (+35%)
Mutual labels:  seed, starter
Zero To Preact
A Step-by-step Guide to Preact + Webpack 2, without boilerplate!
Stars: โœญ 185 (+825%)
Mutual labels:  starter, tutorial
Webpack Starter Basic
A simple webpack starter project for your basic modern web development needs.
Stars: โœญ 552 (+2660%)
Mutual labels:  starter, seed
Angular Library Seed
๐ŸŒพ Seed project for Angular libraries that are AOT/JIT compatible and that use external SCSS-styles and HTML-templates
Stars: โœญ 197 (+885%)
Mutual labels:  starter, seed
ng-seed
Simple Angular seed project with commonly used features.
Stars: โœญ 12 (-40%)
Mutual labels:  seed, starter
Glsltuto
GLSL shaders tutorial
Stars: โœญ 168 (+740%)
Mutual labels:  opengl, tutorial
Renderhelp
โšก๏ธ ๅฏ็ผ–็จ‹ๆธฒๆŸ“็ฎก็บฟๅฎž็Žฐ๏ผŒๅธฎๅŠฉๅˆๅญฆ่€…ๅญฆไน ๆธฒๆŸ“
Stars: โœญ 494 (+2370%)
Mutual labels:  opengl, tutorial
node-starter-kit
Node.js / GraphQL project template pre-configured with TypeScript, PostgreSQL, login flow, transactional emails, unit tests, CI/CD workflow.
Stars: โœญ 76 (+280%)
Mutual labels:  seed, starter
Cordova Create React App
A tutorial on how to set up a Cordova project using Create React App.
Stars: โœญ 167 (+735%)
Mutual labels:  starter, tutorial
Gltut
Learning Modern 3D Graphics Programming
Stars: โœญ 690 (+3350%)
Mutual labels:  opengl, tutorial
Llvm 9.0 Learner Tutorial
A blog for LLVM(v9.0.0 or v11.0.0) beginner, step by step, with detailed documents and comments. Record the way I learn LLVM and accomplish a complete project for FPGA High-Level Synthesis with it.
Stars: โœญ 58 (+190%)
Mutual labels:  starter, tutorial
angular5-starter
โญ An Angular5 Starter Kit :: Router, HttpClient, Forms, Services, Dev/Prod, HMR, Async/Lazy Routes and a very good structure for large applications by @naologic
Stars: โœญ 54 (+170%)
Mutual labels:  seed, starter
Lwjgl3 Tutorial
Tutorial for the Lightweight Java Game Library (LWJGL) 3
Stars: โœญ 199 (+895%)
Mutual labels:  opengl, tutorial
angular2-webpack-advance-starter
An advanced Angular2 Webpack Starter project with support for ngrx/store, ngrx/effects, ng2-translate, angulartics2, lodash, NativeScript (*native* mobile), Electron (Mac, Windows and Linux desktop) and more.
Stars: โœญ 49 (+145%)
Mutual labels:  seed, starter
Tinyraycaster
486 lines of C++: old-school FPS in a weekend
Stars: โœญ 1,383 (+6815%)
Mutual labels:  opengl, tutorial
Tinyrenderer
A brief computer graphics / rendering course
Stars: โœญ 11,776 (+58780%)
Mutual labels:  opengl, tutorial
angular-routing
Angular 13 Example Routing
Stars: โœญ 21 (+5%)
Mutual labels:  seed, starter
Universal
Seed project for Angular Universal apps featuring Server-Side Rendering (SSR), Webpack, CLI scaffolding, dev/prod modes, AoT compilation, HMR, SCSS compilation, lazy loading, config, cache, i18n, SEO, and TSLint/codelyzer
Stars: โœญ 669 (+3245%)
Mutual labels:  starter, seed

Cover Art

โšช OpenGL Seed

CMake License

A starter repo that you could use to build an OpenGL application on top of.

Check out the this blog post for more details about this example.

Setup

First install:

Then type the following in your terminal.

# ๐Ÿ‘ Clone the repo
git clone https://github.com/alaingalvan/opengl-seed --recurse-submodules

# ๐Ÿ’ฟ go inside the folder
cd opengl-seed

# ๐Ÿ‘ฏ If you forget to `recurse-submodules` you can always run:
git submodule update --init

# ๐Ÿ‘ท Make a build folder
mkdir build
cd build

# ๐Ÿ–ผ๏ธ To build your Visual Studio solution on Windows x64
cmake .. -A x64

# ๐ŸŽ To build your XCode project on Mac OS
cmake .. -G Xcode

# ๐Ÿง To build your .make file on Linux
cmake ..

# ๐Ÿ”จ Build on any platform:
cmake --build .

WebAssembly

Note: if you're on Windows, I would highly recommend using the Windows Subsystem for Linux.

First, install the latest version of Emscripten via the Emscripten SDK. Make sure to add it's Emscripten installation to your PATH, then:

# โš ๏ธ Possible dependencies you might need:
sudo apt-get update
sudo apt-get install cmake build-essential llvm

# ๐Ÿ‘ท Make a build folder
mkdir wasm
cd wasm

# ๐Ÿ”จ Build the project
emcmake cmake ..
emmake make OpenGLSeed -j

From there create an HTML file that loads the generated OpenGLSeed.js file, and run an http server. You can find an example of this here.

File Structure

โ”œโ”€ ๐Ÿ“‚ external/                    # ๐Ÿ‘ถ Dependencies
โ”‚  โ”œโ”€ ๐Ÿ“ crosswindow/                    # ๐Ÿ–ผ๏ธ OS Windows
โ”‚  โ”œโ”€ ๐Ÿ“ crosswindow-graphics/           # ๐ŸŽจ GL Context Creation
โ”‚  โ”œโ”€ ๐Ÿ“ glm/                            # โž• Linear Algebra
โ”‚  โ”œโ”€ ๐Ÿ“ opengl-registry/                # ๐Ÿ“š GL Headers
โ”‚  โ””โ”€ ๐Ÿ“ glad/                           # ๐Ÿ™Œ GL Extension Loader
โ”œโ”€ ๐Ÿ“‚ src/                         # ๐ŸŒŸ Source Files
โ”‚  โ”œโ”€ ๐Ÿ“„ Utils.h                         # โš™๏ธ Utilities (Load Files, Check Shaders, etc.)
โ”‚  โ”œโ”€ ๐Ÿ“„ Triangle.h                      # ๐Ÿ”บ Triangle Draw Code
โ”‚  โ”œโ”€ ๐Ÿ“„ Triangle.cpp                    # -
โ”‚  โ””โ”€ ๐Ÿ“„ Main.cpp                        # ๐Ÿ Application Main
โ”œโ”€ ๐Ÿ“„ .gitignore                   # ๐Ÿ‘๏ธ Ignore certain files in git repo
โ”œโ”€ ๐Ÿ“„ CMakeLists.txt               # ๐Ÿ”จ Build Script
โ”œโ”€ ๐Ÿ“„ license.md                   # โš–๏ธ Your License (Unlicense)
โ””โ”€ ๐Ÿ“ƒreadme.md                     # ๐Ÿ“– Read Me!
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].