GithubHelp home page GithubHelp logo

adamnemecek / videngine Goto Github PK

View Code? Open in Web Editor NEW

This project forked from endavid/videngine

0.0 2.0 0.0 1.09 MB

3D graphics for iOS using Metal and Swift

Swift 92.86% Metal 6.06% Objective-C 0.31% C++ 0.71% Shell 0.06%

videngine's Introduction

Vid Engine

Graphics engine written in Metal & Swift. It's an endless work-in-progress that I use in my spare to test things. It should be usable to do basic stuff, but note that there are no plans for OpenGL ES support, and thus, both older devices and the simulators are not supported. You will need a Metal-compatible iOS device to build and run it.

Installation

Simply add this repository as a submodule in your repository. Then,

  • Create a Workspace in Xcode
  • Add your project to the workspace
  • Add VidFramework project to the workspace.
  • Select your project in Xcode, and in Target -> General -> Embedded Binaries, select VidFramework (it should appear if it's in your workspace). This should also add it to Linked Framework & Libraries. But if it doesn't, add it there as well. Also make sure it did add an entry in Build Phases -> Embed Frameworks.

Demos

There are several samples if you open the VidWorkspace. Also, check tags to find different demos in the commit history.

GPU Quaternions performance tests

Tags: instanced-spheres-quaternions, instanced-sphere-matrices, instanced-cubes-quaternions, instanced-cubes-matrices, cubes-demo-quaternions, cubes-demo-matrices

Just examples of instancing and GPU quaternions. Read about it in detail in this blog post: http://tech.metail.com/performance-quaternions-gpu/

Instanced cubes

Instanced spheres

Procedural 2D rain

Tag: rain-demo

Small example of using Metal in Swift. You can read about it in this blog post: http://tech.metail.com/metal-swift-introduction/ All the data updates happen in the GPU.

Procedural 2D rain

License

MIT License. Please let me know if you use this in any of your projects.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.