Thanks a lot for developing and sharing this!!
<3vr
<3vr
Changed up the VRCharacter so that gripping and using is also gameplay tag defined now. Everything is now run off of one generic function that manages any button passed in by comparing gameplay tags. Falls back to default tag values where appropriate. *Note* Original character is now "VRCharacter_Legacy" and will be dropped at some point. This allowed me to delete many extra functions that were pretty much just re-implementing drop or grip logic for different buttons. Removed a bunch of functions from VR character that were not needed. Sorted all functions in VR character into categories. Unlinked all OpenVR specific code (except for the controller loading since it just fails when out of platform). Added an example StereoViewIndex post process material with a custom node that returns the eye index both in AND out of instanced stereo mode. This can be used for stereoscoptic textures. Added HadHandSpecificSlots to gameplay tags so that the GetCorrectSocketPrefix can return VRGripLP or VRGripRP / VRGripTouchLP / VRGripTouchRP.
initial setup of lever component, working on physics side of it. Combined axis enums from button and lever components into EVRInteractibleAxis Couldn't find a generic public XYZ enum in engine already to use. *Note c++ lever component is still unfinished in this update* Added an OverridePrefix string intput to the FindClosestSlotInRange function. This more easily allows the end user to do things like controller (touch vs vive) or hand (Left vs Right) define custom grip sockets to a mesh. IE: Pass in VRGripPLTouch for Left Hand Touch socket. Moved secondary grip information into a seperate struct in the grip structure, not only does this allow me to add some replication specific additional properties to it. But it also should be more efficient to replicate as I can boolean control its replication without forcing NetSerializer on the main struct. It also lets me just pass the struct for notification functions. Added bIsSlotGrip to both primary and secondary grip structs, can be set when calling the grip function, useful for checking in the object later on. Made it default to set physics gripped objects Center Of Mass to the controller location for the grip. Added Option in advanced physics to turn off setting COM to grip location
Comment