#virtual-reality

1 messages ยท Page 68 of 1

wicked oak
#

but not soon

#

and you can just grab an Oculus Rift with Touch

#

if you want the better headset NOW

#

(unless you have a huge VR room)

stuck hamlet
#

probably wont be too significant. Im betting it will be a different form factor and different controllers. you will probably be able to buy the controllers seperately and use with old headset.

wicked oak
#

rumor says new controllers + bettter lighthouse + WIRELESS + 4k

#

wich is perfectly possible

#

better lighthouse and controllers are a given

stuck hamlet
#

yeah wireless is possible, im doubting the 4k though

wicked oak
#

and look at the wireless VR stuff

#

so thats 90% probability

stuck hamlet
#

two 4k screens? I dunno, maybe...

wicked oak
#

4k is also good probability, even if games dont end up rendering at 4k

stuck hamlet
#

yeah true, good point.

wicked oak
#

becouse 4k means higher pixel density, less screendor, and simpler games CAN render at 4k

stuck hamlet
#

just for better pixel density

#

yeah

wicked oak
#

i think 4k is less likely, but the other 3 are pretty much sure

#

but still 4k is possible if they want to completely blow the fuck out of oculus

stuck hamlet
#

yeah theres been a lot of talk about the wireless stuff. i'd be surprised if they got wireless+4k screens

wicked oak
#

ill try to ask for one to Valve once they have them

stuck hamlet
#

seems like a lot to send over wireless

wicked oak
#

well, the wireless works fine for the current resolution

#

wich is 1200p

#

it would go to 2000p more or less

#

its still around 3 times the pixels tho

#

doable if they improve the receiver and make it smarter

#

wich is quite possible if they have it integrated into the headset

#

to do it the best, the headset would be the one to do the timewarp

#

that way you get no latency at all even on wireless

stuck hamlet
#

that would be crazy

wicked oak
#

you can ASIC it

stuck hamlet
#

I think if they do want to add all of it, probably would take longer than a year

wicked oak
#

or with a low power-ish ARM core

stuck hamlet
#

like maybe summer 2018

wicked oak
#

i mean, the timewarp operation is really not that CPU intensive

#

or end of 2017

#

wich is likely

#

for the next christmas

stuck hamlet
#

maybe maybe. when did the vive come out again?

wicked oak
#

summer 2018 maybe for Oculus Rift 2

#

a while ago

stuck hamlet
#

time flies

wicked oak
#

last year around christmas

#

for the Vive Pre

stuck hamlet
#

oh wow

wicked oak
#

so, a year ago

real needle
#

What are the major differences between oculus and vive according to developing for it? I personally was more interessted in the vive, I have to admit, but I have no real experience yet

stuck hamlet
#

oh yeah pre, didnt have the pre

wicked oak
#

Oculus is better

#

better hand controllers by far, better image, much better ergonomics

#

BUT

#

Vive gets the upper hand in the tracking

stuck hamlet
#

yeah i personally like the oculus better right now. even though i fucking hate how the cameras work.

wicked oak
#

lighthouse is miles ahead the rift cameras

#

it just works a lot better

stuck hamlet
#

yeah its better technology

wicked oak
#

rift tracking is flawless on smaller spaces

#

but on a bigger space it has issues, you need to go 3-4 cameras

#

Lighthouse, on the other hand, can be installed in the corners of a room, and then it gets the whole room easily

#

also, cameras have to be plugged to the PC

#

and the cord isnt that long

#

Rift quality with Lighthouse would be so great..

stuck hamlet
#

yeah for real

wicked oak
#

in general, competition is great

real needle
#

what cords is vive using? easy to extend if you need to?

wicked oak
#

If Vive does come with wireless, Oculus is going to need to step up

#

and do a even better Oculus Rift 2

#

both Vive and Oculus use USB + HDMI

#

also, Oculus has really neat exclusives

#

becouse they have funded them

#

Vive doesnt

#

with Oculus you play the whole Vr library on PC

#

all of it

#

Vive only plays steamVR games

real needle
#

Hmm well, then oculus + lighthouse would be really great I guess ๐Ÿ˜„

wicked oak
#

yeah, but who knows what Gen 2 ends up having

#

Oculus is testing stuffs with All-In-One VR

#

inside out tracking on the HMD plus high end phone-like hardware on it, built in

#

grab from the box and put it on

#

and it works

#

Oculus is emulating Apple

#

just check the packaging

real needle
#

And what about developing for those? I don't want to ask which one is easier to develope with, but which one might be more "pleasant" to develope with?

wicked oak
#

they want the "just works(tm)" philosofy

#

plus a stylish product

#

Vive does not look like a 800$ piece of hardware

#

looks cheap as fuck

#

Oculus on the other hand looks a lot sleeker

#

more like a truly premium product

#

anyway, i recomend Oculus to everyone that is thinking of a headset

#

unless the user is going to truly use roomscale on a big room

storm vortex
#

@real needle I've read you can extend the Vive cord by buying the 3 in 1 cable. I have it but I haven't tried extending it yet. The existing cord is long enough IMO.

#

I'm not sure how you would extend the power portion of it though, I suspect just using an extension cord to give more length for the power cable portion

dusky moon
#

I'm trying to extend the motioncontroller's distance from user's body and scale up the hand movements based on distance to user's body ... can any1 suggest a way to do that in blueprint ?

empty sundial
#

Rewrite the motion controller class, most likely. Or add a variable offset to the static mesh representing the motion controller.

#

Then base all your hit/interact boxes on your offset mesh.

wicked oak
#

no need

#

you can just grab the local position/rotation and add it to the other thing

#

Local position/rotation of the MC component will give you its position on "user transformation"

real needle
#

I have a skeletal mesh all rigged up for use as a left hand. I have a single Hand BP with all of the necessary functions. How can I use the left hand skeletal mesh for the right hand? I thought I could just apply a negative scaling on the right hand to flip the mesh (and retain everything else), but that does not appear to be working

#

i am assuming i will need to have two skeletal meshes, one for each hand. and will have to specify which of the two skeletal meshes to use for either hand when spawning the Hand BP

#

but if there is a way for me to "mirror" the mesh, i would love to know

zenith charm
#

Pretty sure you can, I believe the VR template mirrors the left hand to the right. taking a quick look.

real needle
#

okay i am stuck on 4.11 so i cant check the new template

zenith charm
#

Ahh gotcha

real needle
#

i am using a 1d blendspace, etc, for gripping. so there are animations, etc all setup for the left hand

#

the mesh it is simple to do the mirroring, but it seems to screw up the physicsasset

dusky moon
#

@empty sundial @wicked oak Thanks ! will try ..

umbral imp
real needle
#

thanks! so it should be possible. i will experiment some more

umbral imp
#

Also, @real needle they use the same skeletal mesh, the "hand mesh" variable you see there is a "skeletal mesh" variable

real needle
#

fantastic, thank you for looking at that for me

umbral imp
#

np

limber rose
#

hey everyone, curious what build most are using for VR ATM

#

I've been doing 4.13 with VRWorks for my main project, but am loving a lot of the new stuff in 4.14, wish I could have lens matched shading and all the goodies in 4.14 already, has anyone successfully done a proper merge? or will we wait on nvidia for everything to be put in and also possibly work with forward render path?

digital marlin
#

Merge?

#

I just load my stuff up in 4.14 and it worked fine. But it wasn't a complex thing.

limber rose
#

@digital marlin right, I was able to upgrade another project to 4.14 with minimal issues, but am curious about the VRWorks branch from nvidia

#

it adds a lot of easy optimization, and works really well

#
NVIDIA Developer

NVIDIA has made it easier than ever for game developers to add leading-edge Virtual Reality technology to their Unreal Engine 4 (UE4) games by providing custom UE4 branches for NVIDIA VRWorks technologies on GitHub. VRWorks is a comprehensive suite of APIs, libraries, and engines that enable application and headset developers to create amazing virtual reality experiences. Learn more about NVIDIA VRWorks.

digital marlin
#

ohh right

#

sidenote, whoever created the Blender GUI needsa bullet in the head

limber rose
#

lol, try modo

#

modo gui is one of the most effective ever โค

digital marlin
#

Modo?

limber rose
#

yeah

#

check it out

digital marlin
#

A blender add-on?

limber rose
#

ah, it is another 3D software

umbral imp
#

If you have $1,350 it is all yours

digital marlin
#

I can use blender, but simple things like managing views is ridiculously obtuse.

limber rose
digital marlin
#

ohh

#

coolio

umbral imp
#

not free though!

limber rose
#

there is an indie version on steam which is super sufficient for game dev

digital marlin
#

Hrm

#

I might get a subscription

limber rose
#

great workflow vids from Warren Marshall, check them out โค

umbral imp
#

10 bux a month if you get it in 6 month increments.. not bad, but i don't think ill leave blender for it

digital marlin
#

Well I'm not a 3D modeller. I'm just whipping together some quick assets

limber rose
#

cool

digital marlin
#

But I'll try Modo

#

Is there a way to prevent static meshes from passing through each other? I've tried a number of collision options but I can't manage to get it to work. I'm using the default skeleton hands with objects attached to the MC.

mighty carbon
#

Blender is good, but a lot of non-cre features are half-assed, docs/training resources lack and not whole a lot of users use Blender for VFX which makes it incredibly hard to find help

#

I like it, but sometimes I just feel like good times might be over and I'd be forced to switch to Maya

#

(and I've heard Maya's modeling tools suck big time)

umbral imp
#

@digital marlin I still have some issues with it, but make sure "Use CCD" is enabled on your static mesh under collision. Also if you have access to the VR template from 4.14 just look at the BP setup for the cubes.

digital marlin
#

@umbral imp Thanks, I'll check it out. I'm using it as a base so it should help.

digital marlin
#

Hmm no that setup is the same.

#

I'

#

It's probably due to the hands

#

Though I think I can understand why you'd not want physics to be enabled with collision whilst holding something in each hand.

umbral imp
#

Yeah that is why they turn off simulate physics when it is in your hand

digital marlin
#

okay, guess I never noticed that

silk lodge
#

@digital marlin Blender's gui is great! it's just different.

#

@limber rose I use the vr works branch, the flex branch, and 4.14 and the master (4.15) branch for a project that can't run on 4.14

#

@digital marlin there's some issue with CCD, motion controllers and teleporting

#

@digital marlin also, if you're trying to stop things from moving through other things, you need them to be able to separate from the motion controllers because you won't be able to stop the physical motion controllers

clever sky
#

Ah... does anyone have a clue as to why translucent UI materials would show up in editor but not when built?

mighty carbon
#

I have a theory ... it's a bug!

#

๐Ÿ˜ƒ

limber rose
#

hmMM

clever sky
#

Eh. I just switched over to surface translucent.

#

Negligible difference on build.

digital marlin
#

@silk lodge Yeah I figured. But thanks for letting me know, I wasn't sure if I was doing something wrong

silk lodge
#

it's a complicated process. you gotta have them use physics or somehting to move the hand to the hand pose

digital marlin
#

In my game, I want to hit one object with another object that I'm holding.

#

I don't think it's possible, which is fine. But if I put one object inside a mesh it'll FLY off.

#

I might just disable physics for only very specific actions or something, I dunno.

silk lodge
#

it is

#

but you gotta use physics, not just parenting

digital marlin
#

Hmm.

#

Yeah I just played around with Job Simulator. I think it's important to have the objects be blocked whilst holding them.

#

Otherwise it looks like crap.

lime dagger
#

@digital marlin Just give them a collision

#

and grab things via a physics handle

digital marlin
#

Physics handle you say?

digital marlin
#

So attaching an object via a socket / component isn't a good way to do things?

digital marlin
#

oooh Tesla.

lime dagger
#

๐Ÿ˜ƒ

digital marlin
#

Ok let me check it out.

#

Thanks!

lime dagger
#

I mean you could do it that way but it's harder

digital marlin
#

Story of my Unreal 4 development life.

lime dagger
#

you could use the first way to grab the item (like an animation to drag it closer to the player) then attach it and give it collision.

#

That would probably look really nice.

#

kinda of like astroneers or minecraft where things just suck into your inventory.

#

Instead of deleting it and it going to your inventory it goes into your hand

digital marlin
#

The grabbing isn't really the issue TBH, it's more so how objects can pass through with each other despite the collision being active.

#

Though I'm doing it via having an actor just attached to a skeleton mesh.

lime dagger
#

are you welding when attaching?

digital marlin
#

Nope.

lime dagger
#

do it

digital marlin
#

Doesn't Weld just adopt the values of the parent though?

#

Like my hands can pass through walls and stuff - maybe that's the issue 8\

lime dagger
#

"When autoweld is on we take the geometry of the child body and add it to the root body so that it can be simulated as a single body. "

#

because you can't have 2 collision objects in one actor you add them together

digital marlin
#

...

lime dagger
#

Either that or do the physics handle thing

digital marlin
#

Hmm I'll try the weld thing first.

lime dagger
#

shots in the dark btw. Best I can give with the information. ๐Ÿ˜ƒ

digital marlin
#

heh thanks

#

My inkling is that it's the Motion Controller collision that's setup wrong or just in a basic way.

#

It's the ones that come with the VR template.

lime dagger
#

make sure you do those checkboxes

#

but that's more or less handles

#

not actual held objects

#

but it depends on the reaction you want to give when the collision happens

digital marlin
#

Thanks Brune. I'll let you know in a tick how I go.

digital marlin
#

ok, better. The object I'm holding is now interacting with other objects the way you'd expect.

#

My hands by themselves aren't though.

#

So, let's say I have a table and I don't wany my tool to go through the table as I'm holding it - do I have to set simulate physics on the table?

#

Interesting. Physics is being disabled when I start the game. Hrmm

empty sundial
#

The motion controllers are simply meshes attached to your motion controller input. They are being explicitly moved by your input. They won't collide with anything

#

Physics objects will react to them because they are solid but static collision will not.

#

Because the implicit instructions to the motion controllers and the meshes contained are 'stay attached to the controller input no mattrr what.'

#

To get a physical simulation of hands you need to rewrite how the meshes move with your controller. And understand that doing so can cause issues (like 'losing' a hand)

scenic slate
#

If i'm about to create openable drawers, i guess it would just work that the mesh is attached to motion controller and then movement is constrained with right vector and clamped with forward vector? Is anybody done it?I cannot test my theory right now ๐Ÿ˜›

#

and with doors, it could be that the door is rotated towards the motion controller, so it would naturally follow the arc

graceful junco
#

Check out Mitch's VR example. Iirc he has done drawers https://forums.unrealengine.com/showthread.php?111074-VR-Content-Examples

#

You might also be interested in checking out that project @digital marlin . Mitch has also done a nice way to grab objects and not have them clip into walls or each other. He's setting the location each frame with sweep. I'm mainly using that for my project. Physics handles are not really nice. Objects lag behind a lot.

scenic slate
#

Thanks, gonna check that out

umbral imp
wicked oak
#

gives you events

#

for hmd out of bounds and stuff like that

umbral imp
#

ah thanks, still looking for the best way to do logging to the screen in VR, only have it half working with my own code

#

so was digging through what they had to see if anything would help

digital marlin
#

@graceful junco I was checking Mitch's stufff out late last night.

#

I think I fundementally have a misunderstanding of colliders.

#

@umbral imp I read yesterday about creating a text render on your pawn / VR camera and routing all strings through to that.

#

That way it shows up on your pawn in the middle of the screen and not 10 cm above your head.

umbral imp
#

@digital marlin yes but what if you have multiple log entries that come right after eachother? They just overwrite the previous entry too fast for you to read them

digital marlin
#

append to an array?

graceful junco
#

Instead of printing to the screen once, you could create a function in a BFL which prints it 10-20 times so you can read it on the far left of the screen. Someone suggested to create a function to print a bunch of returns and spaces before you print the actual string to the center of the screen. That doesn't help though if you print several strings quickly after each other.

digital marlin
#

whoa, Mitch's interaction example is batshit insane.

graceful junco
#

Sometimes playing a sound for debugging is easier than printing a string to the screen.

odd garnet
#

@digital marlin you could also check out the plugin by modentral called VR Expansion Plugin

#

I know his has a drawer you could look at

digital marlin
#

Coolio. I'll check it out

odd garnet
#

Also I think I had a great idea.
is there anyway I could make a spectator pawn, attach a motion controller to that, attach a camera to that motion controller, and then have a that pawn act as a mixed reality camera like fantastic contraption or something?

#

Please @me so I can see it if you have an idea. This chat can get crazy sometimes

storm vortex
#

@graceful junco The biggest risk with sound for debugging is if you leave it and forget it can be difficult to find sometimes. I had a sound playing that I was stuck with for a while because I reuse the same debug sound and forgot to move it. Was days of this sound till I finally came across it again D:

#

I didn't know a good way to search for it either

graceful junco
#

Hmm, you could just search for the play sound node, but you'll find all of those nodes, not just the one playing that one particular sound. Or you could wrap playing the debug sound into a function so you can search for that function later.

storm vortex
#

That's a good idea, I like wrapping it in a function

digital marlin
#

Wouldn't a MoveTo Component Sweep be really expensive if performed on many objects?

#

Or am I just being overly cautious with performance?

#

Side question - is it worth the hassle of implementing the Unreal 4 VR editor?

graceful junco
#

"if performed on many objects" Well, for thousands of objects, probably. For one in each hand. nope.

digital marlin
#

And I guess most objects are going to have some form of collision enabled, right?

#

Even if it's just query.

graceful junco
#

Yes, but you need physics enabled, not just query if you want the objects to collide with each other/the world.

digital marlin
#

Hmm yeah good point.

clever sky
#

I was trying to do a physics hand last night too.

#

It's toughhhhh

#

But... when it works, it's pretty awesome.

#

Or rather... the bits where it works, it's really promising and presence enhancing.

#

But also it'll spaz out a little too often.

digital marlin
#

@clever sky Like, your hand collides properly etc with objects?

clever sky
#

properly is a bit of an overstatement.

digital marlin
#

heh

clever sky
#

But yeah, got some hand collision going on with the world.

digital marlin
#

You using line tracing?

clever sky
#

I mean, it's easy enough to do one way collision

#

But having the world push back is much harder and buggier

#

with the approach I'm doing

#

So maybe it's not the right approach - using physics constraints

digital marlin
#

o rly?

#

I haven't looked into that.

#

One way I'm checking out is by invoking a test on-overlap.

#

and then stopping movement if it's detected.

#

I'm trying to emulate a hammer hitting a piece of metal on an anvil. It's quite the mofo.

#

Though I'm learning some basic stuff about collision, so I guess that's good.

clever sky
#

Oh, so your primary goal is to simulate physics on grabbed objects?

#

Yeah... the constraint approach probably won't work.

#

But... VRExpansionPlugin does have the goods there.

graceful junco
#

My whole game is based on grabbing physics objects and interacting with them. The VRExpansionPlugin grabbing styles are good, but not perfect. Basically what you want when grabbing is what Mitch did, setting the location each frame with sweep on. But then you also need to switch to a physics constraint if you hold one object and place another object on top of that. That's kind of what the VRExpansionPlugin does. Not sure how exactly it's done in code in the VRExpansionPlugin, but it wasn't smooth enough for me. I'm switching between sweeping each frame and physics constraint at run time, based on whether my object gets hit from above or not. Works really well for what I'm doing.

#

Grabbing kinda depends on your game though. Simply attaching, physics constraints, physics handles, sweeping, or a mixture of several of those, there are lots of options.

digital marlin
#

Yeah that's what I'm exploring

#

Whilst I'd use the VR expansion plugin, I'd rather know exactly how it works.

#

It'll be painful, but at least I'll come out with some better idea of how it's working.

#

With Mitch's demo though I couldn't get grabbing to work 8(

clever sky
#

@graceful junco Which one of mitch's demo has the grabbing example? Or all of them?

graceful junco
#

I also found that mass is quite important. You probably want to set the mass of the grabbed object to a value, which enables you to push other objects in the world around, but not too high, or else you introduce jittering/other bugs when colliding.

clever sky
#

And did you get a physics hand thing happening with push back on the hand?

graceful junco
#

pretty sure the grabbing is in the VR World Interaction example

clever sky
#

Cools

digital marlin
#

Yeah I think he uses it for the whiteboard

graceful junco
#

all the logic is in the PickupSceneComponent

clever sky
#

Good stuff.

graceful junco
#

What exactly do you mean by "push back on the hand"?

clever sky
#

So if you try to put your hand through a wall, the wall will stop it.

graceful junco
#

Well my "hands" = vive controller meshes have no collision. It's weird trying to stop hands from going through walls. Your hands in real life would be somewhere else than in VR. But, if you grab an object and try to push that through a wall, it gets stopped. That's what sweep does.

clever sky
#

I like this sweep thing you keep mentioning...

#

But also, not sure how to activate it?

graceful junco
#

hang on

#

Mitch's example only has the location, I added the rotation myself.

digital marlin
#

This is a newb question.

clever sky
#

Nice work. Thanks a lot for that.

digital marlin
#

So if I move my hand forward - what sweep does is calculate the direction before it moves, yes?

clever sky
#

Should make my own physics exploration easier when I get to it!

digital marlin
#

and gives me a trace that determines if any other collision bodies are in the area of the sweep/

#

?

clever sky
#

Been working on hand/physics stuff, but I should really just get my locomotion demo out ๐Ÿ˜›

digital marlin
#

so if the trace sweep is like.. within 0.4 cm of my object, I could detect that and prevent movement of my actor to prevent my hand / object going through the thing?

graceful junco
#

I haven't had a look at the engine source to check how exactly sweep is done. The documentation says "Whether we sweep to the destination location, triggering overlaps along the way and stopping short of the target if blocked by something."

#

Sweep already stops the object when colliding with something, you don't need to add that logic yourself.

digital marlin
#

Hrmm

#

Sweeps it is!

#

Hrmm reading through Martin's stuff - there's a lot going on.

odd garnet
#

Multiplayer is 50% working right now

We can see each other but the client isn't "seeing" the actor being picked up.

We're using the VR Expansion Plugin by modentral.

Super cool tho, I can see my friend in virtual space ๐Ÿ˜ฎ

real needle
#

Make sure the actor is set to replicate, and replicate movement. And make sure that the pickup is called on the server

#

Check the output log for error message

digital marlin
#

So Martin is able to maintain collision via simulate physics, but removing gravity, and upping angular and linear dampening

#

Would that work?

odd garnet
#

My actor replicates

All other values work too: movement, health etc

clever sky
#

Oh man. Martin's stuff is excellent in a lot of ways.

#

And yessss. It has a white board!

#

I'll have fun modifying that stuff.

digital marlin
#

Does he work for Epic?

#

Or is he just a genius bro dog ?

clever sky
#

Genius bro dog

#

AFAIK.

#

Also looking through his code makes me feel inadequate about mine ๐Ÿ˜›

#

'Oh man??! You could do that??'

#

One thing I don't quite get is...

digital marlin
#

I just look at it and get sad.

clever sky
#

how does the line trace determine the collision?

digital marlin
#

Sweep?

#

I want to say the linetrace returns results akin to a sweep based off the object you're hitting's collider settings.

#

But I'm just guessing / hedging bets.

clever sky
#

The part that says 'Trace to see if there is anything in our way'

digital marlin
#

screen shot?

clever sky
#

So it does a trace...

#

then it uses a force application to move the object

#

if it's been blocked?

#

But it's a line trace...

digital marlin
#

maybe it's due to the Trace Channel being camera?

#

Actually I have no fucking idea what's going on there

clever sky
#

I'll have to experiment more with it by taking out parts

digital marlin
#

is the line trace between the hand mesh and the object he's holding?

clever sky
#

Yeah it looks like it

digital marlin
#

So, if the something collides between the mesh and the object then push back?

clever sky
#

Ah

digital marlin
#

that kinda makes sense - but wouldn't it go through something and bounce back REALLY quickly?

#

maybe too fast to notice?

clever sky
#

that's what it does.

#

Without the code it'll just keep moving out

#

with the code it has a magnetic attraction back to your hand

#

even though its been stopped.

digital marlin
#

That's kinda clever.

clever sky
#

Yeah.

digital marlin
#

...

clever sky
#

Exactly what I need ๐Ÿ˜„

digital marlin
#

Well... I guess I'll just end myself now.

#

Same.

clever sky
#

Hahaa.... been trying to do this stuff on and off for a while now.

digital marlin
#

I think we're working on similar ideas - at least components.

clever sky
#

Good thing I'm not in a 'I'm seriously doing this hand physics stuff right now' phase ๐Ÿ˜›

#

Probably the only thing saving me from tearing my hair out!

digital marlin
#

Ah that's me at the moment. I want to try and get as much done before I start work.

clever sky
#

Ok. So Mitch's stuff is a good starting point.

digital marlin
#

hmm - why does Martin apply gravity though?

clever sky
#

But what I need is for objects to pivot

digital marlin
#

Why not just simply set the location

clever sky
#

from the hand

digital marlin
#

pivot, like move left or right?

#

like squishing something against a wall?

clever sky
#

Like the hand is the pivot point and then the tip gets moved against colliders

#

Ideally that's what you'd want.

#

Anyway. Gotta stop procrastinating and get back to my real stuff! ๐Ÿ˜›

wintry escarp
#

is minecraft gear vr anywhere near as good as normal pc minecraft?

storm vortex
#

I would guess not since you cannot do mods.

#

Anyone else using the VRExpansionPlugin? I've got a question about proper settings to reduce lag.

#

When waving my gun around very fast the gun seems to lag from the hand. In strange directions too. For example if I move my hand really fast from left to right the gun gets ahead of the hand and separates. Is there some way to parent the gun to the hand so it will always be 1:1. I don't care about having the gun bend if you push it into a wall.

digital marlin
#

Sorry icecreammatt

#

No idea

#

Anyone have any idea on how to stop an actor moving once a line trace has been hit? Should I just use a bool variable to trigger it off and on?

storm vortex
#

@digital marlin You could get it's current world location at time of impact and then set the world location to that position. You could disable physics to freeze it.

digital marlin
#

That's a solid idea @storm vortex

#

the way I've done it is kinda like that - I'll post it in a tick.

storm vortex
#

I don't know the whole context of what you are doing, but you might want to enable physics again afterwards if you want it to move again

digital marlin
#

physics is for the devil

digital marlin
#

Can you attach a component twice to the same socket? Or does it just override it?

#

Like if I've got something attached to a socket, can I re-run AttachToComponent?

storm vortex
#

I think it just adds it to the stack

#

@digital marlin

digital marlin
#

Ah ok

storm vortex
#

I handle my inventory similar to that. I have an area of the body that you can drop an item on and it attaches to the component.

digital marlin
#

I tried detacting and reattaching and that's not a good idea heh

storm vortex
#

I'm using multiple items to teh same component if you attach the same one twice im not sure what would happen

digital marlin
#

*detatching.

storm vortex
#

Also in case you were curious I fixed my issue with the lag

digital marlin
#

oh?

#

what was the issue?

storm vortex
#

Instead of parenting the weapon to the controller which was really the controllers scene component, I needed to get the owner and parent to that. Lag is totally gone now. ๐Ÿ˜ƒ

#

Previously I didn't do that cast to the owning motion controller, I just used the object directly on the attach to component

digital marlin
#

Controller == MC?

storm vortex
#

yeah

digital marlin
#

Odd that it would cause lag?

storm vortex
#

I think because it has to update the scene component with each tick, and since im updating the weapons location based on the scene controllers location it probably is one tick behind, the strange thing is it would get infront of the weapon not lag behind like i would expect

#

I'd make a video to show you, but anytime I enable the Nvidia shadow play or that tool it likes to knock out my wifi which is annoying.

digital marlin
#

lol

#

Aren't computers just the best

storm vortex
#

I'm very close to being able to put together a quick demo video. Just a few more minor details to adjust.

digital marlin
#

oh but that's cool

#

Unreal has a 'Reset Transform' which has helped me out here in a big way.

storm vortex
#

I burned about 2 weeks refactoring to use that VR Extensions Plugin, but for what it gives it was totally worth it.

#

Mostly wanted it for keeping the camera in sync with collision mesh and a simple grabbable component, but refactoring all the items to make use of it took much longer than expected. Oh well cleaner code each time you rewrite. ๐Ÿ˜ƒ

digital marlin
#

That's true

#

Any idea how I can prevent the bouncing you get when one mesh is clipping another?

storm vortex
#

I disable mesh collisions on things that I have that happen with

digital marlin
#

Hrmm

#

So if I freeze my object, then disable the collisions

#

it shouldn't keep trying to penertrate

#

penetrate*

storm vortex
#

You should also disable physics

#

I usually disable and enable collisions and physics in pairs in most cases depending on what im doing

digital marlin
#

Yeah they're disabled.

#

I think it's just the physics

#

gah

#

The collision

#

ohhh

#

Nope. It's my shitty way of doing things.

#

Gonna try and just freeze things until the component is swept away

silk lodge
#

I'm gonna try a VR locomotion setup where you strap 2 extra controllers to your legs and run in place

#

I'll call it something cleverโ„ข

storm vortex
#

I hope at CES we get something like kneepads that have sensors on them for the Vive. Something for the Rift like that too would also be cool. We don't need more fragmentation than we already had before it finally got motion controllers.

digital marlin
#

ah they're half way there with the kinect.

clever sky
#

I want to do the fancy fancy with my inventory.

#

Like have a sword scabbard.

#

That you have to slide the sword into.

#

Not sure the best way to approach that though.

#

Maybe just mimic some of the motion, not all of it.

#

Because trying to slide a full length not actually physically there sword into a full length not actually there scabbard is like... bad VR-ing.

digital marlin
#

Yeah that'd be a pain TBH

#

How'd you go with your line trace stuff Zap?

storm vortex
#

@digital marlin I never thought about that, using the kinect to track leg movement. You could easily have a jog in place to move around. That would be pretty cool. I might have to dig out my old PC kinect ๐Ÿ˜ƒ

clever sky
#

@digital marlin Ah, I was just wondering what it was for. Figured it out when I was talking to you earlier ๐Ÿ˜„

#

@storm vortex Just putting together my vid to introduce my locomotion system. Involves walking in place. Footage is very convincing. Looks like go-pro footage of a person running.

#

Doesn't use any leg tracking, but just as good IMO.

storm vortex
#

I read you saying something about a new walking system the other day. I'm curious to see what you came up with. My main / favorite method of locomotion is the arm swinging that Art of Fight uses. That's what I'm trying to emulate with my game. With teleportation and slide movement as alternatives.

clever sky
#

Ah yeah.

#

Art of Fighting/arm swinging locomotion is ok for reducing vection

#

But it's not great for immersiveness IMO.

#

Like... maybe a notch above slidey locomotion

#

But actually, I use a bit of arm swinging to help moderate the speed of motion.

#

So I guess in that sense, I have some arm swinging going on too! ๐Ÿ˜›

storm vortex
#

I'm going for something a bit inbetween immersiveness and ease of use

#

I feel like the Art of Fight is really easy to use, at least for me to quickly move around shoot stuff with lots of control and precision.

#

I have a difficult time aiming with the slide movement as it is too sudden. (Probably my poor settings for it)

#

Not to mention it makes more more dizzy

#

And then teleport is the ole standby

clever sky
#

Yeah fair call. I'd do it that way too if I weren't all about the stuff I've done ๐Ÿ˜›

graceful junco
#

@digital marlin There's a setting in the project settings, which determines how fast physics objects are allowed to depenetrate, meaning get pushed apart when they overlap.

neon egret
#

Hey peeps, discussion about the Window Mirror, it's Resolution and UI for it: https://forums.unrealengine.com/showthread.php?132554-Preview-Window-Independent-resolution-and-UI

Would be nice if you could look into it, share your knowledge and leave an up-vote

full junco
#

hope that HTC or valve has something similar

mighty carbon
#

why do you care for Vive and Rift to have same features ?

full junco
#

I care for htc/steam being ahead of anything that facebook does

mighty carbon
#

politics

#

probably as bad as Daydream controller

storm vortex
#

I hope HTC/Valve stay ahead of the Rift too. Mostly cause I don't like Facebook, but really I want them to have feature parody so games don't end up as exclusives for each platform.

#

Also Nolo looks pretty cool. I isn't the refresh rate on most phones locked to 60 though?

dusky moon
#

Has any1 tried this very underrated feature "Stereo Layer" ?! seems like theres no documentation for it

full junco
#

@dusky moon never heard of that, what is it?

dusky moon
#

@full junco It's a component which seems to be useful for VR HUD .. it renders your HUD in a separate pass

full junco
#

what kind of HUD? widget components?

dusky moon
#

I just saw the component called "Stereo Layer" in blueprints and don't know shit about it ๐Ÿ˜„

#

would be nice if any1 can explain!

wicked oak
#

it renders a texture with the HMD API

#

that makes that texture not render alongside the "world"

#

and it is outside timewarp shanenigans

#

it works

#

you can add a texture to the camera, parented, and that texture will allways be 100% centered and not jittering even if the world outside is lagging

#

my problem with it is that i wanted to use UMG for that. And i actually did get it working

#

but it would use a black background for that texture

#

so instead of being a screenspace healthbar, it was a healthbar, and a huge black rectangle

dusky moon
#

ah I just made it as a child of my VR Pawn's Camera and added a texture but doesnt show anything for me

wicked oak
#

right now, its absolute best use is to use it for a pointer

#

have you moved it forward?

dusky moon
#

yes

wicked oak
#

if its too close to the camera, it will get culled

#

is it a big enough size?

#

and set as "camera space"

dusky moon
#

@wicked oak doesn't even show the texture assigned inside editor.

wicked oak
#

doesnt do that for me either

dusky moon
#

hmmm and what did you mean by camera space ?

wicked oak
#

there is an option

#

if you want the "layer" to be on camera space, playspace space, or world space

#

if you are parenting the stereo component to the camera, it has to be on camera space

#

if you are parenting it to the Pawn, then playspace thing

#

or tracking space

#

dont remember the exact word

dusky moon
#

ah yeah it's Face Locked / Tracker Locked / World Locked

#

I'm on face locked but still ...

full junco
#

@wicked oak it can be in world space?

wicked oak
#

yes

#

but that depends on the device

full junco
#

it renders a texture in world space outside of the world?

wicked oak
#

all devices support face locked

#

others im not sure

#

but yeah, its to render textures around

full junco
#

I would love to have widget components rendered like that

wicked oak
#

too bad my UMG rendered one was a black background ๐Ÿ˜ฆ

#

tried to fliddle with a bunch of settings, but nothing

full junco
#

the major problem I have with TAA is that widget component text is unreadable

wicked oak
#

not really

#

MSAA does nothing on it, FXAA just blurs it

#

the thing with the layers is that they are not touched by the TAA or anything

#

they go through Oculus/SteamVR SDKs

#

and are pretty much completely out of the engine

full junco
#

yeah thats why I would love to have widget components rendered like that

wicked oak
#

yeah

full junco
#

TAA would not make it unreadable then

wicked oak
#

but nope, black background

#

you could supersample those

#

not sure exactly how, but it is possible on the sdks, at least natively

full junco
#

supersample what?

wicked oak
#

the textures for the text and stuff

#

so they dont look so aliased

dusky moon
full junco
#

but its not textures, text in UMG is just text

wicked oak
#

have you tried to use separate translucency on the UMG material?

dusky moon
#

maybe you should change the compression of the image

wicked oak
#

they are textures

full junco
#

well ok no idea how text is stored

wicked oak
#

a UMG widget renders the UMG thing into a texture, then draws it on a quad

#

or not quad

full junco
#

yeah makes sense

wicked oak
#

you can go to the material for the UMG widget, and set it to use the separate translucency

#

separate translucency doesnt get TAA-d

#

btw, the layered thing doesnt show on preview

#

it ONLY shows on the headset

full junco
#

oh, seperate translucency doesnt?

wicked oak
#

it doesnt

#

thats the point of it

dusky moon
#

YES 1 got it working

wicked oak
#

it gets rendered outside the "world" and then added

#

is also doesnt get post processed

dusky moon
#

I changed the compression of the texture to "User Interface 2D" and the mip group to UI

#

and it also works with transparency

full junco
#

youre talking about the stereo layer stuff now or about seperate translucency @wicked oak ?

wicked oak
#

separate translucency

#

i did got it working, but with black background....

#

i was using a render target texture, and rendering the widget to it

#

with FWidgetRenderer

full junco
#

I thought you talked about stereo layer when saying you got a black background?

wicked oak
#

it was a code snippet i found around the net

#

yes

#

black background was with the stereo layer

full junco
#

and you did get a black background with seperate translucency too?

wicked oak
#

for higher quality UMG text, you can set it to separate translucency on its material

#

no

full junco
#

you said

#

"separate translucency
i did got it working, but with black background...."

dusky moon
#

ah your black background is because you wanted to use them with widgets ?! because it seems fine with textures

wicked oak
#

yes

#

i was rendering a widget into the texture

dusky moon
#

well that would better be a feature from unreal

#

but the nice thing is ... the text rendered through it is super sharp and readable

wicked oak
#

yeah

full junco
#

@wicked oak my widget material is already set to seperate translucency

#

and its still completely affected by TAA

wicked oak
#

uhmm

#

let me check

full junco
#

the tooltip for seperate translucency says "not affected by DOF", but it doesnt mention anything else

#

so someone from epic in the forums says

#

Layerd Stereo Rendering lets you send a separate texture to the runtime for the VR headset, and have it reprojected on it's own. It's useful for things like UI, where you want to attach to the head and run through a separate pass than the rest of the game. Imagine a good use case as some UI that you want to display to the player as a quad right in front of them. You'd use stereo layers to do that. The advantage of doing it that way rather than attaching a component to a camera is that it gets composited on as a separate pass, which means it doesn't go through anti-aliasing / post, etc.

#

so it can be used for UI

wicked oak
#

true, TAA still affects it. I was wrong

#

btw @full junco what that answerhub does with the widget is similar to what i do

#

but i get black background

dusky moon
#
  • with that approach I'm afraid it also costs alot to capture widget and re-render it again
full junco
#

well a black background isnt too bad, then just make the text on the widget white

wicked oak
#

i do

#

but its a face locked HUD, that shows the game stats...

#

so its huge

#

i keep it transparent most of the gameplay, until you finish a round and it gives you your score for a while

#

or things like "X killed Y"

#

being black means i cant see shit

full junco
#

hm well in my case its small and can be fully opaque

wicked oak
#

perfect then

#

you can try it

full junco
#

yeah I should try it

wicked oak
#

i use a snippet. Ima copypaste it

#

void UDWGameplayStatics::WidgetToTexture(UUserWidget * Widget, UTextureRenderTarget2D * Texture)
{
if (Widget && Texture)
{
FVector2D TextureSize(Texture->GetSurfaceWidth(), Texture->GetSurfaceHeight());
FWidgetRenderer * widgetRenderer = new FWidgetRenderer();

        TSharedRef<SWidget> swidget = Widget->TakeWidget();
        widgetRenderer->DrawWidget(Texture, swidget, TextureSize, 0);
        delete widgetRenderer;
    }

}

#

just that

full junco
#

I dont really understand what the guy on the answerhub does

#

he does more

wicked oak
#

renders a UUSerWidget into a texture

dusky moon
#

I'm actually thinking about using this technique for Vision tunneling ...

wicked oak
#

he also sets up the render layer

#

this just renders the widget into a texture

#

you need to create the texture asset and stuff with this node

full junco
#

ah, but dont you think that is why you see it being black?

#

he sets WidgetTarget->ClearColor = FLinearColor::Transparent;, maybe thats just still black for your texture?

wicked oak
#

uhm, that makes sense

#

but i think clear color is transparent black by default

#

gonna try with that clearcolor thing

#

ill be back with results

full junco
#

ok

spring pond
#

hmm I updated the firmware on my lighthouses at home and now one of them blinks red and says "fault 02"

#

if i roll back 2 firmwares it doesnt do that and tracks just fine all by itself (in "A" mode)

#

I can see all the lasers/LEDs when i point an IR cam at it too

odd garnet
#

2 players using 1 lighthouse set ?

spring pond
#

nope this is my home one

#

just me

#

looks like maybe their are new diagnostic features in the newest firmwares and my lighthouse things something is wrong (even though it appears to work fine)

#

maybe I'll RMA if under warrenty, but that sucks

#

I don't use it often at home on account of working with them all day at work

real needle
#

@spring pond Are they consumer or pre?

spring pond
#

consumer

real needle
#

Hm

spring pond
#

Day 1

real needle
#

Seems like an RMA to me :/

spring pond
#

yeah, hopefully its still covered...

real needle
#

Or just wait for next firmware update. Have you checked steam hardware forums?

spring pond
#

browsing those and my logs now

real needle
#

Since it works well with older firmware, it could actually be a bug you know

#

So if you don't see anyone else with the issue, write a post before you RMA

spring pond
#

yea, especially since even standalone with the one base station everything works fine

wicked oak
#

all test fails

#

still black background

#

even with the clear stuff

#

even if not rendering, and setting the texture as clear only

#

still black

#

and chroma texture also doesnt work

full junco
#

hm

#

whats the "StereoWidgetRenderer" that the guy calls?

wicked oak
#

you can try yourself, if you manage to get it working, tell me how

full junco
#

just create an FWidgetRenderer * widgetRenderer = new FWidgetRenderer(); somewhere?

wicked oak
#

its a FWidgetRenderer

#

yes

spring pond
#

i had a bunch of alpha problems doing RT targets

#

I think I had to send the alpha as RGB to a mask texture and copy by hand the alpha channel

#

that or it ends up inverted. A being normal or 1-x is totally dependent on the number of operations that happen to the RT

dusky moon
#

If I want to change World to meter scale , can I also make it affect my Pawn's scale ?! or should I scale everything else myself ?

full junco
#

@wicked oak what do I need to include for FWidgetRenderer?

#

I tried #include "Runtime/UMG/Public/Slate/WidgetRenderer.h"" but I get some errors with that

#

do I have to add modules or something like that?

#

ok, added "UMG", "Slate" and "SlateCore" in the build.cs as modules, that mostly fixed it I think

full junco
#

@wicked oak ok I set all the stuff up now, only need to test it

wicked oak
#

see if you get black background

full junco
#

I see nothing

#

ok forgot to set it correctly

#

hm no, still see nothing

#

@wicked oak how have you set it up to see something?

digital marlin
#

I think I've found the least painful dev environment

#

I've setup a box behind me that's roughly height and then use controllers

#

It looks as retarded as it sounds

silk lodge
#

lol

#

I've been using simulate a lot today.

digital marlin
#

It's annoying as hell constantly putting on the headset

#

Is there a way to define custom collision boxes?

#

I assume there is.

zinc violet
#

ONLY 15% are going to buy VR

#

if 15% of all players got VR, that would be huge

digital marlin
#

lol

#

There's no way VR is turning anyone a profit any time soon.

#

I doubt if HTC or Valve have made money on it.

#

We need headsets to go the way of the mouse or monitors. Varying levels of quality, but overall pretty standard across the board.

#

We need ubiquity

zinc violet
#

instead we get more exclusives ๐Ÿ˜ƒ

digital marlin
#

hooray 8(

#

I guess it'll be a battle of innovation for a while.

storm vortex
digital marlin
#

what's the fix for? (I'm not logged into github)

real needle
#

@storm vortex I've actually been assigning left/right to each motioncontroller component at runtime depending on where they are

storm vortex
#

Do you just look at their position relative to the HMD?

digital marlin
#

@real needle oh that's clever

real needle
#

Then doing some inputremapping

storm vortex
#

I read other people doing some stuff like that too.

real needle
#

Keeping them as "Main" and "Off"

#

Instead of left and right

digital marlin
#

god damn

#

that's a great idea

storm vortex
#

I'll probably just wait for 4.15 to save myself the trouble, but that's great you have that working.

real needle
#

The inputremapping took a while to get right, but it allows for a lot of flexibility

#

Say I only want menu on the main controller, I only rig that event on "MainShoulderInputEvent"

digital marlin
#

I wonder if that's immersion-breaking, assigning specific hands to things

storm vortex
#

It took me a long time to catch on that it was Unreal games specifically that always forced me to remove the controller strap to swap hands.

digital marlin
#

Then again, it's a pain in the ass swapping hands all the time.

storm vortex
#

I prefer it when games let you pick what hand to do what. Not a fan of them locking items to one hand or another.

#

Might be cause I'm left handed though

digital marlin
#

heh

#

Can you have classes of classes?

#

Class A -> Class B -> Class C ?

#

I assume you can, but not sure if it'll work with BPs

mighty carbon
#

gamers showed no interest in VR because there was no games in VR that can rival desktop games

digital marlin
#

@mighty carbon True.

#

@mighty carbon I think it'll get better with time.

mighty carbon
#

I don't even mean graphics. I mean depth.

digital marlin
#

I mean the "games" are really just simple arcade experiences.

#

With physics off, there's no way to determine the force of an impact is there?

#

contextually speaking, within an Event Hit on an actor.

#

Nevermind, just answered my own question

storm vortex
#

@digital marlin you can have classes like A->B->C

umbral imp
#

So I created a new BP Class, called it "Grippable static mesh", gave it some variables like "ToggleGrip" and "DoubleGrip". Then made a child BP of "Grippable Static Mesh", and was able to easily set and access those variables by casting to that class, things worked great.. until I realized that the "Root Component" was screwing up the grip and drop interfaces

#

Is there anyway to not have a root component? I tried attaching to the root component instead, but that doesn't work.

storm vortex
#

@umbral imp are you using the VRExtensionsPlugin?

umbral imp
#

No, the default vr template, and looking at the Extensions Plugin

storm vortex
#

I switched all my custom stuff to use that plugin. The plugin is really nice and takes care of a bunch of stuff for you.

#

It was a pain for me to get it working at first, but once I did totally worth it

umbral imp
#

I know, but I've never used BP, and since I need to understand how it works I decided I had to build from scratch.

storm vortex
#

I had to make all my things I pickup subclass from GrippableSkeletalMesh or GrippableStaticMesh class

#

That plugin is written in C++

#

But you can mix and match it

umbral imp
#

Yeah I've also never done C++

storm vortex
#

I agree with building from scratch though, I learned a bunch doing it on my own before I used the plugin.

#

So if you haven't done C++ and never used BP what are you using?

umbral imp
#

I'm using BP currently. I'm actually an 3D modeler, but we are short on programmers currently, so learning BP

storm vortex
#

ah got it

#

To answer your question, instead of having a root component if you are using skeletons you can add a bone and grip to the bone instead

umbral imp
#

I looked at the "Grippable Static Mesh" from the plugin, but it was implemented in C++, but it didn't look like the class I setup in BP

storm vortex
#

In the case of static meshes I'm not sure a good way to fix that. I need to figure that one out myself still

umbral imp
#

Not sure how they changed that

storm vortex
#

The mesh in the Plugin you can just subclass into a blueprint

#

Look at how the weapon is done in the example project

umbral imp
#

ah, if you subclass something does it allow you to change the default root component?

#

default scene root

storm vortex
#

I don't think so

umbral imp
#

For theirs it apparently did... or their base one didnt have a scene root

storm vortex
#

yeah, their base class might not have a root or used an actor I think

#

I haven't tried switching the root in it though

umbral imp
#

I just can't attach the default scene root to my hands

storm vortex
#

See if you can attach the mesh inside the scene

umbral imp
#

I can, no problem, but then I can't drop it.. due to the way they have the controller BP setrup

storm vortex
#

Object->Get Static Mesh-> ----- Assign to Target
Hand Controller ->> Parent

#

or other way around

#

To drop the item keep a reference to it when you attach and then call detatch when you are ready to drop

umbral imp
#

one sec, I'll show you the problem, let me upload a screen

#

That is from the controller BP, you notice it grabs the root component

#

and if it matches what the controller has... sends a drop command... well, my root component is not attached

digital marlin
#

Can you post your heirarchy?

umbral imp
#

You mean the BP heirarchy for my custom class?

digital marlin
#

yeah

#

is there anyway to measure the impact of an actor that has simulate physics turned on against the impact of an object that has physics turned off?

#

I don't understand how it can react with physics yet there's no way for me to get the force that's being applied on hit - unless there's something I'm missing.

umbral imp
#

Hmm, might still be confused, but the Parent Class of the GrippableStaticMesh is "Actor"

storm vortex
#

Sorry, from your screenshot I don't have enough context to understand whats going on

umbral imp
#

So that is the release actor interface.. it gets the attached actor (to the controller), then gets the ROOT component of that actor (in this case the "Default Scene Root"

storm vortex
#

That makes sense to me apart from your comment do not drop

umbral imp
#

sry, ignore that, just some debugging commands

storm vortex
#

what does the drop function look like

umbral imp
#

the VRDebug Print is not important at all

#

That function never fires.. I never get the debug to print for this

#

again, because the drop interface is never called

storm vortex
#

@umbral imp your drop function looks fine, there must be a bug with what you are comparing against in the caller

#

maybe don't try to check the motion controller and just call drop to see if that works

#

I always like to make stuff less restrictive to make it work and then tighten the rules

umbral imp
#

I know it will work then, but then I have to code around it for if I'm swapping stuff between hands

storm vortex
#

you should print the value of what the attached parent is to confirm it actually is the motion controller

#

i've run into issues where i was getting what i thought was one thing but was really off by one parent level

umbral imp
#

Did that already, it is the motion controller

storm vortex
#

i think there is a way you can print the string value of a class

#

ah

#

i'm not sure then, sorry

umbral imp
#

np. THe issue is when it calls the root component (default scene root) and tries to get the attach parent.... well it has none.. so it fails, so the EQUALS check fails

#

that is why I REALLY want to get rid of the default scene root

#

or replace it somehow

storm vortex
#

Can you use a plain actor instead of a scene component?

#

(assuming that you are using a scene component)

umbral imp
#

How do I do that?

storm vortex
#

Whatever item you are picking up, have that subclass from actor and add a skeletal mesh to it. Then you won't have a root component

#

I might be confusing the differences though

umbral imp
#

hmm, okay I'll look into that

#

@storm vortex Huh.. well IDK why I did that, but my BP was a child of "Actor" not "Static Mesh Actor"... I think changing that might fix it.

storm vortex
#

yeah that might help

full junco
#

@wicked oak what I do notice is that my widget breaks when I start drawing in on that stereo layer, but I don't see anything on the stereo layer

#

stereo layer also doesnt work when just adding some regular texture

full junco
#

ok I got it working with a test texture in the character blueprint, but only face locked, not world locked. world locked shows nothing

mighty carbon
#

@pearl tangle Could you please tell us what are the primary markets for Gear VR ? I assume USA, EU, Asia (probably S. Korea, Singapore, and maybe a few other) and Australia are the largest Gear VR markets. Would that be a correct assumption? Could you provide any more details ?

real needle
#

@umbral imp Just replace the default root with a scene component. It gets removed automagically if you set something else as the root

umbral imp
#

No it doesn't, it is inherited and cannot be replaced

real needle
#

Which class are you inheriting from?

umbral imp
#

Actor, that was the issue, don't know how that happened, but I changed it to static mesh actor, now I can replace it, and it works fine

real needle
#

If you just go Right Click in content browser, make blueprint class actor, then you can remove the root

#

You must have inherited from an already created actor

umbral imp
#

I can replace the root on THAT, but I was creating children BP where I could not replace the root

#

I can do that with Static Mesh Actor BP though

#

well, I can SET the mesh

#

not replace, but that is all I needed to do

real needle
#

Make an actor, set it's root component to be Static Mesh, and then on each childBP you just replace the mesh

umbral imp
#

Okay, interesting, is there a distinct advantage to being under the actor class directly instead of under the "static mesh actor" class?

real needle
#

The static mesh actor is what it's called, an actor with a static mesh as it's root

digital marlin
#

jesus, the way I've done this hit stuff is so convoluted.

umbral imp
#

Ah, currently my heirarchy is "Actor->StaticMeshActor->GrippableStaticMesh"

real needle
#

Ah you're using the VRExamplePlugin?

umbral imp
#

I don't see an issue with that exactly

#

I'm not, but I literally am ripping everything from it. I am new to BP (and Unreal) so I didn't want to use it without understanding how things work

real needle
#

That's a good thought, but most of the logic in that plugin is custom blueprint classes so there's not much you would be able to "rip" without it

#

I would have a look at Mitch's VR content example

full junco
#

@wicked oak it seems setting the stereolayer location doesn't work, it just stays at whatever location it is when I start the game

umbral imp
#

Yeah I noticed that, also I have heard of Mitch's VR content, haven't checked it yet

real needle
#

@umbral imp I would highly suggest you do, the VRExamplePlugin is a little bit more complicated

#

And mitchs example doesn't use any plugins (afaik)

#

So therefore better for you since there will be official documentation for each node

umbral imp
#

Okay, because the VRExpanded one is super complicated and hard to follow for me

real needle
#
digital marlin
#

Yeah Mitch's stuff is very clever.

real needle
#

Also, there's an official UE4 stream based on picking up objects

digital marlin
#

Someone should just release a book of blueprints w good documentation.

real needle
#

The concept of using interfaces for blueprint communication is great and something you should know going forward

full junco
#

you dont need interfaces, they are just annoying

real needle
#

@full junco What would you do? Just cast to actor?

full junco
#

yeah

umbral imp
#

Yeah, I'm about an hour into that. That is what made me realize I needed to create a new BP class for this setup

full junco
#

well usually not cast, just store the reference somewhere as a variable

digital marlin
#

nah I like interfaces. Espeically since I can test if they're used.

umbral imp
#

Well now that I have my new BP Class I can easily cast to it and get variables from the interactable objects as needed. It is very nice and simple

digital marlin
#

So like a holistic BP?

real needle
#

I prefer the workflow of interfaces, since I don't have to worry if I end up wanting a new class in the future to send the same call to

#

I also tend to avoid child classes in BP

full junco
#

whole ue4 is based on inheritance

#

so I use it too

digital marlin
#

Applying a timer to a tick event - bad idea?

real needle
#

Yeah, but for networked logic I've had too many issues with child classes in BP

#

And replicated child actor components have been a complete mess...

umbral imp
#

@real needle so I'm not sure how you go about storing and passing around variables easily with just interfaces?

#

variables between BP that is

real needle
#

@umbral imp Zak explains in the video

umbral imp
#

okay, I really need to watch the rest of that video, not even half way in yet. That video is like the only amazing resource on BP communication I've found

real needle
#

Spend some time using interfaces and you'll get around it. It's a bit weird at first when you start using input and outputs, and how the function changes based on if you have inputs or outputs

umbral imp
#

That is how I did it at first, I had to add 3 inputs and outputs and string that along to the calling BP... just seemed too cumbersome to me.. is that more resource heavy?

real needle
#

@umbral imp Don't spend too much time thinking about performance, it'll just slow down your progress

#

We have plenty of CPU to play with

umbral imp
#

Yeah just super worried about development in VR especially

real needle
#

Worry about GPU, not CPU

#

Particles, texture resolution etc

umbral imp
#

Yeah the other modeler/artist is constantly trying to tweak our materials to make them more efficient... we are doing a realistic style which is worrysome to us

real needle
#

Keep draw calls as low as possible, they're the biggest hog

#

Polys is not so much of an issue, we're running 2.5 million without issues

#

Atleast on Nvidia

umbral imp
#

Yeah we are doing a lot of poly instead of trying to normal or height map it

digital marlin
#

...so I'm safe with a few timers heh

real needle
#

@digital marlin Timers on tick?

#

I don't know why you would want that :b

digital marlin
#

I suppose I could enact it with overlap.

#

yeah, actually that's a better idea.

full junco
#

the visual quality of that stereo layer is really awesome

#

it looks perfect

#

but the world location where it renders is wrong

#

and I can't even show it to you because it only shows up in the vive and not on the screen so no way to capture it lol

#

@mighty carbon I saw you asked in the forums about sterero layers, do you use them?

mighty carbon
#

yeah, but haven't tried UMG on them yet

#

I use world locked layer

full junco
#

I'm not trying UMG currently, only trying to get it to work with a texture

#

@mighty carbon and does it work for you?

mighty carbon
#

yep

#

it won't show in PIE

#

only on the device (Gear VR in my case)

full junco
#

I mean, is the world position correct?

mighty carbon
#

yeah

full junco
#

so when you place it at 200,200,200 in the world it actually shows up at 200,200,200?

mighty carbon
#

I didn't measure precisely, but it looks like it stays where I placed it

full junco
#

do you move it around or is the position static?

mighty carbon
#

I have an empty BP actor and StereoLayer component inside of it

#

no, I don't move it. It just sits there

full junco
#

I did it same, just added an arrow component too

#

and I move it, have it attached to motion controller

mighty carbon
#

I haven't tried moving it

#

also, report it to Oculus on their forums (if you use it with Rift)

full junco
#

I use it with vive

#

well its just way more noticable that its wrong when its moving

mighty carbon
#

it could be UE4 issue or could be platform issue

full junco
#

because the world location moves around when you rotate it

#

so rotation does affect location

#

thats wrong

mighty carbon
#

well, then report it to Epic and Valve

full junco
#

would still like to know if others see the same first

#

so I hope @wicked oak is back soon ๐Ÿ˜„

mighty carbon
#

I always report stuff to Oculus and either get explanation about how to use it correctly or if it's a bug they fix it or let me know it's UE4 bug (and they poke Epic about it too)

full junco
#

yeah thats good

#

I dont think theres such a place for vive

#

or is there? I know the steam forums, but valve doesnt seem to be really active in there I think

#

for example, when the rotation is perfect forward X then I have to move the stereo layer roughly here for it to appear at the right side (the start) of the arrow: http://puu.sh/t5r3g/107d021529.png

sly chasm
#

ey, has oculus released 3d models or skelatal meshes of their touch controllers?

full junco
#

its in the engine content

sly chasm
#

wow

full junco
#

same like vive controllers

sly chasm
#

let me find that

#

where did you find it?

#

@full junco all I can find are the mannequin hands

full junco
#

then just tick static mesh in the filter to see all static meshes

sly chasm
#

There we go

#

thanks, I just had to press show engine content ๐Ÿ˜›

full junco
#

yeah

digital marlin
#

guys, what's some easy to get SFX >?

full junco
#

@digital marlin I don't think that's a vr related question

digital marlin
#

Ah righto

clever sky
#

There's a big SFX pack floating around for free. Look for big free gaming SFX pack.

storm vortex
clever sky
#

That's the one

storm vortex
#

The second link someone has mirrored sounds in the comments

#

I'm going to attempt to package a build for the first time since I started working with Unreal. Any advice for packaging for VR?

#

Mostly just doing it to test to make sure it works without errors D:

clever sky
#

Go into project settings

#

and check launch in VR

#

under description

storm vortex
#

Thank you good sir!

full junco
#

ah, theres a checkbox? I always put it manually into the ini ๐Ÿ˜›

clever sky
#

Yep. I think since 4.14

storm vortex
#

That would suck to wait an hour and not be able to test it

clever sky
#

Well you can. You just have to make a short cut with a -vr on the end

#

But that's not as elegant

storm vortex
#

ah, and any maps i have in the project I can open from the console right?

#

by doing open "levelname"

clever sky
#

I think so.

storm vortex
#

it works while in editor, just don't know about in game

#

like if the console gets disabled for a build or not

clever sky
#

Although I can't confirm it as I haven't tried.

#

Worst comes to worst, make a level select menu ๐Ÿ˜›

storm vortex
#

yeah thats on my todo list

digital marlin
#

Thanks guys @storm vortex

#

hey Zap how'd your collision stuff go?

full junco
#

this is the bug with the world positioning of the stereo layer

#

it should be where the hand and the arrow is

#

(I know, thats the best video quality you've ever seen)

clever sky
#

@digital marlin Didn't play around with it beyond messing with Mitch's stuff. Really promising vector for exploration.

#

But I was just taking a break procrastinating from doing video work

#

Which I'm also doing now! I gotta learn Adobe premier now... D:

full junco
#

had to record it with holding my phone in one hand, holding the vive in the other hand and moving the motion controller with the 3rd hand

#

just that I only have 2 hands...

#

the black/white thing is the stereo layer texture

clever sky
#

Can you see the bug when you mirror to the headset?

#

mirror the headset to desktop?

full junco
#

how?

clever sky
#

Click on the steam VR popup window thing

#

and it'll say 'Display Mirror'

#

It'll even show the chaperone bounds

full junco
#

argh, yeah its visible there lol

#

never knew that mirror thing existed...

#

thanks, now I wasted way too much time with trying to record it with the phone

clever sky
#

Hehe

#

Yeah, only (re)discovered it recently.

#

Luckily I haven't had a pressing need to use it. Just nice to be able to walk people through in VR

full junco
#

hm yeah its super useful for this...

clever sky
#

So... is that black hole supposed to look like that? ๐Ÿ˜›

full junco
#

@clever sky yeah, the whole thing is supposed to look like that

clever sky
#

Ah... so that's how Valve did the text in the steam menu during their tutorial intro.

full junco
#

I always use engine content to test stuff ๐Ÿ˜„

clever sky
#

If you run the tutorial intro, it has a moment where it tells you to use the steam menu buttons.

#

and then pops up a notification telling you to close the steam menu.

full junco
#

ok

#

well whats wrong about this is only the location of where its rendered

#

it looks super awesome, perfectly sharp (not affected by TAA)

#

directly where the arrow is

clever sky
#

Ah... mmm

#

And you've childed it to the arrow?

full junco
#

yeah

clever sky
#

And it'll stay there irrespective of where you move it around in actor?

full junco
#

the offset varies

#

depending on rotation

clever sky
#

Ah.

full junco
#

thats what you see in my gif

clever sky
#

That's not a gif

clever sky
#

Ok that is a gif ๐Ÿ˜ƒ

#

Looks almost like it ignores the game engine XYZ values

full junco
#

xyz values?

clever sky
#

the 3D coordinates provided by the game engine

#

And renders to the 3D coordinates provided by steam?

#

Maybe. That's my guess?

#

Anyway. Gonna play some QuiVR. Good bow action in that game.

full junco
#

hm yeah, it depends heavily on where I am in the world...

#

the when I move to the right of the level the stereo layer is way off to the right, when I move to the left its off to the left

#

so it only roughly works because my character starts at almost 0/0/0 in the world

#

@wicked oak did you see the same?

storm vortex
#

If I don't care about a game mode for now is there a good default one to do? I tried to package but it errored out since I didn't have one set.

full junco
#

it should use the default one then