Giter Club home page Giter Club logo

vts-browser-unity-plugin's Introduction

VTS Browser Integration Plugin For Unity 3D Game Engine

VTS Browser CPP is a collection of libraries that bring VTS client capabilities to your native applications.

This Unity Plugin integrates the VTS Browser into the popular Unity 3D game engine.

Asset Store prebuild version of the plugin available on Unity Asset Store.

Example Screenshots

Features

  • The plugin handles data streaming and resource management
  • Rendering is done in Unity (with custom shaders)
    • This allows you to customize the rendering process
    • Provided shaders:
      • Unlit
      • Unlit with received shadows
      • Surface shader
      • All shaders with optional custom atmosphere that works with whole-planet views
  • Supports multiple cameras
  • Support for physical collisions
  • Real-world coordinate transformations
  • Shifting origin

Documentation

The Unity Plugin documentation is at the wiki.

Browser documentation is available at its own wiki.

Documentation for the whole VTS is at VTS Geospatial.

Building the Plugin from Source Code

Build instructions are the same as for the VTS Browser Build Wrapper. Just start in the root folder of this repository to ensure that the settings from CMakeLists.txt here are applied too.

Using the Plugin in Unity

Unity 2018 or newer is required.

On Windows

  • Symlink <Unity Project>/Assets/Vts -> <This Repository>/src/Vts
  • Symlink <Unity Project>/Assets/Vts/Plugins/Windows/vts-browser.dll -> <This Repository>/build/result/<build-type>/vts-browser.dll
  • Configure the vts-browser.dll to be used in Editor and Standalone, x86_64, Windows

On UWP (Universal Windows Platform)

  • beware that support for UWP is experimental
  • Symlink <Unity Project>/Assets/Vts -> <This Repository>/src/Vts
  • Symlink <Unity Project>/Assets/Vts/Plugins/Uwp/vts-browser.dll -> <This Repository>/build-uwp/result/<build-type>/vts-browser.dll
  • Configure the vts-browser.dll to be used in WSAPlayer, UWP, x64, il2cpp
  • After you make the build in Unity, open the Visual Studio project:
    • add internetClient capability to the manifest file

On Mac

  • Symlink <Unity Project>/Assets/Vts -> <This Repository>/src/Vts
  • Symlink <Unity Project>/Assets/Vts/Plugins/Mac/vts-browser.bundle -> <This Repository>/build/result/<build-type>/vts-browser.bundle
  • Configure the vts-browser.bundle to be used in Editor and Standalone, x86_64, OSX

For iOS

  • Symlink <Unity Project>/Assets/Vts -> <This Repository>/src/Vts
  • Symlink <Unity Project>/Assets/Vts/Plugins/Ios/vts-browser.framework -> <This Repository>/build-ios/result/<build-type>/vts-browser.framework
  • Configure the vts-browser.framework to be used in iOS
  • After you make the build in Unity, open the XCode project:
    • in the project, Build Settings, Linking, set Runpath Search Paths to @executable_path and @executable_path/Frameworks
    • in Build Phases, Copy Files, add vts-browser.framework to Destination Frameworks
      • make sure that Code Sign On Copy is on

For Linux

  • Build the vts-browser library on linux and copy it to <Unity Project>/Assets/Vts/Plugins/Linux/libvts-browser.so
  • Configure the libvts-browser.so to be used in Standalone, x86_64, Linux

Bug Reports

For bug reports or enhancement suggestions use the Issue tracker.

How To Contribute

Check the CONTRIBUTING.md on the VTS Browser CPP repository. It applies equally here.

License

See the LICENSE file.

vts-browser-unity-plugin's People

Contributors

malytomas avatar tomaskavan avatar

Watchers

James Cloos avatar

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.