GithubHelp home page GithubHelp logo

virtualcinema's People

Watchers

 avatar  avatar  avatar

Forkers

nail-lian

virtualcinema's Issues

Improve performance of video content in BLUI

We're getting a terrible 16FPS on my surface pro 3. Naturally, we can't support such low-end hardware, but we need to improve performance if this application is going to work on semi-decent systems.

Lobby Level: Game Join/Host Options Screen

It doesn't work all that well to have the screen showing on the initial level. 3D widget reliability + BLUI plugins have issues with that. Better to have a lobby screen and to not start with BLUI.

We also need a screen to host, join, or quit the game.

Highlight the Bevel to indicate that the character is looking at it.

We need to detect where the player is looking. Otherwise, we won't be able to interpret the proper screen coordinates in VR space. A good milestone for this is to set up a character actor, use that actor, line trace, detect collision, and highlight the bevel material behind the screen if someone is looking at it.

Later on, we can do fancier things like actually draw the cursor/reticle ( #6 )

Does not open using 4.7.6

Unable to migrate robot or emotion animations to program. Will not open using Unreal Engine edition 4.7.6

Support for Steam / Drop LAN support

The primary purpose of our project is for two remote people to hang out around a "virtual couch," enabling them to watch something or browse the web when they are far apart. For this reason, it makes absolutely no sense to waste time and energy supporting LAN play.

In addition, after spending hours and hours of work, it just doesn't seem possible to support switching from LAN/Steam with an in-game setting using blueprint matchmaking. If you have the steam binaries, you will always use steam, regardless of whether UseLan is checked. The only difference is, when it is checked, things just don't work.

Goal:

  • Support for Steam
  • Dropping LAN support for good (making things MUCH easier for us).

Assignment #6

  • Proof-of-concept UI screen capable of browsing the web and playing audio
  • Assignment requirements: Networking + Replicated actors, etc...

Screens that are capable of browsing the web and playing audio.

Goal: Non-synchronized implementation where two players can join in a network game and both look at a screen capable of browsing the web and playing audio.

Scope: The screen does not yet need to support video and doesn't need to support synchronized views (each person could technically be looking at different content).

Create a Robot Body Mesh

It's good practice to build a separate body and head for our avatars (See #8). Since the head is supposed to follow the Rift orientation, we need to detach it from the robot body somewhat.

For this issue, we should build a simple body for the robot. In fact, it can be little more than a sphere with a material that accepts parameters (where one player is another color than the other)

Ability to sync the current URL from the controlled screen.

Sometimes it's possible for the two screens to become out-of-sync. For example, if there are random/personalized elements shown on this page. For this reason, we should enable some sort of manual sync process (e.g., get URL from server and reload). If it works out OK, we could also try some automatic detection and sync mechanism.

Unable to deploy due to unknown error related to cooking

I keep getting the following error, no matter what I do:
[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: begin: stack for UAT

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: KERNELBASE.dll!UnknownFunction (0x00007fff05b28b9c) + 0 bytes [UnknownFile:0]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-Core.dll!FOutputDeviceWindowsError::Serialize() (0x00007ffef8fc8074) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\core\private\windows\windowsplatformoutputdevices.cpp:95]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-Core.dll!FOutputDevice::Logf__VA() (0x00007ffef8e47999) + 185 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\core\private\misc\outputdevice.cpp:139]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-CoreUObject.dll!UPackage::SavePackage() (0x00007ffeeb47cd2e) + 40 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\coreuobject\private\uobject\savepackage.cpp:2465]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-UnrealEd.dll!UEditorEngine::SavePackage() (0x00007ffedb338411) + 115 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\editor\unrealed\private\editor.cpp:4416]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-UnrealEd.dll!UCookCommandlet::SaveCookedPackage() (0x00007ffedb88d7cf) + 110 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\editor\unrealed\private\commandlets\cookcommandlet.cpp:455]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-UnrealEd.dll!UCookCommandlet::Cook() (0x00007ffedb83fde9) + 62 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\editor\unrealed\private\commandlets\cookcommandlet.cpp:1344]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-UnrealEd.dll!UCookCommandlet::Main() (0x00007ffedb8707c8) + 5 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\editor\unrealed\private\commandlets\cookcommandlet.cpp:578]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-Cmd.exe!FEngineLoop::PreInit() (0x00007ff6d208ba3a) + 96 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\launch\private\launchengineloop.cpp:1536]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-Cmd.exe!GuardedMain() (0x00007ff6d20821fb) + 15 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\launch\private\launch.cpp:110]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-Cmd.exe!GuardedMainWrapper() (0x00007ff6d20826ea) + 5 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-Cmd.exe!WinMain() (0x00007ff6d2092219) + 17 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.7\engine\source\runtime\launch\private\windows\launchwindows.cpp:202]

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:160][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: UE4Editor-Cmd.exe!__tmainCRTStartup() (0x00007ff6d2092d05) + 21 bytes [f:\dd\vctools\crt\crtw32\dllstuff\crtexe.c:618]

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: KERNEL32.DLL!UnknownFunction (0x00007fff06a013d2) + 0 bytes [UnknownFile:0]

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: ntdll.dll!UnknownFunction (0x00007fff085d5444) + 0 bytes [UnknownFile:0]

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: ntdll.dll!UnknownFunction (0x00007fff085d5444) + 0 bytes [UnknownFile:0]

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd:

[2015.05.30-20.13.47:161][785]MainFrameActions: Cooking (Windows): UE4Editor-Cmd: end: stack for UAT

Synchronized access to the same media screen content

After we enable interaction within the HMD by drawing a mouse cursor on the screen (ideally where the player is looking -- see #6), we need to synchronize the browser commands (e.g., mouse clicks and location). This way, we ensure that both players are looking at the same thing.

We also need to deal with collisions. One simple approach is to only allow one command every 5 seconds. Another approach is for one player to be able to "claim" the screen somehow. An approach like this is within the scope of this issue.

Scope:

  • Synchronize the decisions (e.g., mouse click X at location Y).

Out of Scope:

  • Handling screen control/collisions ( #13 )

Create a Robot Head with Dynamic Material for Mouth

Per #4 , we want to create a robot head separate from the body. We also want the head to indicate when it is talking to prevent people from getting creeped out too much.

The idea is simple:

  1. Create a robot head static mesh.
  2. Assign different materials for different faces in the mesh.
  3. One material should be dynamic and accepting a parameter (ideally a float between 0 and 1). When 0, the material is one color/texture, and when 1, the material is "fully talking" (e.g., red).

This way, we provide a separate head for the VR avatar while also a mechanism that we can later use to indicate when someone is talking.

Ability to enable LAN mode (for debugging purposes)

LAN mode is still unsupported, but it'd be good if we had a way to turn it on for debugging purposes. The idea is to toggle LAN mode by pressing CTRL-L. If the game was started without the steam library (you may have to manually remove Steamworks), then LAN mode should work.

Fix warnings that occur in a networked game.

There are a few warnings that have been occurring. We should fix those so it's easier to trace down actual problems. They're primarily centered around misunderstood configs:
[2015.06.03-05.24.48:308][ 0]LogConsoleResponse:Warning: Skipping Unknown console variable: 'TranslucentSortAxis = (X=0.000000,Y=-1.000000,Z=0.000000)'
[2015.06.03-05.24.48:308][ 0]LogConsoleResponse:Warning: Found in ini file '../../../SocialCinema/Saved/Config/WindowsNoEditor/Engine.ini', in section '[/Script/Engine.RendererSettings]'
[2015.06.03-05.24.48:308][ 0]LogConsoleResponse:Warning: Skipping Unknown console variable: 'UIScaleRule = ShortestSide'
[2015.06.03-05.24.48:308][ 0]LogConsoleResponse:Warning: Found in ini file '../../../SocialCinema/Saved/Config/WindowsNoEditor/Engine.ini', in section '[/Script/Engine.RendererSettings]'
[2015.06.03-05.24.48:308][ 0]LogConsoleResponse:Warning: Skipping Unknown console variable: 'UIScaleCurve = (EditorCurveData=(Keys=),ExternalCurve=None)'
[2015.06.03-05.24.48:308][ 0]LogConsoleResponse:Warning: Found in ini file '../../../SocialCinema/Saved/Config/WindowsNoEditor/Engine.ini', in section '[/Script/Engine.RendererSettings]'

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.