Initial commit

This commit is contained in:
2025-11-04 23:13:25 +00:00
commit cf7bd1d290
599 changed files with 128886 additions and 0 deletions

View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2022 Varneon
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,9 @@
<UXML xmlns="UnityEngine.UIElements">
<Label name="progress-text" text="Refreshing data..." class="progress-text text-white mb-2" />
<VisualElement name="progress" class="progress-container">
<VisualElement name="progress-bar" class="progress-bar" />
</VisualElement>
<VisualElement class="mt-2">
<Button name="cancel-button" class="flex-grow-1 d-none m-0 text-bold" text="Cancel Upload" />
</VisualElement>
</UXML>

View File

@@ -0,0 +1,45 @@
BuilderProgress {
position: absolute;
background-color: rgba(0,0,0,0.9);
left: 0;
right: 0;
top: 0;
bottom: 0;
width: 100%;
height: 100%;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 24px;
}
.progress-container {
background-color: #363636;
margin: 4px 0;
height: 24px;
width: 100%;
position: relative;
overflow: hidden;
justify-content: center;
align-items: center;
}
.progress-bar {
position: absolute;
left: 0;
top:0;
height: 100%;
width: 0;
background-color: #006FF8;
}
.progress-text {
-unity-text-align: middle-center;
-unity-font-style: bold;
font-size: 16px;
}
#cancel-button {
font-size: 14px;
padding: 8px 24px 8px 24px;
}

View File

@@ -0,0 +1,9 @@
<UXML xmlns="UnityEngine.UIElements">
<VisualElement class="col" name="checklist-block">
<VisualElement name="checklist-label" class="mb-2 row section-header">
<VisualElement class="icon" name="checklist-label-icon" />
<Label name="checklist-label-text" />
</VisualElement>
<VisualElement name="checklist-items" class="col w-100 mb-2" />
</VisualElement>
</UXML>

View File

@@ -0,0 +1,60 @@
#checklist-block {
border-bottom-width: 1px;
}
.dark #checklist-block {
border-bottom-color: rgb(26, 26, 26);
}
.light #checklist-block {
border-bottom-color: rgb(127, 127, 127);
}
/*.light #checklist-block {*/
/* border-color: #A9A9A9;*/
/* background-color: rgba(235, 235, 235, 0.2039216);*/
/* color: #161616;*/
/*}*/
/*.dark #checklist-block {*/
/* border-color: #232323;*/
/* background-color: rgba(96, 96, 96, 0.2039216);*/
/* color: #BDBDBD;*/
/*}*/
#checklist-block #checklist-label {
-unity-font-style: bold;
border-bottom-width: 0;
}
#checklist-block #checklist-label #checklist-label-text {
padding-bottom: 1px;
}
#checklist-items .icon {
width: 18px;
height: 18px;
margin-right: 4px;
}
.cross-icon {
background-image: resource("DotFill");
}
.check-icon {
background-image: resource("P4_CheckOutRemote");
}
.light .create-icon {
background-image: resource("CreateAddNew");
}
.dark .create-icon {
background-image: resource("d_CreateAddNew");
}
#checklist-items Label {
}

View File

@@ -0,0 +1,7 @@
<UXML xmlns="UnityEngine.UIElements">
<VisualElement name="notification-block" class="col mt-2 mb-2 w-100 flex-shrink-0">
<Label class="text-lg" name="main-text" />
<Label name="details-text" class="mt-2 p-2 white-space-normal flex-grow-1 d-none" />
<Button class="mt-3 pl-4 pr-4 pt-2 pb-2 text-bold d-none" name="action-button" />
</VisualElement>
</UXML>

View File

@@ -0,0 +1,3 @@
#details-text {
background-color: rgba(255,255,255,0.2);
}

View File

@@ -0,0 +1,16 @@
<UXML xmlns="UnityEngine.UIElements">
<VisualElement name="modal-backdrop" class="absolute" />
<VisualElement name="modal-container" class="col">
<VisualElement class="row p-2 justify-container-between align-items-center" name="modal-header">
<VisualElement name="modal-icon" class="d-none" />
<Label name="modal-title" class="text-bold text-center flex-grow-1" />
<Button name="modal-close-btn" text=" " class="pl-2 pr-2" />
</VisualElement>
<VisualElement name="modal-content-wrapper" class="flex-grow row w-full">
<VisualElement name="modal-content" class="flex-grow flex-9 w-full col white-space-normal" />
<VisualElement name="modal-action-button-wrapper" class="flex-3 p-3 d-none">
<Button name="modal-action-button" class="text-lg text-bold flex-grow-1" />
</VisualElement>
</VisualElement>
</VisualElement>
</UXML>

View File

@@ -0,0 +1,53 @@
Modal {
left: 0;
right: 0;
top: 0;
bottom: 0;
width: 100%;
height: 100%;
}
#modal-backdrop {
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.5);
}
#modal-container {
margin: auto;
max-width: 95%;
width: 100%;
background-color: var(--unity-colors-window-background);
}
#modal-header {
background-color: var(--unity-colors-highlight-background-hover-lighter);
}
#modal-icon {
width: 18px;
height: 18px;
}
#modal-close-btn {
border-width: 0;
background-color: transparent;
width: 16px;
height: 16px;
}
.dark #modal-close-btn {
background-image: resource("d_winbtn_win_close");
}
.light #modal-close-btn {
background-image: resource("winbtn_win_close");
}
.dark #modal-close-btn:hover {
background-color: rgba(255, 255, 255, 0.1);
}
.light #modal-close-btn:hover {
background-color: rgba(0, 0, 0, 0.1);
}

View File

@@ -0,0 +1,6 @@
<UXML xmlns="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements">
<VisualElement class="col align-items-stretch">
<Label name="label" class="mt-2 text-bold mb-2" />
<VisualElement name="dropdown" class="align-self-stretch" />
</VisualElement>
</UXML>

View File

@@ -0,0 +1,66 @@
.row {
flex-direction: row;
align-items: flex-start;
}
.col {
flex-direction: column;
align-items: flex-start;
}
.d-none {
display: none;
}
.options-popup-content
{
padding: 4px;
}
#label {
min-width: 135px;
}
.option {
padding: 0;
margin: 1px 5px 5px 0;
flex-direction: row;
align-items: center;
}
.option Toggle {
border-bottom-width: 0;
}
.option Label {
margin-left: 4px;
}
/* We need to use a specific name to have these styles override the base USS */
#dropdown #popup-button
{
-unity-text-align: middle-left;
padding-left: 3px;
padding-right: 3px;
font-size: 12px;
margin-left: 0;
margin-right: 0;
flex-direction: row;
}
#dropdown Button VisualElement {
margin-top: 2px;
margin-bottom: 2px;
flex-direction: row;
}
#dropdown Button #spacer {
flex-grow: 1;
}
#dropdown Button #arrow {
background-image: resource("d_dropdown.png");
width: 12px;
height: 12px;
align-self: center;
}

View File

@@ -0,0 +1,6 @@
/* There is a higher level parent stylesheet that we want to override with a more specific selector */
.section-foldout > Toggle Label.step-label,
.step-label{
flex-grow: 0;
margin-left: 8px;
}

View File

@@ -0,0 +1,17 @@
<UXML xmlns="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" xmlns:vrc="VRC.SDKBase.Editor.Elements">
<VisualElement class="col">
<Label name="tags-label" class="text-bold mb-2" />
<vrc:TagsFieldButton class="align-self-stretch row" />
<vrc:Modal name="tags-modal" title="Manage Your Tags">
<VisualElement class="col">
<VisualElement class="row p-4" name="add-tag-block">
<vrc:VRCTextField name="tag-add-field" class="flex-grow-1" placeholder="Enter a new tag..." />
<Button name="tag-add-button" text="Add Tag" />
</VisualElement>
<ScrollView>
<VisualElement name="tags-row" class="row pl-4 pr-4 pt-3 pb-2" />
</ScrollView>
</VisualElement>
</vrc:Modal>
</VisualElement>
</UXML>

View File

@@ -0,0 +1,82 @@
#tags-row {
flex-direction: row;
align-items: flex-start;
flex-wrap: wrap;
}
.tag {
padding: 2px 3px 2px 7px;
flex-direction: row;
align-items: center;
-unity-text-align: middle-center;
flex-shrink: 0;
min-height: 22px;
}
.dark #add-tag-block {
background-color: hsl(0, 0%, 19%);
}
.light #add-tag-block {
background-color: hsl(0, 0%, 39%);
}
.light .tag {
background-color: rgb(228, 228, 228);
}
.dark .tag {
background-color: hsl(0, 0%, 18%);
}
.tag Button.tag-remove-button {
padding: 0;
margin: 0;
border-width: 0;
background-color: rgba(0,0,0,0);
padding-left: 18px;
width: 18px;
height: 18px;
opacity: 0.5;
cursor: link;
}
.dark .tag Button.tag-remove-button {
background-image: resource("d_winbtn_win_close");
}
.light .tag Button.tag-remove-button {
background-image: resource("winbtn_win_close");
}
.tag Button.tag-remove-button:hover {
opacity: 1;
}
#tags-label {
min-width: 135px;
}
TagsFieldButton {
-unity-text-align: middle-left;
margin-left: 0;
margin-right: 0;
}
TagsFieldButton VisualElement {
margin-top: 2px;
margin-bottom: 2px;
flex-direction: row;
}
TagsFieldButton #spacer {
flex-grow: 1;
}
TagsFieldButton #edit {
background-image: resource("vrcTagEditIcon");
width: 12px;
height: 12px;
align-self: center;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 560 B

View File

@@ -0,0 +1,11 @@
<UXML xmlns="UnityEngine.UIElements">
<VisualElement class="thumbnail" name="thumbnail-container">
<VisualElement class="thumbnail-underlay">
<Label name="thumbnail-placeholder-text" />
</VisualElement>
<VisualElement name="thumbnail-image" />
<VisualElement class="thumbnail-overlay">
<Label name="thumbnail-hover-text" />
</VisualElement>
</VisualElement>
</UXML>

View File

@@ -0,0 +1,56 @@
.thumbnail {
margin: 0 auto;
position: relative;
align-self: flex-start;
}
.thumbnail-underlay {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
align-items: center;
justify-content: center;
-unity-text-align: middle-center;
-unity-font-style: bold;
font-size: 18px;
}
.thumbnail:disabled .thumbnail-underlay #thumbnail-placeholder-text {
opacity: 0;
}
#thumbnail-image {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
-unity-background-scale-mode: scale-and-crop;
background-color: rgba(0,0,0,0.3);
overflow: hidden;
border-radius: 4px;
}
.thumbnail-overlay {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background-color: rgba(0,0,0,0.5);
opacity: 0;
-unity-text-align: middle-center;
justify-content: center;
align-items: center;
white-space: normal;
}
.thumbnail-overlay Label {
-unity-font-style: bold;
}
.thumbnail:hover .thumbnail-overlay {
opacity: 1;
}

View File

@@ -0,0 +1,34 @@
<UXML xmlns="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" xmlns:vrc="VRC.SDKBase.Editor.Elements" xmlns:vrca="VRC.SDK3A.Editor.Elements">
<VisualElement class="col mb-2 align-items-start w-100">
<vrc:Thumbnail width="196" height="147" hover-text="Image Size 1200 x 900" name="content-thumbnail" />
<VisualElement class="row align-items-stretch justify-content-between mt-2" style="max-width: 100%; min-width:100%;">
<Button text="Select Image" name="select-new-thumbnail-btn" class="ml-0 mr-2 white-space-normal text-bold pt-2 pb-2" style="flex:1; font-size:14px;" />
<Button text="Capture In Scene" name="capture-thumbnail-from-scene-btn" class="ml-0 mr-0 white-space-normal text-bold pt-2 pb-2" style="flex:1; font-size:14px;" />
</VisualElement>
<vrc:Modal title="Move your scene view to capture the desired thumbnail">
<VisualElement class="col">
<VisualElement class="row p-3 align-items-center">
<VisualElement class="col flex-grow-1" style="min-width: 180px;">
<Toggle label="Fill Background" tooltip="Uses flat color as a background instead of the skybox" name="thumbnail-fill-background-toggle" class="mb-2" />
<Toggle label="Use PostProcessing" tooltip="Applies scene post processing to the thumbnail" name="thumbnail-use-post-processing-toggle" class="mb-2" />
<Toggle label="Use Custom Camera" tooltip="Utilizes a custom camera instead of a VRChat-created camera instead" name="thumbnail-use-custom-camera-toggle" class="mb-2" />
<VisualElement class="col mb-2 d-none" name="thumbnail-background-block">
<uie:ColorField name="thumbnail-background-color-field" class="mb-2" />
<Label text="Background Color" style="align-self: center text-center" />
</VisualElement>
<VisualElement class="col mb-2 d-none" name="thumbnail-custom-camera-block">
<uie:ObjectField class="mb-2" name="thumbnail-custom-camera-ref"/>
<Label text="Custom Camera" style="align-self: center text-center" />
</VisualElement>
</VisualElement>
<VisualElement class="row justify-content-center mt-2 ml-2 flex-shrink-0 flex-grow-0" style="flex-basis: auto;">
<IMGUIContainer name="thumbnail-capture-preview" />
</VisualElement>
</VisualElement>
<VisualElement class="mt-1 mb-3 ml-3 mr-3 row align-items-center" name="thumbnail-capture-confirm-block">
<Button class="p-2 m-0 flex-grow-1" text="Capture" name="thumbnail-capture-confirm-btn" style="height: 30px;" />
</VisualElement>
</VisualElement>
</vrc:Modal>
</VisualElement>
</UXML>

View File

@@ -0,0 +1,27 @@
<UXML xmlns="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" xmlns:vrc="VRC.SDKBase.Editor.Elements" xmlns:vrca="VRC.SDK3A.Editor.Elements">
<Foldout text="Thumbnail" class="section-foldout" name="thumbnail-foldout">
<VisualElement class="row mt-2 mb-2 align-items-start w-100">
<vrc:Thumbnail width="192" height="144" hover-text="Image Size 1200 x 900" name="content-thumbnail" />
<VisualElement class="col ml-2 flex-grow-1">
<VisualElement class="col mb-2" name="thumbnail-selector-block">
<Label class="mb-2 white-space-normal m-unity-field " text="You can pick a new image to be used as a thumbnail" />
<Button class="mb-2" text="Select New Thumbnail" name="select-new-thumbnail-btn" />
<Label class="mb-2 white-space-normal m-unity-field " text="You can also capture the new thumbnail directly from the scene" />
<Button text="Capture From Scene" name="capture-thumbnail-from-scene-btn" />
</VisualElement>
<VisualElement class="col d-none" name="thumbnail-capture-block">
<Label class="mb-2 white-space-normal m-unity-field " text="Move your scene view to capture the desired thumbnail" />
<Toggle label="Fill Background" tooltip="Uses flat color as a background instead of the skybox" name="thumbnail-fill-background-toggle" />
<uie:ColorField label="Background Color" name="thumbnail-background-color-field" class="d-none" />
<Toggle label="Use PostProcessing" tooltip="Applies scene post processing to the thumbnail" name="thumbnail-use-post-processing-toggle" />
<Toggle label="Use Custom Camera" tooltip="Utilizes a custom camera instead of a VRChat-created camera instead" name="thumbnail-use-custom-camera-toggle" />
<uie:ObjectField class="flex-grow-1 d-none" label="Camera" name="thumbnail-custom-camera-ref"/>
<VisualElement class="mt-2 row align-items-center" name="thumbnail-capture-confirm-block">
<Button class="mr-2 flex-grow-1" text="Capture" name="thumbnail-capture-confirm-btn" />
<Button class="flex-grow-1" text="Cancel" name="thumbnail-capture-cancel-btn" />
</VisualElement>
</VisualElement>
</VisualElement>
</VisualElement>
</Foldout>
</UXML>

View File

@@ -0,0 +1,113 @@
Shader "Hidden/VRChat/CropShader"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_TargetWidth("Target Width", Float) = 800
_TargetHeight("Target Height", Float) = 600
_ForceLinear("Force Linear", Int) = 0
_ForceGamma("Force Gamma", Int) = 0
[ToggleUI]_CenterCrop("Center Crop", Int) = 1
}
SubShader
{
Tags { "RenderType"="Opaque" }
ZTest Always
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
Texture2D<float4> _MainTex;
SamplerState sampler_MainTex;
float4 _MainTex_ST;
float4 _MainTex_TexelSize;
float _TargetWidth;
float _TargetHeight;
int _CenterCrop;
int _ForceLinear;
int _ForceGamma;
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = v.uv;
return o;
}
float4 frag (v2f i) : SV_Target
{
float sourceWidth = _MainTex_TexelSize.z;
float sourceHeight = _MainTex_TexelSize.w;
float sourceAspect = sourceWidth / sourceHeight;
float targetAspect = _TargetWidth / _TargetHeight;
float2 uv = i.uv;
float2 correctiveScale = 0;
float mask = 1;
if (abs(sourceAspect - targetAspect) < 0.001)
{
float4 col = _MainTex.Sample(sampler_MainTex, uv);
if (_ForceGamma)
{
col.rgb = pow(col.rgb, 1.0/2.2);
}
if (_ForceLinear)
{
col.rgb = pow(col.rgb, 2.2);
}
return col;
}
float2 normalizedResolution = float2(sourceWidth / targetAspect, sourceHeight);
if (_CenterCrop ? (normalizedResolution.x < normalizedResolution.y) : (normalizedResolution.x > normalizedResolution.y))
{
correctiveScale = float2(1, normalizedResolution.y / normalizedResolution.x);
}
else
{
correctiveScale = float2(normalizedResolution.x / normalizedResolution.y, 1);
}
uv = ((uv - 0.5) / correctiveScale) + 0.5;
float2 uvPadding = (1 / float2(sourceWidth, sourceHeight)) * 0.1;
float2 uvfwidth = fwidth(uv.xy);
float2 maxFactor = smoothstep(uvfwidth + uvPadding + 1, uvPadding + 1, uv.xy);
float2 minFactor = smoothstep(-uvfwidth - uvPadding, -uvPadding, uv.xy);
mask = maxFactor.x * maxFactor.y * minFactor.x * minFactor.y;
float4 col = _MainTex.Sample(sampler_MainTex, uv);
col.rgb = lerp(col.rgb, float3(0.5,0.5,0.5), 1 - mask);
if (_ForceGamma)
{
col.rgb = pow(col.rgb, 1.0/2.2);
}
if (_ForceLinear)
{
col.rgb = pow(col.rgb, 2.2);
}
return col;
}
ENDCG
}
}
}

View File

@@ -0,0 +1,389 @@
/*
* BSD 3-Clause License
*
* Copyright (c) 2016, Nicolas Weber, Sandra C. Amend / GCC / TU-Darmstadt
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the <organization> nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* HLSL/Unity version Copyright (c) 2024, Chelsea "Feilen" Jaggi and VRChat Inc
* The following is also licensed under the BSD 3-Clause License.
*
* This is a HLSL/Unity Compute shader implementation of the original cuda code
* available at https://github.com/mergian/dpid, adjusted to be used as an
* AssetPostprocessor (in-SDK) and a fully GPU-side texture updater (in-game)
* for generating mipmaps in Unity. The algorithm is intended to intentionally
* over-emphasize 'perceptually relevant' details, avoiding the need for
* post-sharpening typical in traditional downscaling algorithms.
*/
// TODO: 'quality' mode which does a gaussian filter of the original image, rather than box.
// Original paper says this makes little difference
#pragma kernel KernelGuidance GUIDANCE_SAMPLING
#pragma kernel KernelDownsampling DPID_SAMPLING
// Constants
#define THREADS 64
#define USE_WARP_REDUCTION 1
#define FLT_EPS 1.192092896e-07
//#define DEBUG_GUIDANCE 1
//#define DEBUG_INVERT 1
//#define DEBUG_BOXBLUR 1
// Buffers
Texture2D<unorm float4> _Input;
// OpenGL (ES) and Vulkan don't like RWTexture2D<> to be read/write, they bind them as write-only
#if defined(DPID_SAMPLING)
Texture2D<unorm float4> _Guidance;
#endif
RWTexture2D<unorm float4> _Output;
// For summation
groupshared float4 colorResultBuffer[THREADS]; // Output buffer where the results will be written
groupshared float factorResultBuffer[THREADS]; // Output buffer where the results will be written
groupshared float factorAlphaResultBuffer[THREADS]; // Output buffer where the results will be written
uint oWidth;
uint oHeight;
uint iWidth;
uint iHeight;
float pWidth;
float pHeight;
float lambda;
// Desired behavior for alpha handling is that, for example, a pure-white-on-black linear RGB star will end up the same as a pure alpha-on-transparent star
bool premultiplyAlpha;
bool sRGB;
bool normalMap;
struct ColorFactor
{
float4 color;
float factor;
float factorAlpha;
};
// Helper functions
inline void normalize(inout ColorFactor var, float4 fallbackColor)
{
if (!premultiplyAlpha)
{
if (var.factor < FLT_EPS)
{
var.color = fallbackColor;
}
else
{
var.color /= var.factor;
}
}
else
{
// Edge case where we have a single transparent pixel for 4 inputs,
// results in the non-transparent color becoming dominant.
// Then when we try and get contributions, it ends up re-emphasizing the hidden ones
if (var.factor < FLT_EPS)
{
var.color.rgb = fallbackColor.rgb;
}
else
{
var.color.rgb /= var.factor;
}
if (var.factorAlpha < FLT_EPS)
{
var.color.a = fallbackColor.a;
}
else
{
var.color.a /= var.factorAlpha;
}
}
var.factor = var.factorAlpha = 1.0f;
}
inline float3 LinearToSRGB(float3 color)
{
float3 sRGBLo = color * 12.92;
float3 sRGBHi = 1.055 * pow(abs(color), 1.0 / 2.4) - 0.055;
float3 isLow = step(color, 0.0031308);
return lerp(sRGBHi, sRGBLo, isLow);
}
inline float3 SRGBToLinear(float3 color)
{
float3 linearLo = color / 12.92;
float3 linearHi = pow((color + 0.055) / 1.055, 2.4);
float3 isLow = step(color, 0.04045);
return lerp(linearHi, linearLo, isLow);
}
// Sum up everything within our one group
void WarpReduce(inout float4 value, inout float factor, inout float factorAlpha, uint indexInGroup)
{
// Store the value in global buffer
colorResultBuffer[indexInGroup] = value;
factorResultBuffer[indexInGroup] = factor;
factorAlphaResultBuffer[indexInGroup] = factorAlpha;
// Synchronize to ensure all values are written
GroupMemoryBarrierWithGroupSync();
// Perform wave active sum reduction within the group
for (uint stride = THREADS / 2; stride > 0; stride /= 2)
{
// A coyote informed me that lanes can get out-of-order reads on some hardware
float4 c = colorResultBuffer[indexInGroup + stride];
float f = factorResultBuffer[indexInGroup + stride];
float fa = factorAlphaResultBuffer[indexInGroup + stride];
GroupMemoryBarrierWithGroupSync();
if (indexInGroup < stride)
{
colorResultBuffer[indexInGroup] += c;
factorResultBuffer[indexInGroup] += f;
factorAlphaResultBuffer[indexInGroup] += fa;
}
GroupMemoryBarrierWithGroupSync();
}
// Return the reduced sum for this warp
value = colorResultBuffer[0];
factor = factorResultBuffer[0];
factorAlpha = factorAlphaResultBuffer[0];
}
inline void add(inout ColorFactor var, float4 color, float factorColor, float factorAlpha)
{
// Without the 'max' term here, normalizing produces invalid results
if (!premultiplyAlpha)
{
var.color += color * factorColor;
var.factor += factorColor;
}
else
{
float premultFactor = factorColor * color.a;
var.color.rgb += color.rgb * premultFactor;
var.color.a += factorAlpha * color.a;
var.factor += premultFactor;
}
var.factorAlpha += factorAlpha;
}
inline float applyLambda(float dist, float lambdaValue)
{
if (lambdaValue == 0.0f)
return 1.0f;
else if (lambdaValue == 1.0f)
return dist;
return pow(dist, lambdaValue);
}
inline float contribution(float2 max_f, float2 min_f, uint x, uint y)
{
float f = 1.0f;
float fx = (float)x, fy = (float)y;
if (fx < max_f.x) f *= 1.0f - (max_f.x - fx);
if ((fx + 1.0f) > min_f.x) f *= 1.0f - ((fx + 1.0f) - min_f.x);
if (fy < max_f.y) f *= 1.0f - (max_f.y - fy);
if ((fy + 1.0f) > min_f.y) f *= 1.0f - ((fy + 1.0f) - min_f.y);
return f;
}
inline float distance(float4 avg, float4 color)
{
float4 diff = avg - color;
return length(diff) / 2.0f; // sqrt(2)
}
inline float distance(float3 avg, float3 color)
{
float3 diff = avg - color;
return length(diff) / sqrt(3.0f); // sqrt(2)
}
inline float distance(float avg, float color)
{
return abs(avg - color);
}
// Same as add but does optional srgb conversion
inline void addBoxBlur(inout ColorFactor var, float4 color, float factor)
{
if (sRGB)
color.rgb = SRGBToLinear(color.rgb);
add(var, color, factor, factor);
}
#if defined(DPID_SAMPLING)
float4 BoxBlurSample(uint PX, uint PY) {
const float corner = 1.0;
const float edge = 2.0;
const float center = 4.0;
// calculate average color
ColorFactor avg = { float4(0, 0, 0, 0), 0.0f, 0.0f };
// TOP
if(PY > 0) {
if(PX > 0)
addBoxBlur(avg, _Guidance[int2(PX - 1, PY - 1)], corner);
addBoxBlur(avg, _Guidance[int2(PX, PY - 1)], edge);
if((PX+1) < oWidth)
addBoxBlur(avg, _Guidance[int2(PX + 1, PY - 1)], corner);
}
// LEFT
if(PX > 0)
addBoxBlur(avg, _Guidance[int2(PX - 1, PY)], edge);
// CENTER
addBoxBlur(avg, _Guidance[int2(PX, PY)], center);
// RIGHT
if((PX+1) < oWidth)
addBoxBlur(avg, _Guidance[int2(PX + 1, PY)], edge);
// BOTTOM
if((PY+1) < oHeight) {
if(PX > 0)
addBoxBlur(avg, _Guidance[int2(PX - 1, PY + 1)], corner);
addBoxBlur(avg, _Guidance[int2(PX, PY + 1)], edge);
if((PX+1) < oWidth)
addBoxBlur(avg, _Guidance[int2(PX + 1, PY + 1)], corner);
}
normalize(avg, avg.color);
return avg.color;
}
#endif
// Dispatch is sent as Dispatch(Math.Max(param.oWidth / THREADS, 1), Math.Max(param.oHeight, 1), 1) (ignore numthreads)
// Each warp will handle a patch of patchSize pixels: inputTex.width / outputTex.width, inputTex.height / outputTex.height for PX, PY
// Kernels
void Downsampling(uint3 id, uint3 gid, uint gtid)
{
uint indexInGroup = gtid;
uint PX = id.x / THREADS;
uint PY = id.y;
float2 max_f = float2(max(PX * pWidth, 0.0f), max(PY * pHeight, 0.0f));
float2 min_f = float2(min((PX + 1) * pWidth, iWidth), min((PY + 1) * pHeight, iHeight));
uint2 patchMinCorner = uint2(floor(max_f.x), floor(max_f.y));
uint2 patchMaxCorner = uint2(ceil(min_f.x), ceil(min_f.y));
uint2 patchSize = patchMaxCorner - patchMinCorner;
uint pixelCount = patchSize.x * patchSize.y;
#if defined(DPID_SAMPLING)
float4 avg = BoxBlurSample(PX, PY);
#else
float4 avg = float4(1, 0, 1, 1);
#endif
ColorFactor color = { float4(0, 0, 0, 0), 0.0f, 0.0f };
#if USE_WARP_REDUCTION
for (uint i = indexInGroup; i < pixelCount; i += THREADS)
#else
for(uint i = 0; i < pixelCount; i++)
#endif
{
uint x = patchMinCorner.x + (i % patchSize.x);
uint y = patchMinCorner.y + (i / patchSize.x);
float4 pixel = _Input[int2(x, y)];
if (normalMap)
pixel.ba = 1.0f;
#if defined(DPID_SAMPLING)
float f_c = 0.0f, f_a = 0.0f;
if (premultiplyAlpha)
{
f_c = distance(avg.rgb, pixel.rgb);
f_a = distance(avg.a, pixel.a);
}
else
{
f_c = f_a = distance(avg, pixel);
}
f_c = applyLambda(f_c, lambda);
f_a = applyLambda(f_a, lambda);
float contrib = contribution(max_f, min_f, x, y);
f_c *= contrib;
f_a *= contrib;
#elif defined(GUIDANCE_SAMPLING)
float contrib = contribution(max_f, min_f, x, y);
float f_c = contrib, f_a = contrib;
#endif
bool b = (PX >= oWidth || PY >= oHeight);
add(color, pixel, b ? 0.0f : f_c, b ? 0.0f : f_a);
}
#if USE_WARP_REDUCTION
WarpReduce(color.color, color.factor, color.factorAlpha, indexInGroup);
#endif
if (PX >= oWidth || PY >= oHeight)
return;
if (indexInGroup == 0)
{
normalize(color, avg);
#ifdef DEBUG_INVERT
color.color.xyz = 1 - color.color.xyz;
#endif
if (sRGB)
color.color.xyz = LinearToSRGB(color.color.xyz);
#if defined(DEBUG_GUIDANCE) && defined(DPID_SAMPLING)
_Output[int2(PX, PY)] = _Guidance[int2(PX, PY)];
#else
_Output[int2(PX, PY)] = color.color;
#endif
}
}
#if defined(GUIDANCE_SAMPLING)
[numthreads(THREADS, 1, 1)]
void KernelGuidance(uint3 id : SV_DispatchThreadID, uint3 gid: SV_GroupID, uint gtid: SV_GroupIndex)
{
Downsampling(id, gid, gtid);
}
void KernelDownsampling(uint3 id : SV_DispatchThreadID, uint3 gid: SV_GroupID, uint gtid: SV_GroupIndex) { }
#else
[numthreads(THREADS, 1, 1)]
void KernelDownsampling(uint3 id : SV_DispatchThreadID, uint3 gid: SV_GroupID, uint gtid: SV_GroupIndex)
{
Downsampling(id, gid, gtid);
}
[numthreads(THREADS, 1, 1)]
void KernelGuidance(uint3 id : SV_DispatchThreadID, uint3 gid: SV_GroupID, uint gtid: SV_GroupIndex) { }
#endif

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

View File

@@ -0,0 +1,40 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!84 &8400000
RenderTexture:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: ThumbnailCapture
m_ImageContentsHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
m_ForcedFallbackFormat: 4
m_DownscaleFallback: 0
m_IsAlphaChannelOptional: 0
serializedVersion: 5
m_Width: 1200
m_Height: 900
m_AntiAliasing: 8
m_MipCount: -1
m_DepthStencilFormat: 92
m_ColorFormat: 48
m_MipMap: 0
m_GenerateMips: 1
m_SRGB: 0
m_UseDynamicScale: 0
m_BindMS: 0
m_EnableCompatibleFormat: 1
m_EnableRandomWrite: 0
m_TextureSettings:
serializedVersion: 2
m_FilterMode: 1
m_Aniso: 0
m_MipBias: 0
m_WrapU: 1
m_WrapV: 1
m_WrapW: 1
m_Dimension: 2
m_VolumeDepth: 1
m_ShadowSamplingMode: 2

View File

@@ -0,0 +1,39 @@
<UXML xmlns="UnityEngine.UIElements" xmlns:vrc="VRC.SDKBase.Editor.Elements">
<VisualElement class="col relative flex-grow-1 w-100 justify-content-between">
<VisualElement name="save-changes-block" class="row align-items-center d-none">
<Button name="save-changes-button" class="hover-opacity-80" text="Save Changes" />
<Button name="discard-changes-button" class="hover-opacity-80" text="Discard" />
</VisualElement>
<VisualElement name="info-section" class="col flex-grow-1">
<vrc:StepFoldout stepName="1." text="Prepare Your Content" class="section-foldout" name="info-foldout" view-data-key="builder-info-foldout">
<ScrollView>
<VisualElement class="col mt-1" name="content-info-block" />
</ScrollView>
</vrc:StepFoldout>
<vrc:StepFoldout stepName="2." text="Review Any Alerts" class="section-foldout" name="validations-foldout" view-data-key="builder-validations-foldout">
<ScrollView>
<VisualElement class="col mt-1" name="validations-block" />
</ScrollView>
</vrc:StepFoldout>
</VisualElement>
<VisualElement class="d-none absolute" name="descriptor-error">
<VisualElement name="descriptor-builder-error" />
<Label text="Descriptor Error" name="descriptor-error-text" />
</VisualElement>
<VisualElement class="col flex-shrink-0" name="build-section">
<vrc:StepFoldout stepName="3." text="Build" class="section-foldout" name="build-foldout" view-data-key="builder-build-foldout">
<VisualElement class="col" name="build-panel-gui" />
<VisualElement class="col absolute d-none" name="builder-notification">
<VisualElement class="col flex-grow-1 flex-shrink-0 items-center justify-content-center p-3">
<Label class="text-lg text-bold text-center" text="Success" name="builder-notification-title" />
<VisualElement name="builder-notification-content" class="p-2" />
</VisualElement>
<VisualElement class="row flex-end" name="builder-notification-header">
<Button class="absolute cursor-link hover-text-highlight" text=" " name="builder-notification-dismiss" />
</VisualElement>
</VisualElement>
</vrc:StepFoldout>
</VisualElement>
</VisualElement>
</UXML>

View File

@@ -0,0 +1,408 @@
.block {
background-color: rgba(255,255,255,0.05);
border-radius: 4px;
padding: 5px;
}
#content-info-block {
flex-shrink: 1;
flex-grow: 1;
}
#content-info{
align-items: flex-start;
}
.content-info-field {
white-space: normal;
margin-bottom: 4px;
}
#content-name {
margin-bottom: 4px;
}
#save-changes-block {
height: 0;
overflow: hidden;
align-items: stretch;
background-color: var(--unity-colors-default-background);
padding: 5px 12px;
}
#save-changes-block > Button {
border-radius: 7px;
padding: 16px;
font-size: 14px;
color: white;
-unity-font-style: bold;
flex: 1;
}
#save-changes-button {
background-color: #006FF8;
margin-right: 4px;
}
#discard-changes-button {
background-color: #9E3227;
}
#content-info TextField {
margin-left: 0;
}
#build-block {
align-self: flex-end;
}
#local-test-settings IntegerField IntegerInput {
min-width: 20px;
}
#local-test-settings IntegerField Label {
min-width: 120px;
}
#local-test-settings Toggle Label {
min-width: 120px;
}
#local-test-settings Toggle VisualElement.unity-toggle__input {
justify-content: flex-end;
}
.help-button {
background-image: resource("d__Help");
-unity-background-scale-mode: scale-to-fit;
background-color: rgba(255,255,255,0);
border-width: 0;
width: 16px;
height: 16px;
margin: 2px;
cursor: link;
}
.help-button:hover {
opacity: 0.75;
}
#descriptor-error {
width: 100%;
height: 100%;
align-items: center;
justify-content: center;
padding: 20px;
}
#descriptor-error-text {
font-size: 16px;
-unity-font-style: bold-and-italic;
}
#local-test-disabled-block, #build-and-upload-disabled-block, #main-action-disabled-block {
width: 100%;
height: 100%;
background-color: rgba(20,20,20,1);
align-items: center;
justify-content: center;
padding: 4px;
-unity-text-align: middle-center;
border-radius: 3px;
}
.section-header {
width: 100%;
border-bottom-width: 1px;
padding-bottom: 10px;
padding-top: 10px;
padding-left: 2px;
margin-top: 5px;
margin-bottom: 5px;
}
.dark .section-header {
background-color: rgb(60, 60, 60);
}
.light .section-header {
background-color: rgb(203, 203, 203);
}
.section-header > Label {
-unity-font-style: bold;
top: 1px;
}
.section-header .icon {
width: 12px;
height: 12px;
top: 2px;
-unity-background-scale-mode: scale-to-fit;
margin-right: 2px;
}
#validations-icon {
width: 12px;
height: 12px;
top: 2px;
-unity-background-scale-mode: scale-to-fit;
margin-right: 2px;
}
.dark #validations-icon {
background-image: resource("d_console.infoicon");
}
.light #validations-icon {
background-image: resource("console.infoicon");
}
#avatar-selector-popup > Label {
-unity-font-style: bold;
}
.section-foldout > Toggle {
margin: 0;
padding: 10px;
flex-shrink: 0;
min-height: 24px;
}
.section-foldout > Toggle > VisualElement {
min-height: 24px;
}
.section-foldout > Toggle:checked {
border-bottom-width: 0;
}
.section-foldout {
margin-top: 3px;
margin-bottom: 3px;
border-bottom-width: 0;
}
.dark .section-foldout > Toggle {
background-color: rgb(60, 60, 60);
}
.light .section-foldout > Toggle {
background-color: rgb(203, 203, 203);
}
.dark .section-foldout > Toggle:hover {
background-color: rgb(71, 71, 71);
}
.section-foldout > Toggle Label {
-unity-font-style: bold;
font-size: 18px;
-unity-text-align: middle-center;
flex-grow: 1;
}
.section-foldout .unity-foldout__content {
flex-grow: 1;
margin-left: 0;
}
.section-foldout .unity-scroll-view {
flex-grow: 1;
}
.section-foldout .unity-scroll-view .unity-scroll-view__content-container {
flex-grow: 1;
}
#info-foldout #info-icon {
width: 14px;
height: 14px;
top: 1px;
-unity-background-scale-mode: scale-to-fit;
margin-right: 4px;
}
#info-foldout {
flex-basis: auto;
flex-grow: 0;
flex-shrink: 0;
}
#info-foldout:checked {
flex-grow: 1;
flex-shrink: 1;
}
#validations-foldout {
flex-basis: auto;
flex-grow: 0;
flex-shrink: 0;
max-height: 50%;
}
#validations-foldout:checked {
flex-shrink: 1;
}
.dark #info-foldout #info-icon {
background-image: resource("d_UnityEditor.InspectorWindow");
}
.light #info-foldout #info-icon {
background-image: resource("UnityEditor.InspectorWindow");
}
.dark #validations-block {
border-bottom-color: rgb(26, 26, 26);
}
.light #validations-block {
border-bottom-color: rgb(127, 127, 127);
}
#build-foldout #unity-content {
margin-left: 0;
}
#build-foldout {
border-bottom-width: 0;
border-top-width: 1px;
margin-top: 0;
}
.dark #build-foldout {
border-top-color: rgb(26, 26, 26);
}
.light #build-foldout {
border-top-color: rgb(127, 127, 127);
}
.dark .windows-icon {
background-image: resource("d_BuildSettings.Metro");
}
.light .windows-icon {
background-image: resource("BuildSettings.Metro");
}
.dark .android-icon {
background-image: resource("d_BuildSettings.Android");
}
.light .android-icon {
background-image: resource("BuildSettings.Android");
}
#platform-switcher-popup .icon {
width: 12px;
height: 12px;
top: 3px;
-unity-background-scale-mode: scale-to-fit;
margin-right: 2px;
}
#platform-switcher-popup > Label {
-unity-font-style: bold;
}
#platform-switcher {
border-top-width: 1px;
border-bottom-width: 0;
}
.dark #platform-switcher {
border-top-color: rgb(26, 26, 26);
}
.light #platform-switcher {
border-top-color: rgb(127, 127, 127);
}
#platform-switcher {
padding-left: 0;
}
.field-label {
min-width: 135px;
}
.help-box {
padding: 6px;
border-radius: 4px;
border-width: 1px;
margin-right: 3px;
}
.dark .help-box {
background-color: rgba(96, 96, 96, 0.2039216);
border-color: #232323;
color: #BDBDBD;
}
.light .help-box {
background-color: rgba(235, 235, 235, 0.2039216);
border-color: #A9A9A9;
color: #161616;
}
.light #build-foldout #unity-content {
background-color: rgb(194, 194, 194);
}
.dark #build-foldout #unity-content {
background-color: rgb(56, 56, 56);
}
#builder-notification {
position: absolute;
left: 0;
top: 0;
bottom: 0;
right:0;
width: 100%;
height: 100%;
}
.dark #builder-notification {
background-color: rgba(0,0,0,0.9);
}
.light #builder-notification {
background-color: rgba(255,255,255,0.9);
}
#builder-notification-header {
position: absolute;
top: 0;
left: 0;
width: 100%;
}
#builder-notification-title {
font-size: 16px;
}
#builder-notification-dismiss {
position: absolute;
right: 8px;
top: 8px;
border-width: 0;
background-color: transparent;
width: 16px;
height: 16px;
}
#builder-notification-dismiss:hover {
opacity: 0.5;
}
.dark #builder-notification-dismiss {
background-image: resource("d_winbtn_win_close");
}
.light #builder-notification-dismiss {
background-image: resource("winbtn_win_close");
}

View File

@@ -0,0 +1,13 @@
<UXML xmlns="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements">
<VisualElement name="root">
<uie:Toolbar name="toolbar" class="w-100">
<uie:ToolbarButton name="tab-authentication" text="Authentication" class="flex-1 text-center" />
<uie:ToolbarButton name="tab-builder" text="Builder" class="flex-1 text-center" />
<uie:ToolbarButton name="tab-content-manager" text="Content Manager" class="flex-1 text-center" />
<uie:ToolbarButton name="tab-settings" text="Settings" class="flex-1 text-center" />
</uie:Toolbar>
<VisualElement name="banner" />
<VisualElement name="sdk-container" />
<VisualElement name="builder-panel" class="d-none" />
</VisualElement>
</UXML>

View File

@@ -0,0 +1,20 @@
<UXML xmlns="UnityEngine.UIElements">
<VisualElement class="col">
<VisualElement class="relative" name="splash-block">
<VisualElement class="absolute" name="splash-bg" />
<VisualElement class="absolute col justify-content-center align-items-center" name="splash-block-bottom">
<Button text="Getting Started" name="splash-block-bottom-button" />
</VisualElement>
</VisualElement>
<VisualElement class="buttons-row mt-1" name="help-buttons">
<Button text="SDK Docs" name="sdk-docs-button" class="first" />
<Button text="VRChat FAQ" name="vrc-faq-button" />
<Button text="Help Center" name="help-center-button" class="last" />
<Button text="Examples" name="examples-button" class="d-none last" />
</VisualElement>
<Button text="Building VRChat Quest Content" name="vrc-quest-content-button" />
<VisualElement class="col justify-content-center align-items-center mt-1" name="bottom-block">
<Button name="bottom-block-button" class="white-space-normal" />
</VisualElement>
</VisualElement>
</UXML>

View File

@@ -0,0 +1,37 @@
#splash-block {
width: 400px;
height: 200px;
}
#splash-bg {
background-image: resource("vrcSdkHeader");
width: 100%;
height: 100%;
}
#splash-button {
bottom: 25px;
left: 20px;
padding: 0 50px;
}
#splash-block-bottom {
bottom: 5px;
left: 0;
width: 100%;
}
#splash-block-bottom-button {
padding: 0 50px;
}
#help-buttons {
padding: 0 4px;
}
#bottom-block {
width: 400px;
height: 100px;
background-image: resource("vrcSdkBottomHeader");
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 665 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View File

@@ -0,0 +1,14 @@
#container {
margin: 2px 10px;
}
#title-label {
-unity-font-style: bold;
font-size: 18px;
margin-bottom: 10px;
}
#settings-button {
padding: 0;
margin: 0;
}

View File

@@ -0,0 +1,77 @@
Copyright © Facebook Technologies, LLC and its affiliates. All rights reserved.
The Oculus SDK License Agreement became effective on June 1, 2020, and governs your use of all Oculus SDKs. The agreement below is no longer in effect.
***************************************************************
The text of this may be found at: https://developer.oculus.com/licenses/audio-3.2.2/
Human-Readable Summary*:
You are Free to:
Use, modify, and distribute the Oculus Audio SDK in source and binary form with your applications/software.
With the Following Restrictions:
• Modifications to the Oculus Audio SDK in source or binary form must be shared with Oculus.
* This human-readable Summary is not a license. It is simply a convenient reference for understanding the full Oculus Audio SDK License Agreement. The Summary is written as a user-friendly interface to the full Oculus Audio SDK License Agreement below. This Summary itself has no legal value, and its contents do not appear in the actual license.
Full-length Legal Copy:
1. Subject to the terms and conditions of this License Agreement (the “License”), Facebook Technologies, LLC formerly known as Oculus VR, LLC (“Oculus”) hereby grants to you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, sublicenseable copyright license to use, reproduce, redistribute (subject to restrictions below), modify, and improve the software contained in this Oculus Audio Software Development Kit (“AUDIO SDK”). This license is subject to the following terms and conditions:
1.1. This license includes the non-exclusive license and right to use (i) the AUDIO SDK to make applications, content, games and demos (collectively and generally referred to as “Developer Content”) which may incorporate the AUDIO SDK in whole or in part in binary or object code; and (ii) use the AUDIO SDK to create derivative works of the AUDIO SDK itself (“AUDIO SDK Derivatives”), whether in source, binary, or object form, in whole or in part, including third-party software unless otherwise noted.
1.2. AUDIO SDK Derivatives are further defined as source, binary or object code derived exclusively from the AUDIO SDK by you; provided, however, that AUDIO SDK Derivatives do not include the Developer Content (engines, utilities, applications, content, games or demos) which may be developed using the AUDIO SDK. By way of example an application or game or demo that is developed using the AUDIO SDK would not be an AUDIO SDK Derivative, nor would a utility or tool set in a pre-existing game engine that is adapted to work with the AUDIO SDK be a AUDIO SDK Derivative. By way of example, but not limitation, an AUDIO SDK Derivative is or would be: either (i) an adaptation of a utility or piece of code from the AUDIO SDK to improve efficiency; or (ii) an addition of code or improvement to the AUDIO SDK that adds functionality.
1.3 For the sake of clarification when you use the AUDIO SDK (including AUDIO SDK Derivatives) in or with Developer Content, you retain all rights to your Developer Content, and you have no obligations to share or license Developer Content (including your source and object code) to Oculus or any third parties; provided, however, Oculus retains all rights to the AUDIO SDK and the AUDIO SDK Derivatives that may be incorporated into your Developer Content.
2. You, the recipient and user of the AUDIO SDK, hereby agree and accept that Oculus hereby owns all right, title and interest to the intellectual property rights, including, but not limited to copyright, trademark and patent rights, to any AUDIO SDK Derivatives that you may create, and you hereby assign any and all such rights to such AUDIO SDK Derivatives to Oculus.
2.1 We hereby grant to you a fully paid up, no-charge, royalty-free, world-wide, in perpetuity, non-exclusive right and license back to use these AUDIO SDK Derivatives solely in conjunction with the AUDIO SDK (or any components of the AUDIO SDK) and/or Developer Content.
2.2 Furthermore, for the sake of clarification, Oculus and its assignees and licensees shall be free to use such AUDIO SDK Derivatives without any approval from you and without compensation or attribution to you.
2.3 You also agree upon Oculuss request to provide the source and binary code of any AUDIO SDK Derivatives to Oculus. Failure to comply with this request is the basis for automatic termination of this License by Oculus.
3. Subject to the terms and conditions of this License, your license to redistribute and sublicense the AUDIO SDK and AUDIO SDK Derivatives is also expressly made subject to the following conditions:
3.1. You may sublicense and redistribute the source, binary, or object code of the AUDIO SDK in whole or in part by itself for no charge. If you license, sublicense or redistribute AUDIO SDK Derivatives in and of themselves (not as a part of a piece of Developer Content) then you may only do that solely with and in conjunction with the AUDIO SDK;
3.2. You must include with all such redistributed or sublicensed AUDIO SDK or AUDIO SDK Derivatives code the following copyright notice: “Copyright © Facebook Technologies, LLC and its affiliates. All rights reserved,” and include the list of conditions contained in this Section 3, including the full text of the disclaimer in Section 3.6 below;
3.3. Neither the names of Facebook Technologies, LLC, Oculus VR, LLC, Oculus, nor the names of Oculuss contributors, licensors, employees, or contractors, may be used to endorse or promote products developed using the AUDIO SDK without specific prior written permission of Oculus;
3.4. You must give any other recipients of the AUDIO SDK or any elements thereof, including AUDIO SDK Derivatives, a copy of this License; and such recipients must agree to and enter into this License with Oculus. Recipients, licensees or sublicensees may only use the AUDIO SDK or any AUDIO SDK Derivatives or any elements thereof subject to the terms of this License. You must cause any modified files to carry prominent notices stating that you changed the files;
3.5. If the AUDIO SDK or a specific element thereof includes a “LICENSE” text file as part of its distribution (the “License Notice”), then any AUDIO SDK Derivatives that you distribute with the AUDIO SDK in whole or in part must include a readable copy of such attribution notices as are contained within the applicable License Notice file (excluding those notices that do not pertain to any part of the AUDIO SDK Derivatives), in at least one of the following places: within a License Notice text file distributed as part of the AUDIO SDK Derivatives; within the source form or documentation, if provided along with the AUDIO SDK Derivatives; or, within a display generated by the AUDIO SDK Derivatives, if and wherever such third-party notices normally appear. You must also include in the License Notice file for all AUDIO SDK Derivatives a copy of all notices (including any product liability notices). The contents of the License Notice file are for informational purposes only and do not modify the License. You may add your own attribution notices within AUDIO SDK Derivatives that you distribute, alongside or as an addendum to the License Notice text from the AUDIO SDK or any part thereof, provided that such additional attribution notices cannot be construed as modifying the License.
3.6. THIS AUDIO SDK AND ANY COMPONENT THEREOF IS PROVIDED BY OCULUS AND ITS CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL OCULUS AS THE COPYRIGHT OWNER OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS AUDIO SDK OR THE AUDIO SDK DERIVATIVES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4. This License does not grant permission to use the trade names, trademarks, service marks, or product names of Oculus, except as required for reasonable and customary use in describing the origin of the AUDIO SDK, or any element thereof, and reproducing the content of the License Notice file.
5. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall Oculus or any contributor be liable to you or your licensees or sublicensees for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the AUDIO SDK, any element thereof or any AUDIO SDK Derivatives (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if you or such contributor has been advised of the possibility of such damages.
6. Your acceptance of the terms and conditions of this License in and of itself and for all Developer Content created as of March 2, 2015, may be evidenced by any of the following: your usage of the AUDIO SDK or any element thereof, or acceptance of the click-through agreement. As this License is updated for future releases of the AUDIO SDK, you agree to abide by and meet all requirements of future updates of this License for those future AUDIO SDK releases as evidenced by the same usage of the AUDIO SDK or any element thereof and the future updates of this License will apply for that future Developer Content that may be developed for or with that future AUDIO SDK or any element thereof (i.e., you cannot sidestep out of the requirements of future updates of the License by developing against an older release of the AUDIO SDK or License).
7. Oculus reserves the right to terminate this License and all your rights hereunder in the event you materially breach this License and fail to cure such breach within ten (10) business days after notice of breach from Oculus.
8. Furthermore, Oculus also reserves the right to cancel or terminate this License for any of the following reasons upon notice to you, subject to the appeal process set forth in Section 16 for a wrongful termination:
Intellectual property infringement by you with Developer Content or AUDIO SDK Derivatives created by you that is used with or by the AUDIO SDK or any part thereof, or any of the AUDIO SDK Derivatives;
Developer Content that violates or infringes upon applicable law; and
Failure to provide required notices or deliver source code and/or binary of AUDIO SDK Derivatives as set forth above.
If you believe that your license has been wrongfully terminated under this Section 8 with respect to material breach or with respect to these above conditions, you have the right to appeal the termination of this License under Section 16.
9. This License may be amended by Oculus on a prospective basis, and your usage of the License after such amendments or changes signifies your consent to and acceptance of any such amendments or changes on a going forward basis.
10. In the event any provision of this License is determined to be invalid, prohibited or unenforceable by a court or other body of competent jurisdiction, this License shall be construed as if such invalid, prohibited or unenforceable provision has been more narrowly drawn so as not to be invalid, prohibited or unenforceable.
11. You may not assign any rights or obligations under this License without the advance written consent of Oculus, which may be withheld in its sole discretion. Oculus may assign its rights or obligations under this License in its sole discretion.
12. Failure of either party at any time to enforce any of the provisions of this License will not be construed as a waiver of such provisions or in any way affect the validity of this License or parts thereof.
13. Your remedies under this License shall be limited to the right to collect money damages, if any, and you hereby waive your right to injunctive or other equitable relief.
14. Your use of third-party materials included in the AUDIO SDK may be subject to other terms and conditions typically found in separate third-party license agreements or “READ ME” files included with such third-party materials. To the extent such other terms and conditions conflict with the terms and conditions of this License, the former will control with respect to the applicable third-party materials.
15. Oculus may include in the AUDIO SDK additional content (e.g., samples) for demonstration, references or other specific purposes. Such content will be clearly marked in the AUDIO SDK and is subject to any included terms and conditions.
16. This License shall be governed by the laws of the State of California, without giving effect to choice of law principles. Oculus reserves all rights not expressly granted in this License. All disputes relating to this License shall be resolved by binding non-appearance-based arbitration before a neutral arbitrator in San Mateo County, California. If your License has been terminated hereunder by Oculus, you may appeal your termination through this arbitration process on an expedited basis with an arbitration within thirty days of your giving Oculus notice of the appeal. The arbitration shall be conducted in accordance with the rules and procedures of JAMS then in effect, and the judgment of the arbitrator shall be final and capable of entry in any court of competent jurisdiction. You agree to submit to the personal jurisdiction of the courts located within San Mateo County, California in connection with any entrance of an arbitrators judgment or decision or any dispute with respect to the arbitration process or procedure or Oculuss exercise of its equitable rights or remedies.

View File

@@ -0,0 +1,14 @@
#container {
margin: 2px 10px;
}
#title-label {
-unity-font-style: bold;
font-size: 18px;
margin-bottom: 10px;
}
#settings-button {
padding: 0;
margin: 0;
}

View File

@@ -0,0 +1,40 @@
<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" editor-extension-mode="True">
<Style src="project://database/Packages/com.vrchat.base/Integrations/VRChat%20Example%20Central/Editor/Example%20Downloader%20Panel/Resources/ExampleDownloaderPanelStyle.uss?fileID=7433441132597879392&amp;guid=2bbc5f61b79c52c4ebcb9fcf6a8a4487&amp;type=3#ExampleDownloaderPanelStyle" />
<ui:VisualElement name="container">
<ui:VisualElement name="go-to-login">
<ui:Button text="Log in to use Example Central" parse-escape-sequences="true" display-tooltip-when-elided="true" name="go-to-login-btn" tooltip="Opens the VRC Control Panel in order to log in and enable Example Central." />
</ui:VisualElement>
<VRC.ExampleCentral.Window.SplitView name="split-main" fixed-pane-index="1" fixed-pane-initial-dimension="500" view-data-key="ExamplePanel-MainView">
<ui:VisualElement name="examples-container">
<ui:VisualElement name="header-examples">
<ui:Label tabindex="-1" text="Search" parse-escape-sequences="true" display-tooltip-when-elided="true" name="examples-label" />
<uie:ToolbarSearchField focusable="true" name="examples-search-field" />
<ui:Button parse-escape-sequences="true" display-tooltip-when-elided="true" name="settings-button" />
</ui:VisualElement>
<ui:ScrollView name="examples-scrollview" horizontal-scroller-visibility="Hidden" vertical-scroller-visibility="Auto">
<ui:VisualElement name="examples-scrollview-container">
<VRC.ExampleCentral.Window.PackageButton style="color: rgb(255, 255, 255);" />
<VRC.ExampleCentral.Window.PackageButton style="color: rgb(255, 255, 255);" />
<VRC.ExampleCentral.Window.PackageButton style="color: rgb(255, 255, 255);" />
<VRC.ExampleCentral.Window.PackageButton style="color: rgb(255, 255, 255);" />
</ui:VisualElement>
</ui:ScrollView>
</ui:VisualElement>
<VRC.ExampleCentral.Window.SplitView name="split-details" orientation="Vertical" fixed-pane-index="0" view-data-key="ExamplePanel-DetailsView" fixed-pane-initial-dimension="200">
<ui:VisualElement name="preview-thumbnail" />
<ui:VisualElement name="preview-settings">
<ui:Label tabindex="-1" text="Examples Thing" parse-escape-sequences="true" display-tooltip-when-elided="true" name="preview-title" />
<ui:ScrollView name="preview-settings-scrollview" horizontal-scroller-visibility="Hidden">
<ui:Label tabindex="-1" text="Version: " parse-escape-sequences="true" display-tooltip-when-elided="true" name="preview-version" />
<ui:Label tabindex="-1" text="Tags: Used, Unused" parse-escape-sequences="true" display-tooltip-when-elided="true" name="preview-tags" />
<ui:Label tabindex="-1" text="Description" parse-escape-sequences="true" display-tooltip-when-elided="true" name="preview-description" style="-unity-font-style: normal; margin-left: 0; margin-right: 0; margin-top: 4px; margin-bottom: 4px; overflow: visible; flex-wrap: nowrap; white-space: normal; text-overflow: ellipsis; color: rgb(255, 255, 255);" />
</ui:ScrollView>
<ui:VisualElement name="preview-options">
<ui:Button text="Import" parse-escape-sequences="true" display-tooltip-when-elided="true" name="preview-download" />
<ui:Button text="Docs" parse-escape-sequences="true" display-tooltip-when-elided="true" name="preview-documentation" />
</ui:VisualElement>
</ui:VisualElement>
</VRC.ExampleCentral.Window.SplitView>
</VRC.ExampleCentral.Window.SplitView>
</ui:VisualElement>
</ui:UXML>

View File

@@ -0,0 +1,212 @@
#container {
flex-direction: row;
flex-grow: 1;
background-color: rgb(31, 31, 31);
}
#go-to-login {
flex-grow: 1;
display: flex;
align-items: center;
justify-content: center;
}
#split-main {
display: none;
margin-left: 16px;
margin-right: 16px;
margin-top: 8px;
margin-bottom: 8px;
}
#split-details {
background-color: rgb(20, 20, 20);
border-top-left-radius: 8px;
border-bottom-left-radius: 8px;
border-top-right-radius: 8px;
border-bottom-right-radius: 8px;
margin-left: 16px;
min-width: 155px;
}
#examples-container {
flex-grow: 0;
min-width: 126px;
margin-right: 16px;
}
#header-examples {
flex-direction: row;
margin-bottom: 8px;
height: 24px;
flex-shrink: 0;
}
#examples-label {
-unity-font-style: bold;
font-size: 20px;
margin-right: 16px;
color: rgb(255, 255, 255);
}
#examples-search-field {
flex-grow: 1;
margin-left: 0;
margin-right: 0;
margin-top: 0;
margin-bottom: 0;
border-top-left-radius: 6px;
border-bottom-left-radius: 6px;
border-top-right-radius: 6px;
border-bottom-right-radius: 6px;
width: 0;
font-size: 14px;
}
#packages-header {
background-color: rgb(41, 41, 41);
border-top-left-radius: 8px;
border-top-right-radius: 8px;
height: 24px;
flex-shrink: 0;
border-left-color: rgb(82, 82, 82);
border-right-color: rgb(82, 82, 82);
border-top-color: rgb(82, 82, 82);
border-bottom-color: rgb(82, 82, 82);
border-bottom-width: 1px;
}
#packages-label {
-unity-font-style: bold;
padding-left: 16px;
padding-right: 4px;
padding-top: 4px;
padding-bottom: 4px;
flex-grow: 1;
-unity-text-align: middle-left;
color: rgb(255, 255, 255);
}
#examples-scrollview {
background-color: rgb(41, 41, 41);
}
#examples-scrollview-container {
background-color: rgb(82, 82, 82);
}
#preview-thumbnail {
height: 144px;
background-color: rgba(89, 89, 89, 0);
flex-shrink: 0;
background-image: none;
-unity-background-scale-mode: scale-to-fit;
min-height: 64px;
}
#preview-settings {
flex-grow: 1;
padding-left: 8px;
padding-right: 8px;
padding-top: 8px;
padding-bottom: 8px;
min-height: 164px;
}
#preview-title {
-unity-font-style: bold;
margin-left: 0;
margin-right: 0;
margin-top: 8px;
margin-bottom: 2px;
font-size: 20px;
white-space: normal;
color: rgb(255, 255, 255);
}
#preview-settings-scrollview {
flex-grow: 1;
}
#preview-version {
-unity-font-style: normal;
flex-grow: 0;
margin-left: 0;
margin-right: 0;
margin-top: 2px;
margin-bottom: 4px;
color: rgb(255, 255, 255);
font-size: 10px;
white-space: normal;
}
#preview-tags {
-unity-font-style: normal;
flex-grow: 0;
margin-left: 0;
margin-right: 0;
margin-top: 2px;
margin-bottom: 4px;
color: rgb(255, 255, 255);
font-size: 10px;
white-space: normal;
}
#preview-options {
flex-direction: row;
height: 32px;
flex-shrink: 0;
min-height: 32px;
margin-top: 8px;
}
#preview-download {
flex-grow: 1;
border-top-left-radius: 6px;
border-bottom-left-radius: 6px;
border-top-right-radius: 6px;
border-bottom-right-radius: 6px;
margin-left: 0;
margin-right: 0;
margin-top: 0;
margin-bottom: 0;
width: auto;
background-color: rgb(15, 145, 169);
-unity-font-style: bold;
font-size: 14px;
border-left-color: rgb(48, 48, 48);
border-right-color: rgb(48, 48, 48);
border-top-color: rgb(48, 48, 48);
border-bottom-color: rgb(36, 36, 36);
color: rgb(238, 238, 238);
}
#preview-documentation {
border-top-left-radius: 6px;
border-bottom-left-radius: 6px;
border-top-right-radius: 6px;
border-bottom-right-radius: 6px;
margin-left: 6px;
margin-right: 0;
margin-top: 0;
margin-bottom: 0;
flex-grow: 0;
background-color: rgb(20, 20, 20);
-unity-font-style: bold;
padding-left: 16px;
padding-right: 16px;
font-size: 14px;
color: rgb(255, 255, 255);
border-left-color: rgb(48, 48, 48);
border-right-color: rgb(48, 48, 48);
border-top-color: rgb(48, 48, 48);
border-bottom-color: rgb(36, 36, 36);
}
#settings-button {
background-image: none;
flex-basis: 24px;
width: 24px;
height: 24px;
-unity-background-scale-mode: scale-to-fit;
}

View File

@@ -0,0 +1,7 @@
<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" editor-extension-mode="True">
<Style src="project://database/Packages/com.vrchat.base/Integrations/VRChat%20Sample%20Central/Editor/Sample%20Downloader%20Panel/Resources/PackageTabButtonStyle.uss?fileID=7433441132597879392&amp;guid=7d25b279c57e51341bb553313ea74fc0&amp;type=3#PackageTabButtonStyle" />
<ui:VisualElement name="container">
<ui:VisualElement name="selection-element" />
<ui:Label tabindex="-1" text="Label" parse-escape-sequences="true" display-tooltip-when-elided="true" />
</ui:VisualElement>
</ui:UXML>

View File

@@ -0,0 +1,28 @@
#container {
flex-grow: 0;
flex-shrink: 0;
height: 40px;
background-color: rgb(41, 41, 41);
margin-bottom: 1px;
}
#selection-element {
flex-grow: 1;
position: absolute;
top: 0;
right: 0;
bottom: 0;
background-color: rgb(56, 56, 56);
display: none;
left: 0;
}
#container Label {
flex-grow: 1;
-unity-text-align: middle-left;
margin-left: 16px;
font-size: 14px;
-unity-font-style: bold;
color: rgb(255, 255, 255);
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 387 B

View File

@@ -0,0 +1,138 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: BlueprintCam
m_Shader: {fileID: 10752, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 5
m_CustomRenderQueue: 2000
stringTagMap: {}
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
data:
first:
name: _MainTex
second:
m_Texture: {fileID: 8400000, guid: 94b649c2bd1ac4cac95049605dc5333d, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _BumpMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailNormalMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _ParallaxMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _OcclusionMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _EmissionMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailMask
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _DetailAlbedoMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
data:
first:
name: _MetallicGlossMap
second:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
data:
first:
name: _SrcBlend
second: 1
data:
first:
name: _DstBlend
second: 0
data:
first:
name: _Cutoff
second: .5
data:
first:
name: _Parallax
second: .0199999996
data:
first:
name: _ZWrite
second: 1
data:
first:
name: _Glossiness
second: .5
data:
first:
name: _BumpScale
second: 1
data:
first:
name: _OcclusionStrength
second: 1
data:
first:
name: _DetailNormalMapScale
second: 1
data:
first:
name: _UVSec
second: 0
data:
first:
name: _Mode
second: 0
data:
first:
name: _Metallic
second: 0
m_Colors:
data:
first:
name: _EmissionColor
second: {r: 0, g: 0, b: 0, a: 1}
data:
first:
name: _Color
second: {r: 1, g: 1, b: 1, a: 1}

View File

@@ -0,0 +1,24 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!84 &8400000
RenderTexture:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: BlueprintCam
m_ImageContentsHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
m_Width: 400
m_Height: 300
m_AntiAliasing: 1
m_DepthFormat: 2
m_ColorFormat: 0
m_MipMap: 0
m_GenerateMips: 1
m_SRGB: 0
m_TextureSettings:
m_FilterMode: 1
m_Aniso: 0
m_MipBias: 0
m_WrapMode: 1

View File

@@ -0,0 +1,73 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: damageGrey
m_Shader: {fileID: 10723, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 2800000, guid: 3a9d01385a8b0af4880d46484c7054ce, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 8d95767408d35544c98f92ef7279b8db, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _Glossiness: 0
- _InvFade: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}

View File

@@ -0,0 +1,76 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: lambert2
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.5, g: 0.5, b: 0.5, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,72 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &125948
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 474528}
- component: {fileID: 11496614}
m_Layer: 0
m_Name: VRCProjectSettings
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &474528
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 125948}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &11496614
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 125948}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: -826769915, guid: 4ecd63eff847044b68db9453ce219299, type: 3}
m_Name:
m_EditorClassIdentifier:
layers:
- Default
- TransparentFX
- Ignore Raycast
- Item
- Water
- UI
- reserved6
- reserved7
- Interactive
- Player
- PlayerLocal
- Environment
- UiMenu
- Pickup
- PickupNoEnvironment
- StereoLeft
- StereoRight
- Walkthrough
- MirrorReflection
- InternalUI
- HardwareObjects
- reserved4
numLayers: 22
layerCollisionArr: 01010100010001010101010100010001010101000101010101010101010101010101010001000101010101010001000101010100010101010101010101010101010101000100010101010101000100010101010001010101010101010101010100000001000000000000000000000000000000000000000000000000000000000101010001000101010101010001000101010100010101010101010101010101000000000000010100000000000000000000000000000000000000000000000001010100010101010101010101010101010101010101010101010101010101010101010001010101010101010101010101010101010101010101010101010101010101000100010101010101000100010101010001010101010101010101010101010100010001010100000100000000000001000101010101010101010101010101010001000101010000010000000000000100010101010101010101010101010101000100010101010101000100010101010001010101010101010101010100000000000001010000000000000000000000000000000000000000000000000101010001000101010000010001010101010000000001010101010101010101000000000000010100000000000100000000000000000101010101010101010101010100010001010100000100010001010101000101000000000000000000000101010001000101010000010001000101010100010100000000000000000000010101000100010101000001000100010101010001010101010101010101010101010100010001010101010100000001010101000101010101010101010101010000000000000101000000000000000000000000000000000000000000000000010101000100010101010101000000010101010001010101010101010101010101010100010001010101010100000001010101000101010101010101010101010101010001000101010101010001010000010100010101010101010101010101010101000100010101010101000101000001010001010101010101010101010101010100010001010101010100010100000101000101010101010101010101010101010001000101010101010001010000010100010101010101010101010101010101000100010101010101000101000001010001010101010101010101010101010100010001010101010100010100000101000101010101010101010101010101010001000101010101010001010000010100010101010101010101010101010101000100010101010101000101000001010001010101010101010101010101010100010001010101010100010100000101000101010101010101010101010101010001000101010101010001010000010100010101010101010101010101
queriesHitTriggers: 0

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<aws
correctForClockSkew="true">
<logging
logTo="UnityLogger"
logResponses="Always"
logMetrics="true"
logMetricsFormat="JSON" />
<s3 useSignatureVersion4="true" />
<mobileAnalytics
sessionTimeout = "5"
maxDBSize = "5242880"
dbWarningThreshold = "0.9"
maxRequestSize = "102400"
allowUseDataNetwork = "false"
/>
</aws>

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 158 KiB

View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2017 Andreas Pardeike
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2019 Yoshifumi Kawai / Cysharp, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,76 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: BrightButton
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 2
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0, g: 1, b: 0.46206903, a: 1}
- _EmissionColor: {r: 0, g: 0.5, b: 0.23103452, a: 1}

View File

@@ -0,0 +1,76 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Chair
m_Shader: {fileID: 4800000, guid: 2dcd9e0568e0a6f45b92c60ba2eb16a0, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

@@ -0,0 +1,78 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: GUI_Gradient_Ground
m_Shader: {fileID: 200, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 12b6ddd8c3aa25a46b1cc770ea81aa0b, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _InvFade: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _TintColor: {r: 0, g: 0.7529412, b: 1, a: 0.847}

View File

@@ -0,0 +1,78 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: GUI_Zone_Holo
m_Shader: {fileID: 200, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _InvFade: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _TintColor: {r: 0.01081316, g: 0.5554229, b: 0.73529416, a: 0.847}

View File

@@ -0,0 +1,76 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Green
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0, g: 1, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

@@ -0,0 +1,110 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: MirrorReflection
m_Shader: {fileID: 4800000, guid: 693137b858e4dc64c83be531351f45e6, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 5
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ReflectionTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ReflectionTex0:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ReflectionTex1:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _FresnelScale: 0.75
- _GerstnerIntensity: 1
- _Glossiness: 0.5
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _Shininess: 200
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _AnimationDirection: {r: 1, g: 1, b: 1, a: 1}
- _AnimationTiling: {r: 2.2, g: 2.2, b: -1.1, a: -1.1}
- _BaseColor: {r: 0.53999996, g: 0.95, b: 0.98999995, a: 0.5}
- _BumpDirection: {r: 1, g: 1, b: -1, a: 1}
- _BumpTiling: {r: 1, g: 1, b: -2, a: 3}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _DistortParams: {r: 1, g: 1, b: 2, a: 1.15}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _GAmplitude: {r: 0.3, g: 0.35, b: 0.25, a: 0.25}
- _GDirectionAB: {r: 0.3, g: 0.85, b: 0.85, a: 0.25}
- _GDirectionCD: {r: 0.1, g: 0.9, b: 0.5, a: 0.5}
- _GFrequency: {r: 1.3, g: 1.35, b: 1.25, a: 1.25}
- _GSpeed: {r: 1.2, g: 1.375, b: 1.1, a: 1.5}
- _GSteepness: {r: 1, g: 1, b: 1, a: 1}
- _InvFadeParemeter: {r: 0.15, g: 0.15, b: 0.5, a: 1}
- _ReflectionColor: {r: 0.53999996, g: 0.95, b: 0.98999995, a: 0.5}
- _SpecularColor: {r: 0.72, g: 0.72, b: 0.72, a: 1}
- _WorldLightDir: {r: 0, g: 0.1, b: -0.5, a: 0}
m_BuildTextureStacks: []

Some files were not shown because too many files have changed in this diff Show More