Vrchat Upload Model as New Not Overwirte

Setting upwards a cross-platform world or avatar is really quite straightforward! In curt, all you have to do is use a indistinguishable projection to build an Android version of the asset, and upload information technology to the same content ID as the VRChat PC asset. The client volition manage which version it needs to download.

If you need a chip more detail on how to do this properly (and easily), hither's a short guide.

We'll be making the assumption that you already accept a VRChat PC projection set with your world or avatar. If this isn't the case, you'll need to gear up and create your projection for PC first. Yous could as well build for Android/Quest first, but that's your telephone call.

After you've got your project at the signal where you desire to build and upload for VRChat PC, go ahead and do then. This process is identical to our standard setup.

Once y'all've got your VRChat PC build up, you'll need to duplicate the project for the Quest (Android) version. To do this, shut Unity, copy your project folder, and paste the copy elsewhere. Basically, you're duplicating your project. The location doesn't matter much, equally long as they are carve up and distinct projects. You lot might want to name the project something like MyVRChatProject-Quest but to keep organized.

Keep in mind that whatever changes yous make to one project, you should brand to both. If it is something uncomplicated similar moving an object, you lot tin merely movement the object in ane projection, and then copy/paste the transform values to the second projection.

For more circuitous or wider-reaching changes, you may have to re-duplicate the project, or be very careful with how duplicate the changes.

Open up your Quest project in Unity. Since it is a duplicate, you shouldn't have any changes. However, we're about to alter that. Permit's swap your build target to Android. Hither'due south how to do that:

There's some important notes here:

  • Y'all need to install Unity's Android SDK. Otherwise the option won't popular upwards.
  • Although you can swap back and along between Windows and Android, you probably don't want to practise this. It changes files effectually, you probably want to maintain a scaled-dorsum version of your world for Quest, and...
  • It can take a significant amount of time to bandy to the Android platform. Thankfully, if you maintain ii dissever projects, yous simply practise this once. If your project is huge or has dozens of avatars, you'll probably desire to but export the content you want as Prefabs or UnityPackages, and so create an empty Android projection from scratch.

📘

Local Enshroud Server

You can reduce the time it takes to bandy platforms by using Unity's Cache Server, which y'all can run locally. Read more near the enshroud server here. Proceed in mind this can take upwards a significant amount of disk space.

Now that you've got two separate projects set up appropriately, you'll need to outset optimizing. You cannot skip this. Quest is a powerful headset, merely non nearly every bit powerful as a typical VR-ready PC. Yous'll need to check out our Quest Content Optimization page to see what you lot need to practice. For worlds this ways blistering lighting, lowering geometry complication, fugitive transparency, and lowering texture resolution. For avatars, this means removal of excess components, excess bones, lowering geometry complexity, avoiding transparency, and reducing texture size.

This will take a while, and is expected to be challenging. Optimizing for mobile hardware is difficult! Thankfully, in that location's a ton of resource out there, and even a cursory YouTube search for "optimizing Unity for mobile" reveals a ton of good content.

You can also bank check out some of our documentation on optimizing content for Oculus Quest.

  • Quest Content Optimization
  • Quest Content Limitations
  • Avatar Performance Ranking System

In order for VRC_Triggers to work beyond both Quest and PC builds of your earth, the hierarchy of the trigger component must be the identical beyond both projects. This must be synchronized considering in Unity, the hierarchy is the definer of which objects are which. Since both Quest and PC users can exist in the aforementioned world at the same time, that bureaucracy will exist used to determine which detail is manipulated for both platforms.

🚧

SyncVideoStream and SyncVideoPlayer Components

Currently, neither SyncVideoStream nor SyncVideoPlayer is supported on Quest. Putting these into a Quest earth volition crusade severe issues! But remove them from the Quest version. All the same, having a video player only in the PC version can cause problems as well. If the Master of the instance is a Quest user, you'll meet further problems.

Although getting synced video playback working on Quest is an eventual goal, we suggest not using them until nosotros take official support on the platform.

Once your globe or avatar is ready, you can upload! This upload process is identical to the VRChat PC upload process, although the SDK will be a lot more aggressive with alarm you about performance issues.

You need to upload your globe or avatar to the aforementioned blueprint ID as y'all have for the VRChat PC version of the content. Blueprint ID is defined by a Pipeline Manager component on a Game Object, which usually accompanies a VRC Scene Descriptor, typically on your VRCWorld prefab. Printing the "Detach" push to edit the pattern ID, and paste in the ID from the first version that you uploaded (you can besides discover this in the "Content Manager" tab of the VRChat SDK control panel).

The version you're uploading depends on the originating project's build target. If you're on a project fix for Android, it'll upload for Quest. If the build target is Windows, then you're uploading a PC version. That'south basically it-- once y'all've uploaded, any client that views your content will talk to our servers a bit similar this:

"Hey, I'm an Oculus Quest and I desire this content."
"Ok, here's a Quest version."

"Hey I'm a VRChat PC user and I desire this content."
"Ok, here's the VRChat PC version."

If an avatar isn't available for the platform you're on, yous'll meet a placeholder avatar indicating what platform that user is on.

If a world isn't available for the platform you lot're on, y'all'll be unable to enter portals to that world or join information technology through the UI.

Nonetheless, if you join a world that has both Quest and PC versions, and the people in the instance take both Quest and PC versions of their avatars, you'll view the world appropriately for your platform and be able to hang out with everyone, with no bug!

❗️

Armatures MUST be identical!

For avatars to work properly cross-platform, the armature path MUST be identical between the PC and Quest versions to essential basic like the head, hands, and anxiety. Additionally, the scale and rotation of the "root bone" (the start bone in the hierarchy) MUST be identical between versions.

The rigging (armatures) between Quest and PC avatars must be generally identical. If you want to remove non-essential bones like skirt/pilus/etc bones for the Quest version, that's fine-- just practice not modify the base structure of the armature layout. Doing so volition result in strange behavior when viewed across platforms.

Most importantly, the "root os" (equally in, Hips) should exist the first bone in the hierarchy after the Armature GameObject. To be specific, every bit long every bit the setup (calibration, rotation) of the "root basic" is identical, you should have no problems.

Nosotros know that maintaining two "separately optimized, but identical in content" projects for PC and Quest isn't ideal, and the process is a flake of an exercise in repetition. Withal, this process gives y'all a massive amount of control, and lets yous be quite creative with the different platforms while sticking to the appropriate level of optimization for whichever platform you're targeting.

We'll be looking into ways to improve this process over time, merely keep in heed many of these limitations are due to the way projects are managed in Unity.

  • Your VRChat PC avatar can have all kinds of bells and whistles that the VRChat Quest avatar tin can't have. Depending on the platform, users volition see whatever version is advisable for their client.
  • You can be a bit artistic with this as well-- you could have a high-poly world or avatar for PC users, and then a low-fi (just however stylish) version for Quest users.
  • Define a set of box colliders or a low-poly mesh collider for both the PC and Quest versions of the world and utilise that instead of a mesh collider. Parent the colliders to an empty GameObject at a specific coordinate, and if yous update 1 projection, you tin can copy/paste that object to the other project easily. That manner you'll never see users on dissimilar platforms "float", and you won't have bug with expensive and circuitous high vertex count mesh colliders.
  • Call back, avoid transparency at all costs! It is quite expensive.
    • As an aside, yeah, "alpha cutout" counts as transparency.

updegraffsinse1964.blogspot.com

Source: https://docs.vrchat.com/docs/cross-platform-setup

0 Response to "Vrchat Upload Model as New Not Overwirte"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel