Giter Site home page Giter Site logo

buildingvolumes / unity_geometry_sequence_streaming Goto Github PK

View Code? Open in Web Editor NEW
12.0 5.0 1.0 5.78 MB

A package and tools for Unity to stream large Pointcloud and Mesh frame sequences from disk

Home Page: https://buildingvolumes.github.io/Unity_Geometry_Sequence_Streaming/

License: MIT License

Python 63.99% C# 36.01%
animation geometry mesh meshes package pointclouds sequence textures unity video

unity_geometry_sequence_streaming's Introduction

Unity_Package_Logo


A package for Unity to stream large pointcloud and (textured) mesh sequences from disk

Github_showreel.mp4

Credits

Overview:

This package allows you to stream large and heavy geometric frame sequences (where each frame of an animated sequence is saved in a single file) inside of Unity. The package was orginally developed to allow playback of Volumetric Video captures, but can also be used to play any animated 3D-sequences, that are unsuitable for bone or blendshape workflows. Usecases are for example: Simulations (physics, fluids), animated meshes with changing topology and animated pointclouds.

Quickstart

Features

  • Streams sequences directly from disk, no import into Unity needed
  • Support for animated Pointclouds, Meshes and Textures
  • Control your playback with a custom Editor UI
  • Timeline support
  • Scripting API

Install & Usage:

Please see the documentation website

Unity Forums Thread

License:

Licensed under the MIT License

Thanks to:

Charite Experimental Surgery lab, for supporting much of the development: Website | Github

unity_geometry_sequence_streaming's People

Contributors

christopherremde avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

bobzhangfw

unity_geometry_sequence_streaming's Issues

Pointcloud Shader not working on Metal/OpenGL

Problem:
The Pointcloud Geometry Shader does not work on Apple Metal or OpenGLCore. Error is: Shader not supported on this GPU: Found no suitable fallbacks.

Expected Behaviour / Fix
Pointcloud Geometry Shader should work on Apple Metal, OpenGLCore and other OpenGL versions on Android.

The transform of Streamed Meshes should be settable before going into play mode

Problem:
Currently, you can only change the position of a streamed mesh after going into play mode, as the streamed mesh is created on runtime. You should be able to set it's position in the editor

Expected Behaviour / Fix
Add an option to parent the streamed mesh to an exisiting gameobject, which you can then use to transform the streamed mesh.

Android /WebGL cannot load data from StreamingAssets Path

Problem:
Android builds won't show any Streamed Geometry, as the path cannot be read properly from the StreamingAssets. Streamingsassets path on Android is a URL, not a file, which can't be read by the Streaming code.
Additionally, StreamingAssets should not be promoted as the go-to destination on Android for files, this should be the ApplicationDataPath.

Solution:
Load Streamingasset files on Android and WebGL builds via the WebRequest Class. Additionally add info into the documentation and editor which promotes the correct usage of the ApplicationDataPath

Currently working on fixing this!

API Player Example: Pathtype not defined

Problem:
When loading the samples, a compiler error will appear, that "Pathtype is not defined" in the API Player Example script. This is caused by some refactoring.

Expected Behaviour / Fix
Change Classname which contains the pathtype to the correct class

Meshes/Pointclouds are mirrored on the X-Axis

Problem:
Meshes and Pointclouds that are loaded through the plugin will appear mirrored on the X-Axis. Could be a problem caused through the coordinate system of Unity

Expected Behaviour / Fix
Add an option that is enabled by default to mirror the X-Axis, if it's not a bug caused while reading the geometry.

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.