Code Monkey home page Code Monkey logo

vrodos's Introduction

VRodos

A plugin for WordPress to transform your website into a multipurpose 3D media management tool

  • 3D assets repository
  • 3D assets visualizer for WordPress pages, e.g. commercial pages with 3D content
  • Database and API point of 3D media for your mobile applications
  • Digital Signage management tool capable for visualizing 3D media
  • VR applications authoring tool with a 3D scene editor

Features

  • Formats support: GLB.
  • Support sound

Interface Pages

  • Asset List
  • Project Manager
  • Scene 3D Editor
  • Asset Editor

Do you have a demo?

Installation instructions

Prerequisites:

  • Apache 2,
  • MySQL 5,
  • WordPress 6,
  • Php 7,
  • Node.js 16

Instructions for installation in WordPress

  • Download as zip

  • Rename VRodos-master.zip to VRodos.zip

  • Also rename the folder VRodos-master inside the zip file to VRodos.

  • Install VRodos.zip from WordPress dashboard with "ADD from file" button in install new plugins.

  • Download mdc and other node modules

    -- In root folder VRodos run npm install.

  • Set permalinks to Day / Name (2nd option)

  • Add to menu -- Assets List Page -- Project Manager page

Servers install and run

Two types of servers are needed:

  • Apache server, e.g. on windows locally using Xampp / Wamp etc.

    • Server is used for the content of the scenes.
    • Server contains also mysql server which is needed for WordPress to work (and somewhere to save the data).
  • Node.js server for Networked-Aframe. To start Node.js server

    1. Go to networked-aframe/server and type:

      npm install --force

      • Force is needed because some packages are obsolete
    2. A WebRTC TURN server is used for the collaborative functionality of VROdos. Create a free account for OpenRelay, and save server keys in a json file.

      • Go to: https://dashboard.metered.ca/signup?tool=turnserver
      • Create a free account.
      • On your dashboard create an App.
      • Add Credential, then on the created entry click on Instructions.
      • Create a keys.json file inside folder networked-aframe/server and add all objects from array into the json file like this:
       {
           "iceServers": [
           {
               "urls": "stun:stun.relay.metered.ca:80"
           },
           {
               "urls": "turn:a.relay.metered.ca:80",
               "username": "*********",
               "credential": "******"
           },
           {
               "urls": "turn:a.relay.metered.ca:80?transport=tcp",
               "username": "******",
               "credential": "******"
           },
           ...
           ]
       }
      
    3. Run server using a port number you want, or leave it blank for default port (5832):

      node .\easyrtc-server.js port_number

      Examples:

      node .\easyrtc-server.js

      Runs in default port 5832.

      node .\easyrtc-server.js 5840

      Runs in port passed as argument 5840

    Now after building a scene in the 3D editor, the collaborative functionality between users is enabled.

Troubleshooting

  • Wordpress API is not working : Settings -> Permalinks -> Post name (as Structure)

  • CORS You need wordpress at port 80 (apache2 standard) to allow to give content to aframe at node.js server at port 5832, or whichever port you have used when running easyRTC service.

####Add this to .htaccess

<IfModule mod_headers.c>

Header set Access-Control-Allow-Origin "*"

</IfModule>

Big 3D models

Add these to .htaccess to allow big files to be uploaded to wordpress

- php_value upload_max_filesize 512M
- php_value post_max_size 512M
- php_value memory_limit 1024M
- php_value max_execution_time 1800
- php_value max_input_time 1800
- php_value max_input_vars 4000

vrodos's People

Contributors

dependabot[bot] avatar jimver04 avatar kostogls avatar orestissar avatar panmig avatar stathisnikolaidis avatar tpapaz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

vrodos's Issues

Bugs and Features

Bugs

  1. User position gets extremely high values

Features

Add Pawns as new asset category

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.