Added Unity project files
@ -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
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 94edf62c27899004b9bca09b15e239ce
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ea349863dd208a94b88e465a7874cc2f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -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
|
||||
|
||||
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 312177c2caecaa84ba839f5504103420
|
||||
ComputeShaderImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 29 KiB |
@ -0,0 +1,128 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9ae7399f0cf902a41a20f3487af8322a
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 0
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
applyGammaDecoding: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5772d417389f8c34cb882113498aee62
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -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
|
||||
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: abbe9332cbff4a143812d98775e04a72
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 8400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -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>
|
||||
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 567fb68379e44c4d970461b6294276ac
|
||||
timeCreated: 1684274400
|
||||
@ -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");
|
||||
}
|
||||
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5edd88a9009748e3a2d8e7900dcf839c
|
||||
timeCreated: 1684274929
|
||||
@ -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>
|
||||
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a55e07f20e57463886f414c9c5393f9f
|
||||
timeCreated: 1684200985
|
||||
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3c20193d066a421398fc7681c439ea8f
|
||||
timeCreated: 1684201098
|
||||
@ -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>
|
||||
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2eab3e5bca2445eb92e40701323ddddc
|
||||
timeCreated: 1687265707
|
||||
@ -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");
|
||||
}
|
||||
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9211071f17f5422b8148dbee973f90d5
|
||||
timeCreated: 1687266419
|
||||
|
After Width: | Height: | Size: 665 B |
@ -0,0 +1,140 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 88d7c146396c61f439950d955478388d
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 44 KiB |
@ -0,0 +1,128 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8c4423c989a97d64eabbd9375dbd3e89
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
applyGammaDecoding: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 9.5 KiB |
@ -0,0 +1,164 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cb3df6568f1c9b74d8bbe0e192d2514d
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 0
|
||||
wrapV: 0
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
applyGammaDecoding: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: tvOS
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Windows Store Apps
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 83 KiB |
@ -0,0 +1,128 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1fc57198d6a4e5a4e9c3175ab5c609a7
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 0
|
||||
wrapV: 0
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
applyGammaDecoding: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 50
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 50 KiB |
@ -0,0 +1,128 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8a1b641706609974386a28a714201754
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: 50
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 1
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 82 KiB |
@ -0,0 +1,128 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a337b85d7d3b8f0408576d7f08bf609f
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
applyGammaDecoding: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 30 KiB |
@ -0,0 +1,128 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 19889d5e743a45f4da316fb1d760ffba
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
applyGammaDecoding: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||