Lua Virtual Reality Engine
Go to file
bjorn 447b2da41a lovr.math.orientationToDirection; 2017-09-02 17:26:24 -07:00
deps Migrate dependencies from lovr-deps; 2017-08-13 18:41:13 -07:00
src lovr.math.orientationToDirection; 2017-09-02 17:26:24 -07:00
.gitignore Migrate dependencies from lovr-deps; 2017-08-13 18:41:13 -07:00
.gitmodules Migrate dependencies from lovr-deps; 2017-08-13 18:41:13 -07:00
CMakeLists.txt Remove message from CMakeLists; 2017-08-11 22:28:15 -07:00
COMPILING.md Update compilation instructions; 2017-08-13 18:45:42 -07:00
CONTRIBUTING.md Update CONTRIBUTING; 2017-08-27 18:19:49 -07:00
LICENSE 2016 was 30 years ago; 2017-05-17 22:27:38 -06:00
README.md Update README; 2017-08-27 18:11:19 -07:00

README.md

LÖVR

LÖVR is a simple framework for creating virtual reality experiences with Lua.

Build status

Features

  • Automatically detects and renders to connected VR headsets (works without a headset too!)
  • Simple 3D graphics API supporting primitives, 3D models, fonts, shaders, skyboxes, framebuffers, etc.
  • Create projects for Windows, macOS, Linux, or WebVR
  • Spatialized audio
  • 3D physics

Screenshots

Getting Started

You can download precompiled binaries from the website. There, you can also find documentation and a set of tutorials and examples. Here is the hello world example for LÖVR:

function lovr.draw()
  lovr.graphics.print('Hello World!', 0, 1.7, -3, .5)
end

To run it, first create a folder for your project and put the code in a file called main.lua. Then, just drop the project folder onto lovr.exe (or run lovr.exe path/to/project on the command line). Put on your headset and you should see the text at the front of your play area!

Spinning Cube

function lovr.draw()
  lovr.graphics.cube('line', 0, 1, 0, .5, lovr.timer.getTime())
end

3D Models

function lovr.load()
  model = lovr.graphics.newModel('teapot.fbx', 'teapot.png')
end

function lovr.draw()
  model:draw()
end

Audio

function lovr.load()
  local sound = lovr.audio.newSource('darudeSandstorm.ogg')
  sound:play()
end

Documentation

Documentation and examples are available on the website here. The website is also open source if you want to add or edit documentation.

Community

If you wanna be my LÖVR, you gotta get with my friends - Spice Girls

Feel free to join the LÖVR Slack for questions, info, and other discussion.

Compiling

To compile from source to create a custom build or contribute to LÖVR, see COMPILING.

Contributing

Contributions are welcome! See CONTRIBUTING for more information.

License

MIT, see LICENSE for details.