Added grass, started working on l systems

This commit is contained in:
Bartosz Hejduk 2021-07-09 20:35:34 +02:00
parent b355851611
commit 54577d086d
324 changed files with 4674 additions and 1104 deletions

View File

@ -58,15 +58,21 @@
<ItemGroup> <ItemGroup>
<Compile Include="Assets\Scripts\MatrixExtensions.cs" /> <Compile Include="Assets\Scripts\MatrixExtensions.cs" />
<Compile Include="Assets\Scripts\LSystemNodeLiteral.cs" /> <Compile Include="Assets\Scripts\LSystemNodeLiteral.cs" />
<Compile Include="Assets\Scripts\TurtleLSystemEnvironment.cs" />
<Compile Include="Assets\Scripts\TurtleLSystem.cs" /> <Compile Include="Assets\Scripts\TurtleLSystem.cs" />
<Compile Include="Assets\Scripts\LSystemNode.cs" /> <Compile Include="Assets\Scripts\LSystemNode.cs" />
<Compile Include="Assets\Scripts\LSystemEvaluator.cs" /> <Compile Include="Assets\Scripts\LSystemEvaluator.cs" />
<Compile Include="Assets\Scripts\Environment.cs" />
<Compile Include="Assets\Scripts\TreeTurtle.cs" />
<Compile Include="Assets\Scripts\MathExpression.cs" /> <Compile Include="Assets\Scripts\MathExpression.cs" />
<Compile Include="Assets\Scripts\LSystemRule.cs" /> <Compile Include="Assets\Scripts\LSystemRule.cs" />
<Compile Include="Assets\Scripts\LSystemParser.cs" /> <Compile Include="Assets\Scripts\LSystemParser.cs" />
<Compile Include="Assets\Scripts\TurtleEnvironment.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="Assets\Samples\Terrain Tools\0.1.0-preview\Terrain Assets\ThirdPartyNotices.txt" /> <None Include="Assets\Samples\Terrain Tools\0.1.0-preview\Terrain Assets\ThirdPartyNotices.txt" />
<None Include="Assets\LSystems\Tree2.txt" />
<None Include="Assets\LSystems\Tree.txt" />
<Reference Include="UnityEngine"> <Reference Include="UnityEngine">
<HintPath>C:\Program Files\Unity\Hub\Editor\2021.1.7f1\Editor\Data\Managed\UnityEngine\UnityEngine.dll</HintPath> <HintPath>C:\Program Files\Unity\Hub\Editor\2021.1.7f1\Editor\Data\Managed\UnityEngine\UnityEngine.dll</HintPath>
</Reference> </Reference>

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0e612fb1e46f3bb45bfa9547e9ffe431
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 90a98d1ca0ff3f34b817aee6ee27e766
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fdec4a75f73522f4eb2f9d540a9aeb5e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 679e28dd92e786342b7944447228f70c
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5490dd165db8d15458e920b5c398e991
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 25800000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,77 @@
fileFormatVersion: 2
guid: ff26dd0d532f43942b51232390841a6d
TextureImporter:
fileIDToRecycleName:
8900000: generatedCubemap
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 1
seamlessCubemap: 1
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: 0
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 1
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: 2
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 100
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,63 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!850595691 &4890085278179872738
LightingSettings:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: DemoGrassFlowersSettings
serializedVersion: 3
m_GIWorkflowMode: 1
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 1
m_RealtimeEnvironmentLighting: 1
m_BounceScale: 1
m_AlbedoBoost: 1
m_IndirectOutputScale: 1
m_UsingShadowmask: 1
m_BakeBackend: 0
m_LightmapMaxSize: 1024
m_BakeResolution: 40
m_Padding: 2
m_TextureCompression: 1
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_ExtractAO: 0
m_MixedBakeMode: 2
m_LightmapsBakeMode: 1
m_FilterMode: 1
m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
m_ExportTrainingData: 0
m_TrainingDataDestination: TrainingData
m_RealtimeResolution: 2
m_ForceWhiteAlbedo: 0
m_ForceUpdates: 0
m_FinalGather: 0
m_FinalGatherRayCount: 256
m_FinalGatherFiltering: 1
m_PVRCulling: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 500
m_PVREnvironmentSampleCount: 500
m_PVREnvironmentReferencePointCount: 2048
m_LightProbeSampleCountMultiplier: 4
m_PVRBounces: 2
m_PVRMinBounces: 2
m_PVREnvironmentMIS: 0
m_PVRFilteringMode: 2
m_PVRDenoiserTypeDirect: 0
m_PVRDenoiserTypeIndirect: 0
m_PVRDenoiserTypeAO: 0
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
m_PVRFilteringGaussRadiusAO: 2
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b0ac21d1017eff04496096a542dadda6
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 4890085278179872738
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,375 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8a3bdb2cd68f901469e7cc149151eb49, type: 3}
m_Name: Post-Processing For GrassFlowers
m_EditorClassIdentifier:
debugViews:
m_Enabled: 1
m_Settings:
mode: 0
depth:
scale: 1
motionVectors:
sourceOpacity: 1
motionImageOpacity: 0
motionImageAmplitude: 16
motionVectorsOpacity: 1
motionVectorsResolution: 24
motionVectorsAmplitude: 64
fog:
m_Enabled: 1
m_Settings:
excludeSkybox: 1
antialiasing:
m_Enabled: 1
m_Settings:
method: 0
fxaaSettings:
preset: 1
taaSettings:
jitterSpread: 0.75
sharpen: 0.3
stationaryBlending: 0.95
motionBlending: 0.85
ambientOcclusion:
m_Enabled: 1
m_Settings:
intensity: 1.6
radius: 0.3
sampleCount: 16
downsampling: 1
forceForwardCompatibility: 0
ambientOnly: 0
highPrecision: 1
screenSpaceReflection:
m_Enabled: 0
m_Settings:
reflection:
blendType: 0
reflectionQuality: 2
maxDistance: 100
iterationCount: 256
stepSize: 3
widthModifier: 0.5
reflectionBlur: 1
reflectBackfaces: 0
intensity:
reflectionMultiplier: 1
fadeDistance: 100
fresnelFade: 1
fresnelFadePower: 1
screenEdgeMask:
intensity: 0.03
depthOfField:
m_Enabled: 0
m_Settings:
focusDistance: 10
aperture: 5.6
focalLength: 50
useCameraFov: 0
kernelSize: 1
motionBlur:
m_Enabled: 0
m_Settings:
shutterAngle: 270
sampleCount: 10
frameBlending: 0
eyeAdaptation:
m_Enabled: 0
m_Settings:
lowPercent: 45
highPercent: 95
minLuminance: -5
maxLuminance: 1
keyValue: 0.25
dynamicKeyValue: 1
adaptationType: 0
speedUp: 2
speedDown: 1
logMin: -8
logMax: 4
bloom:
m_Enabled: 1
m_Settings:
bloom:
intensity: 5.31
threshold: 1.25
softKnee: 0.678
radius: 2.29
antiFlicker: 0
lensDirt:
texture: {fileID: 0}
intensity: 3
colorGrading:
m_Enabled: 1
m_Settings:
tonemapping:
tonemapper: 1
neutralBlackIn: 0.02
neutralWhiteIn: 10
neutralBlackOut: 0
neutralWhiteOut: 10
neutralWhiteLevel: 5.3
neutralWhiteClip: 10
basic:
postExposure: 1.23
temperature: 0
tint: 0
hueShift: 0
saturation: 0.92
contrast: 1
channelMixer:
red: {x: 1, y: 0, z: 0}
green: {x: 0, y: 1, z: 0}
blue: {x: 0, y: 0, z: 1}
currentEditingChannel: 0
colorWheels:
mode: 1
log:
slope:
r: 1
g: 1
b: 1
a: 0
power:
r: 1
g: 1
b: 1
a: 0
offset:
r: 1
g: 1
b: 1
a: 0
linear:
lift:
r: 0
g: 0
b: 0
a: 0
gamma:
r: 0
g: 0
b: 0
a: 0
gain:
r: 0
g: 0
b: 0
a: 0
curves:
master:
curve:
m_Curve:
- time: 0
value: 0
inSlope: 1
outSlope: 1
tangentMode: 0
- time: 1
value: 1
inSlope: 1
outSlope: 1
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 0
m_Loop: 0
m_ZeroValue: 0
m_Range: 1
m_InternalLoopingCurve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
red:
curve:
m_Curve:
- time: 0
value: 0
inSlope: 1
outSlope: 1
tangentMode: 0
- time: 1
value: 1
inSlope: 1
outSlope: 1
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Loop: 0
m_ZeroValue: 0
m_Range: 1
m_InternalLoopingCurve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
green:
curve:
m_Curve:
- time: 0
value: 0
inSlope: 1
outSlope: 1
tangentMode: 0
- time: 1
value: 1
inSlope: 1
outSlope: 1
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Loop: 0
m_ZeroValue: 0
m_Range: 1
m_InternalLoopingCurve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
blue:
curve:
m_Curve:
- time: 0
value: 0
inSlope: 1
outSlope: 1
tangentMode: 0
- time: 1
value: 1
inSlope: 1
outSlope: 1
tangentMode: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Loop: 0
m_ZeroValue: 0
m_Range: 1
m_InternalLoopingCurve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
hueVShue:
curve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Loop: 1
m_ZeroValue: 0.5
m_Range: 1
m_InternalLoopingCurve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
hueVSsat:
curve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Loop: 1
m_ZeroValue: 0.5
m_Range: 1
m_InternalLoopingCurve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
satVSsat:
curve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Loop: 0
m_ZeroValue: 0.5
m_Range: 1
m_InternalLoopingCurve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
lumVSsat:
curve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_Loop: 0
m_ZeroValue: 0.5
m_Range: 1
m_InternalLoopingCurve:
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
e_CurrentEditingCurve: 0
e_CurveY: 1
e_CurveR: 0
e_CurveG: 0
e_CurveB: 0
<isDirty>k__BackingField: 0
<bakedLut>k__BackingField: {fileID: 0}
userLut:
m_Enabled: 0
m_Settings:
lut: {fileID: 0}
contribution: 1
chromaticAberration:
m_Enabled: 1
m_Settings:
spectralTexture: {fileID: 0}
intensity: 0.1
grain:
m_Enabled: 0
m_Settings:
colored: 1
intensity: 0.5
size: 1
luminanceContribution: 0.8
vignette:
m_Enabled: 0
m_Settings:
mode: 0
color:
r: 0
g: 0
b: 0
a: 1
center: {x: 0.5, y: 0.5}
intensity: 0.45
smoothness: 0.2
roundness: 1
mask: {fileID: 0}
opacity: 1
rounded: 0
dithering:
m_Enabled: 0
m_Settings: {}
monitors:
currentMonitorID: 0
refreshOnPlay: 0
histogramMode: 3
waveformExposure: 0.12
waveformY: 0
waveformR: 1
waveformG: 1
waveformB: 1
paradeExposure: 0.12
vectorscopeExposure: 0.12
vectorscopeShowBackground: 1

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 150fbd13cfcddb34ebc82b228a769165
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 46c1725cb7280074493bd8d9d2ab7468
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6c0cbfdcc9b9ae64f9ddd77c2003e193
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: 91a1945982e98be4d9fe3e3d12fdebd8
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: cf3069941001b5c46b1f13d4551d0fd9
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: 5733619f617fd954cac22d3d11fd1b93
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: b0601839c4520064bb61d58d088810bc
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: c6bde8cacfa93444fa98152cb9e36815
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: 5c744e80ad52c884c9ac4c9139b3aaae
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: e3b33de953074bc4a88d9487f19c1202
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: b3d0250e4b7a1ac4abe98a38d34d2048
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: 5afd653e4d79b7a4c9523dd543c0bead
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: 8900a35e436818940b97df26c3a8a1aa
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: d238efbd27bc5ae4ead9839995f74830
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: dcefc591c195a9f468e9157baa03eb4f
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1778770213e6d284eafc7eaa31ef8f4c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 MiB

View File

@ -0,0 +1,86 @@
fileFormatVersion: 2
guid: 38bb15d6b378aff46b461e248592d1da
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
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
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
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
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ddbb7a58805ce264aaa847d266f0b897
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,5 @@
#ignore + - \ / ^ &
#axiom
S
#rules
S -> Z\(60)[-S]S

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 4fd5963b4dc7ffb4d87927cd31f71fb9
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
#axiom
I(1,1)
#rules
I(a,b) : a == 1; b <= 5 -> R(1)I(1, b + 1)
I(a,b) : a == 2; b <= 2 -> R(1)I(1, b + 1)
R(a) : a < 5 -> R(a+0.15)
#end rules

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: e2ea6afb8b38e1245b2bf9184b793acb
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7a045e2e15539a346b9341a94c1a3a9a
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,84 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1350013967046912549
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 353685676184661511}
- component: {fileID: 296604003344069857}
- component: {fileID: -8656276640549825894}
m_Layer: 0
m_Name: Apple
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &353685676184661511
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1350013967046912549}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1.4, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &296604003344069857
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1350013967046912549}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &-8656276640549825894
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1350013967046912549}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 06e5ddcf533c38f47b7f764fdbb9a326, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c0aa266d547ceb043b2b5be7a61817b2
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -27,7 +27,7 @@ Transform:
m_GameObject: {fileID: 8940750936091100187} m_GameObject: {fileID: 8940750936091100187}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 2, z: 1}
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 0 m_RootOrder: 0

View File

@ -62,9 +62,9 @@ Material:
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 0 - _DstBlend: 0
- _GlossMapScale: 1 - _GlossMapScale: 1
- _Glossiness: 0.5 - _Glossiness: 0.484
- _GlossyReflections: 1 - _GlossyReflections: 1
- _Metallic: 0 - _Metallic: 0.564
- _Mode: 0 - _Mode: 0
- _OcclusionStrength: 1 - _OcclusionStrength: 1
- _Parallax: 0.02 - _Parallax: 0.02
@ -74,6 +74,6 @@ Material:
- _UVSec: 0 - _UVSec: 0
- _ZWrite: 1 - _ZWrite: 1
m_Colors: m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1} - _Color: {r: 0.520106, g: 0.30962977, b: 0.9245283, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: [] m_BuildTextureStacks: []

View File

@ -0,0 +1,79 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Green
m_Shader: {fileID: 46, 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_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.398
- _GlossyReflections: 1
- _Metallic: 0.632
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.45946774, g: 0.8962264, b: 0.12259703, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 06e5ddcf533c38f47b7f764fdbb9a326
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,102 @@
fileFormatVersion: 2
guid: b27a833ca95d884448b91f77d9475679
ModelImporter:
serializedVersion: 21100
internalIDToNameTable: []
externalObjects: {}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,84 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &2146415608025864259
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5532671501312500238}
- component: {fileID: 2314152182219423656}
- component: {fileID: -5507681904500546492}
m_Layer: 0
m_Name: Leaf
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5532671501312500238
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2146415608025864259}
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_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!23 &2314152182219423656
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2146415608025864259}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &-5507681904500546492
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2146415608025864259}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c7e0c814662cbab42b42b54495a994d7
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,84 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3132964252630352729
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7594502901394162009}
- component: {fileID: 4391870333044285248}
- component: {fileID: 4416866696227822882}
m_Layer: 0
m_Name: cylinder
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7594502901394162009
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3132964252630352729}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: -1, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 0.5}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &4391870333044285248
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3132964252630352729}
m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &4416866696227822882
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3132964252630352729}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: aad6f488b61182a4ca494d8eec697994, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 83d72558bd9cac84fb538bc8d11ed837
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -123,6 +123,97 @@ NavMeshSettings:
debug: debug:
m_Flags: 0 m_Flags: 0
m_NavMeshData: {fileID: 0} m_NavMeshData: {fileID: 0}
--- !u!1001 &148923103
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalPosition.x
value: 72.7427
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalPosition.y
value: 8
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalPosition.z
value: 60.458534
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4285729265170269846, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8940750936091100187, guid: 687210b557c0a04429227e2763831b35, type: 3}
propertyPath: m_Name
value: Barell
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 687210b557c0a04429227e2763831b35, type: 3}
--- !u!1 &313541647 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 8940750936091100187, guid: 687210b557c0a04429227e2763831b35, type: 3}
m_PrefabInstance: {fileID: 148923103}
m_PrefabAsset: {fileID: 0}
--- !u!54 &313541648
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 313541647}
serializedVersion: 2
m_Mass: 1
m_Drag: 0
m_AngularDrag: 0.05
m_UseGravity: 1
m_IsKinematic: 0
m_Interpolate: 0
m_Constraints: 0
m_CollisionDetection: 0
--- !u!65 &313541652
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 313541647}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1.0000001, y: 2, z: 1.0000002}
m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697}
--- !u!850595691 &352534934 --- !u!850595691 &352534934
LightingSettings: LightingSettings:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -227,7 +318,7 @@ Transform:
m_Children: m_Children:
- {fileID: 1544268237} - {fileID: 1544268237}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 2 m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &705507993 --- !u!1 &705507993
GameObject: GameObject:
@ -320,7 +411,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 1 m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!1 &963194225 --- !u!1 &963194225
GameObject: GameObject:
@ -403,9 +494,9 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 0 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 30, y: 210, z: 0} m_LocalEulerAnglesHint: {x: 30, y: 210, z: 0}
--- !u!1 &1202690091 --- !u!1 &983055579
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -413,39 +504,45 @@ GameObject:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 1202690095} - component: {fileID: 983055580}
- component: {fileID: 1202690094} - component: {fileID: 983055582}
- component: {fileID: 1202690093} - component: {fileID: 983055581}
- component: {fileID: 1202690092}
- component: {fileID: 1202690096}
- component: {fileID: 1202690097}
m_Layer: 0 m_Layer: 0
m_Name: Cube m_Name: LSystem Literal R
m_TagString: Untagged m_TagString: LSystemLiteral
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 1
--- !u!65 &1202690092 --- !u!4 &983055580
BoxCollider: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1202690091} m_GameObject: {fileID: 983055579}
m_Material: {fileID: 0} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_IsTrigger: 0 m_LocalPosition: {x: 0, y: 0.8, z: 0}
m_Enabled: 1 m_LocalScale: {x: 0.24000001, y: 0.48000002, z: 0.24000001}
serializedVersion: 2 m_Children: []
m_Size: {x: 1, y: 1, z: 1} m_Father: {fileID: 1528745027}
m_Center: {x: 0, y: 0, z: 0} m_RootOrder: 3
--- !u!23 &1202690093 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &983055581
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 983055579}
m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &983055582
MeshRenderer: MeshRenderer:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1202690091} m_GameObject: {fileID: 983055579}
m_Enabled: 1 m_Enabled: 1
m_CastShadows: 1 m_CastShadows: 1
m_ReceiveShadows: 1 m_ReceiveShadows: 1
@ -459,7 +556,7 @@ MeshRenderer:
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
- {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 2100000, guid: aad6f488b61182a4ca494d8eec697994, type: 2}
m_StaticBatchInfo: m_StaticBatchInfo:
firstSubMesh: 0 firstSubMesh: 0
subMeshCount: 0 subMeshCount: 0
@ -481,56 +578,415 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &1202690094 --- !u!1 &1041777987
MeshFilter: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1202690091} serializedVersion: 6
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} m_Component:
--- !u!4 &1202690095 - component: {fileID: 1041777989}
Transform: - component: {fileID: 1041777988}
m_ObjectHideFlags: 0 m_Layer: 0
m_CorrespondingSourceObject: {fileID: 0} m_Name: Tree2
m_PrefabInstance: {fileID: 0} m_TagString: Untagged
m_PrefabAsset: {fileID: 0} m_Icon: {fileID: 0}
m_GameObject: {fileID: 1202690091} m_NavMeshLayer: 0
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_StaticEditorFlags: 0
m_LocalPosition: {x: 50, y: 10, z: 50} m_IsActive: 1
m_LocalScale: {x: 1, y: 2, z: 1} --- !u!114 &1041777988
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1202690096
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1202690091} m_GameObject: {fileID: 1041777987}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2b1e2f30d07cc4a4ab5451bcb7e045e2, type: 3} m_Script: {fileID: 11500000, guid: 5559c7807aa7c5e49a46bf6032e3bdce, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
--- !u!54 &1202690097 speed: 1
Rigidbody: LSystemPath: Assets\LSystems\Tree.txt
steps: 1
environment: {fileID: 1544134804}
shadowStrength: 20
lookForLightAngle: 40
lookForLightLength: 1
obj: {fileID: 3132964252630352729, guid: 83d72558bd9cac84fb538bc8d11ed837, type: 3}
flower: {fileID: 0}
leaf: {fileID: 0}
angle: 30
--- !u!4 &1041777989
Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1202690091} m_GameObject: {fileID: 1041777987}
serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_Mass: 1 m_LocalPosition: {x: 50, y: 16, z: 50}
m_Drag: 0 m_LocalScale: {x: 5, y: 5, z: 5}
m_AngularDrag: 0.05 m_Children: []
m_UseGravity: 1 m_Father: {fileID: 0}
m_IsKinematic: 0 m_RootOrder: 6
m_Interpolate: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Constraints: 0 --- !u!1 &1213217475
m_CollisionDetection: 0 GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1213217476}
- component: {fileID: 1213217478}
- component: {fileID: 1213217477}
m_Layer: 0
m_Name: LSystem Literal R
m_TagString: LSystemLiteral
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1213217476
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1213217475}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: 0}
m_LocalScale: {x: 0.225, y: 0.45, z: 0.225}
m_Children: []
m_Father: {fileID: 1528745027}
m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &1213217477
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1213217475}
m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &1213217478
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1213217475}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: aad6f488b61182a4ca494d8eec697994, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &1304106096
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1304106097}
- component: {fileID: 1304106099}
- component: {fileID: 1304106098}
m_Layer: 0
m_Name: LSystem Literal R
m_TagString: LSystemLiteral
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1304106097
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1304106096}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0.2, z: 0}
m_LocalScale: {x: 0.28500003, y: 0.57000005, z: 0.28500003}
m_Children: []
m_Father: {fileID: 1528745027}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &1304106098
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1304106096}
m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &1304106099
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1304106096}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: aad6f488b61182a4ca494d8eec697994, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &1498747226
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1498747227}
- component: {fileID: 1498747229}
- component: {fileID: 1498747228}
m_Layer: 0
m_Name: LSystem Literal R
m_TagString: LSystemLiteral
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1498747227
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1498747226}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0.6, z: 0}
m_LocalScale: {x: 0.25500003, y: 0.51000005, z: 0.25500003}
m_Children: []
m_Father: {fileID: 1528745027}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &1498747228
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1498747226}
m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &1498747229
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1498747226}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: aad6f488b61182a4ca494d8eec697994, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &1528745025
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1528745027}
- component: {fileID: 1528745026}
m_Layer: 0
m_Name: Tree
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1528745026
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1528745025}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 92154f77218e64c43a24b4db45cdbfd5, type: 3}
m_Name:
m_EditorClassIdentifier:
speed: 1
LSystemPath: Assets\LSystems\Tree2.txt
steps: 1
environment: {fileID: 1544134804}
shadowStrength: 20
lookForLightAngle: 40
lookForLightLength: 1
branch: {fileID: 8940750936091100187, guid: 687210b557c0a04429227e2763831b35, type: 3}
angle: 30
--- !u!4 &1528745027
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1528745025}
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_Children:
- {fileID: 1304106097}
- {fileID: 2046247577}
- {fileID: 1498747227}
- {fileID: 983055580}
- {fileID: 1213217476}
m_Father: {fileID: 0}
m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1544134803
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1544134805}
- component: {fileID: 1544134804}
m_Layer: 0
m_Name: Environment
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1544134804
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1544134803}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 517a2e41b336f124ca9f1d95811e35b7, type: 3}
m_Name:
m_EditorClassIdentifier:
sizeX: 100
sizeY: 200
sizeZ: 100
voxelSize: 0.3
visualizeLigth: 1
visualizeEveryNVoxel: 1
rotateTowardsLight: 1
sendShadowToLSystem: 1
cutBranchesWithMaxShadow: 1
--- !u!4 &1544134805
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1544134803}
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_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1544268236 --- !u!1 &1544268236
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -608,3 +1064,85 @@ Terrain:
m_GroupingID: 0 m_GroupingID: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_AllowAutoConnect: 1 m_AllowAutoConnect: 1
--- !u!1 &2046247576
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2046247577}
- component: {fileID: 2046247579}
- component: {fileID: 2046247578}
m_Layer: 0
m_Name: LSystem Literal R
m_TagString: LSystemLiteral
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2046247577
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2046247576}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0.4, z: 0}
m_LocalScale: {x: 0.27000004, y: 0.5400001, z: 0.27000004}
m_Children: []
m_Father: {fileID: 1528745027}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &2046247578
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2046247576}
m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2046247579
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2046247576}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: aad6f488b61182a4ca494d8eec697994, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}

View File

@ -0,0 +1,302 @@
using System.Collections.Generic;
using UnityEngine;
public class Environment : MonoBehaviour
{
public int sizeX = 100;
public int sizeY = 100;
public int sizeZ = 100;
public float voxelSize = 0.1f;
public bool visualizeLigth = true;
public int visualizeEveryNVoxel = 100;
// Voxel[,,] voxelSpace;
byte[,,] voxelSpace;
public bool rotateTowardsLight = false;
public bool sendShadowToLSystem = true;
public bool cutBranchesWithMaxShadow = false;
List<List<Matrix4x4>> transformListJ;
// Start is called before the first frame update
public void Reset()
{
Start();
}
void Start()
{
voxelSpace = new byte[sizeX, sizeY, sizeZ];
for (int i = 0; i < sizeX; i++)
{
for (int k = 0; k < sizeZ; k++)
{
for (int j = sizeY - 1; j >= 0; j--)
{
voxelSpace[i, j, k] = (byte)1;
if (i == 0 || i == sizeX - 1 || k == 0 || k == sizeZ - 1)
{
voxelSpace[i, j, k] = (byte)255;
}
}
}
}
List<Matrix4x4> transformList = new List<Matrix4x4>();
transformListJ = new List<List<Matrix4x4>>();
for (int i = 0; i < sizeX; i++)
{
for (int k = 0; k < sizeZ; k++)
{
for (int j = sizeY - 1; j >= 0; j--)
{
if (visualizeLigth &&
(i % visualizeEveryNVoxel == 0 && j % visualizeEveryNVoxel == 0 && k % visualizeEveryNVoxel == 0))
{
Vector3 position = gameObject.GetComponent<Transform>().position;
Matrix4x4 matrixLigth = new Matrix4x4();
//Take the origin position, and apply the offsets
position.x += i * voxelSize;
position.y += j * voxelSize;
position.z += k * voxelSize;
//Create a matrix for the position created from this iteration of the loop
//Set the position/rotation/scale for this matrix
if (voxelSpace[i, j, k] != null)
{
matrixLigth.SetTRS(position, Quaternion.Euler(Vector3.zero), new Vector3(voxelSpace[i, j, k] * voxelSize * visualizeEveryNVoxel / 255.0f, voxelSpace[i, j, k] * voxelSize * visualizeEveryNVoxel / 255.0f, voxelSpace[i, j, k] * voxelSize * visualizeEveryNVoxel / 255.0f));
}
else
{
matrixLigth.SetTRS(position, Quaternion.Euler(Vector3.zero), new Vector3(0, 0, 0));
}
transformList.Add(matrixLigth);
}
if (transformList.Count > 1020)
{
transformListJ.Add(transformList);
transformList = new List<Matrix4x4>();
}
}
}
}
if (transformList.Count > 0)
{
transformListJ.Add(transformList);
transformList = new List<Matrix4x4>();
}
}
// Update is called once per frame
int frame = 0;
void Update()
{
if (frame % 300 == 0)
{
int mxx = 0;
Vector3 pos = new Vector3(0, 0, 0);
for (int j = sizeY - 1; j >= 0; j--)
{
for (int i = 0; i < sizeX; i++)
{
for (int k = 0; k < sizeZ; k++)
{
if (voxelSpace[i, j, k] > mxx)
{
mxx = voxelSpace[i, j, k];
pos = new Vector3(i, j, k);
// Debug.Log("mxPos = "+mxx+" "+pos);
}
}
}
}
}
frame += 1;
// Debug.Log("frame"+frame);
}
public void addShadowPoint(Vector3 position, sbyte strength) // negative value to remove
{
Vector3 voxelPosition = positionInVoxel(position);
Debug.Log(voxelPosition + " adding " + strength);
if (inVoxelSpace((int)voxelPosition.x, (int)voxelPosition.y, (int)voxelPosition.z))
{
voxelSpace[(int)voxelPosition.x, (int)voxelPosition.y, (int)voxelPosition.z] += (byte)strength;
}
else
{
Debug.Log("not in vexel space: " + voxelPosition + " - error adding");
}
}
public void removeShadow(Vector3 position, sbyte strength) // negative value to remove
{
addShadow(position, (sbyte)-strength);
}
public void addShadow(Vector3 position, sbyte strength) // negative value to remove
{
// 6.2 / 0.1 = 62.0
Vector3 voxelPosition = positionInVoxel(position);
for (int j = (int)voxelPosition.y; j >= 0; j--)
{
if (voxelPosition.y - j > 250)
{
break;
}
int rotj = (int)(voxelPosition.y - j) * 1;
for (int i = (int)voxelPosition.x - rotj; i <= (int)voxelPosition.x + rotj; i++)
{
for (int k = (int)voxelPosition.z - rotj; k <= (int)voxelPosition.z + rotj; k++)
{
if (inVoxelSpace(i, j, k) &&
(i % visualizeEveryNVoxel == 0 && j % visualizeEveryNVoxel == 0 && k % visualizeEveryNVoxel == 0))
{
float secondaryStrength = 1.0f * strength;
secondaryStrength = secondaryStrength / ((Mathf.Abs(k - (int)voxelPosition.z) + 1 + Mathf.Abs(i - (int)voxelPosition.x)) / 8.0f);
if (voxelSpace[i, j, k] == null)
{
voxelSpace[i, j, k] = 0;
}
if (secondaryStrength > 0)
{
if (voxelSpace[i, j, k] >= 255 - (byte)secondaryStrength)
{
voxelSpace[i, j, k] = 255;
}
else
{
voxelSpace[i, j, k] += (byte)secondaryStrength;
}
}
else
{
if (voxelSpace[i, j, k] > (byte)secondaryStrength)
{
voxelSpace[i, j, k] -= (byte)(-1 * secondaryStrength);
}
else
{
voxelSpace[i, j, k] = 1;
}
}
if ((i % visualizeEveryNVoxel == 0 && j % visualizeEveryNVoxel == 0 && k % visualizeEveryNVoxel == 0) && visualizeLigth)
{
Vector3 positionBox = gameObject.GetComponent<Transform>().position;
Matrix4x4 matrixLigth = new Matrix4x4();
//Take the origin position, and apply the offsets
positionBox.x += i * voxelSize;
positionBox.y += j * voxelSize;
positionBox.z += k * voxelSize;
//Create a matrix for the position created from this iteration of the loop
//Set the position/rotation/scale for this matrix
matrixLigth.SetTRS(positionBox, Quaternion.Euler(Vector3.zero), new Vector3(voxelSpace[i, j, k] * voxelSize * visualizeEveryNVoxel / 255.0f, voxelSpace[i, j, k] * voxelSize * visualizeEveryNVoxel / 255.0f, voxelSpace[i, j, k] * voxelSize * visualizeEveryNVoxel / 255.0f));
int l = (i * sizeZ * sizeY / (visualizeEveryNVoxel * visualizeEveryNVoxel * visualizeEveryNVoxel) + k * sizeY / (visualizeEveryNVoxel * visualizeEveryNVoxel) + j / visualizeEveryNVoxel);
transformListJ[l / 1021][l % 1021] = matrixLigth;
}
}
}
}
}
}
public void addShadowLine(Vector3 positionStart, Vector3 positionEnd, sbyte strength) // negative value to remove
{
int linePoints = (int)((Mathf.Abs(positionEnd.x - positionStart.x) + Mathf.Abs(positionEnd.z - positionStart.z)) / (voxelSize));
if (linePoints < 3)
{
linePoints = 3;
}
Vector3 stepChange = new Vector3(
(positionEnd.x - positionStart.x) / linePoints,
(positionEnd.y - positionStart.y) / linePoints,
(positionEnd.z - positionStart.z) / linePoints);
Vector3 positionNow = positionStart;
sbyte newStrength = (sbyte)(2 * (strength / linePoints));
if (newStrength == 0)
{
if (strength > 0)
{
if (strength > 0.4f)
newStrength = (sbyte)1;
}
if (strength < 0)
{
newStrength = (sbyte)-1;
}
}
for (int i = 0; i < linePoints; i++)
{
addShadow(positionNow, newStrength);
positionNow += stepChange;
}
}
bool inVoxelSpace(int a, int b, int c)
{
return (a < sizeX && a >= 0 && b < sizeY && b >= 0 && c < sizeZ && c >= 0);
}
public Vector3 positionInVoxel(Vector3 positionInWorld)
{
Vector3 voxelPosition = new Vector3(0.0f, 0.0f, 0.0f);
positionInWorld -= gameObject.GetComponent<Transform>().position;
voxelPosition.x = (int)(0.5f + (positionInWorld.x / voxelSize));
voxelPosition.y = (int)(0.5f + (positionInWorld.y / voxelSize));
voxelPosition.z = (int)(0.5f + (positionInWorld.z / voxelSize));
return voxelPosition;
}
public Vector3 positionInWorld(Vector3 positionInVoxel)
{
return positionInVoxel * voxelSize + gameObject.GetComponent<Transform>().position;
}
public void groundShape()
{
for (int i = 0; i < sizeX; i++)
{
for (int k = 0; k < sizeZ; k++)
{
for (int j = sizeY - 1; j >= 0; j--)
{
Collider[] hitColliders = Physics.OverlapSphere(new Vector3(i * voxelSize, j * voxelSize, k * voxelSize), voxelSize / 2.0f);
foreach (var hitCollider in hitColliders)
{
addShadow(new Vector3(i * voxelSize, j * voxelSize, k * voxelSize), 100);
}
}
}
}
}
public byte shadowStrength(Vector3 pos)
{
Vector3 shadowPosition = positionInVoxel(pos);//pos - gameObject.GetComponent<Transform>().position;
if (inVoxelSpace((int)((shadowPosition.x)), (int)((shadowPosition.y)), (int)((shadowPosition.z))))
{
byte mx = voxelSpace[0 + (int)((shadowPosition.x)), (int)((shadowPosition.y)), 0 + (int)((shadowPosition.z))];
return mx;
}
return 255;
}
public bool isShadow(Vector3 pos)
{
if (shadowStrength(pos) > 10)
{
// Debug.Log("#shadow");
return true;
}
else
{
return false;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 517a2e41b336f124ca9f1d95811e35b7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +1,5 @@
using System; using System;
using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using UnityEngine;
public class LSystemEvaluator public class LSystemEvaluator
{ {

View File

@ -141,7 +141,7 @@ public class LSystemRuleParametricStochastic : LSystemRule
protected LSystemNodeGenerator[] consequents; protected LSystemNodeGenerator[] consequents;
protected float[] probabilities; protected float[] probabilities;
protected MathExpressionComparison[] conditions; protected MathExpressionComparison[] conditions;
protected System.Random random; protected Random random;
public LSystemRuleParametricStochastic(LSystemNodeLiteralVariable predecesor, MathExpressionComparison[] conditions, LSystemNodeGenerator[] consequents, float[] probabilities) public LSystemRuleParametricStochastic(LSystemNodeLiteralVariable predecesor, MathExpressionComparison[] conditions, LSystemNodeGenerator[] consequents, float[] probabilities)
{ {
@ -158,7 +158,7 @@ public class LSystemRuleParametricStochastic : LSystemRule
this.probabilities[i] = probability + acumulator; this.probabilities[i] = probability + acumulator;
acumulator += probability; acumulator += probability;
} }
random = new System.Random(); random = new Random();
} }
public LSystemRuleParametricStochastic(LSystemNodeLiteralVariable predecesor, MathExpressionComparison[] conditions, LSystemNodeGenerator consequent) public LSystemRuleParametricStochastic(LSystemNodeLiteralVariable predecesor, MathExpressionComparison[] conditions, LSystemNodeGenerator consequent)
@ -168,7 +168,7 @@ public class LSystemRuleParametricStochastic : LSystemRule
this.conditions = conditions; this.conditions = conditions;
float probabilities_sum = 0; float probabilities_sum = 0;
probabilities = new float[1] { 1 }; probabilities = new float[1] { 1 };
random = new System.Random(); random = new Random();
} }
public override bool is_aplicable(LSystemNode processed_node, String[] ignored) public override bool is_aplicable(LSystemNode processed_node, String[] ignored)

View File

@ -41,7 +41,7 @@ public class MathExpressionNode
} }
public class MathExpression public class MathExpression
{ {
private static System.Random random = new System.Random(); private static Random random = new Random();
private static Dictionary<char, int> expression_hierarchy = new Dictionary<char, int>{ private static Dictionary<char, int> expression_hierarchy = new Dictionary<char, int>{
{'^', 4}, {'^', 4},

View File

@ -0,0 +1,78 @@
using System;
using System.Collections.Generic;
using UnityEngine;
using T = System.Tuple<UnityEngine.GameObject, UnityEngine.Matrix4x4>;
public class TreeTurtle : TurtleLSystemEnvironment
{
public GameObject branch;
public float angle;
private Matrix4x4 RootGrowth(float age)
{
return Matrix4x4.TRS(
new Vector3(
0.0f,
0.3f,
0.0f),
Quaternion.identity,
new Vector3(
0.02f + age * 0.1f,
0.02f + age * 0.1f,
0.02f + age * 0.1f));
}
private Matrix4x4 BranchGrowth(float age)
{
return Matrix4x4.TRS(
new Vector3(
0.0f,
1.8f,
0.0f),
Quaternion.identity,
new Vector3(
0.01f + age * 0.2f,
0.5f + age * 0.5f,
0.02f + age * 0.12f));
}
private Func<float[], Matrix4x4> Roation(Vector3 axis)
{
Matrix4x4 f(float[] args)
{
if (args.Length == 0)
{
return Matrix4x4.Rotate(Quaternion.AngleAxis(angle, axis));
}
else
{
return Matrix4x4.Rotate(Quaternion.AngleAxis(args[0], axis));
}
}
return f;
}
protected override void initLiteralInterpretation()
{
turtleInterpretation = new Dictionary<string, Func<float[], T>>
{
{ "+", (float[] args) => new T(null, Roation(Vector3.back)(args)) },
{ "-", (float[] args) => new T(null, Roation(Vector3.forward)(args)) },
{ "\\", (float[] args) => new T(null, Roation(Vector3.down)(args)) },
{ "/", (float[] args) => new T(null, Roation(Vector3.up)(args)) },
{ "^", (float[] args) => new T(null, Roation(Vector3.left)(args)) },
{ "&", (float[] args) => new T(null, Roation(Vector3.right)(args)) },
{ "f", (float[] args) => new T(null, Matrix4x4.Translate(Vector3.up * args[0])) },
{ "I", (float[] args) => new T(null, Matrix4x4.identity) },
{ "R", (float[] args) => new T(branch, RootGrowth(args[0]))},
{ "B", (float[] args) => new T(branch, BranchGrowth(args[0]))},
//Wildcard how to represent any other symbol
{ "*.*", (float[] args) => new T(branch, BranchGrowth(args[0]))}
};
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 92154f77218e64c43a24b4db45cdbfd5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using UnityEngine;
public class TurtleEnvironment : TurtleLSystemEnvironment
{
public GameObject obj;
public GameObject flower;
public GameObject leaf;
public float angle;
private Func<float[], Matrix4x4> _roation(Vector3 axis)
{
Matrix4x4 f(float[] args)
{
if (args.Length == 0)
{
return Matrix4x4.Rotate(Quaternion.AngleAxis(angle, axis));
}
else
{
return Matrix4x4.Rotate(Quaternion.AngleAxis(args[0], axis));
}
}
return f;
}
GameObject setColor(GameObject prefab, int index)
{
var result = Instantiate(prefab);
switch (index)
{
case 1:
result.GetComponent<Renderer>().material.SetColor("_Color", Color.red);
break;
case 2:
result.GetComponent<Renderer>().material.SetColor("_Color", Color.blue);
break;
case 3:
result.GetComponent<Renderer>().material.SetColor("_Color", Color.white);
break;
}
return result;
}
protected override void initLiteralInterpretation()
{
turtleInterpretation = new Dictionary<string, Func<float[], Tuple<GameObject, Matrix4x4>>>();
//turtleInterpretation
var transformation = Matrix4x4.Translate(new Vector3(0.0f, 0.1f, 0)) * Matrix4x4.Scale(new Vector3(0.05f, 0.1f, 0.05f));
var transformationM = Matrix4x4.Translate(new Vector3(0.0f, 0.2f, 0)) * Matrix4x4.Scale(new Vector3(0.08f, 0.2f, 0.08f));
turtleInterpretation.Add("+", (float[] args) => new Tuple<GameObject, Matrix4x4>(null, _roation(Vector3.back)(args)));
turtleInterpretation.Add("-", (float[] args) => new Tuple<GameObject, Matrix4x4>(null, _roation(Vector3.forward)(args)));
turtleInterpretation.Add("\\", (float[] args) => new Tuple<GameObject, Matrix4x4>(null, _roation(Vector3.down)(args)));
turtleInterpretation.Add("/", (float[] args) => new Tuple<GameObject, Matrix4x4>(null, _roation(Vector3.up)(args)));
turtleInterpretation.Add("^", (float[] args) => new Tuple<GameObject, Matrix4x4>(null, _roation(Vector3.left)(args)));
turtleInterpretation.Add("&", (float[] args) => new Tuple<GameObject, Matrix4x4>(null, _roation(Vector3.right)(args)));
turtleInterpretation.Add("f", (float[] args) => new Tuple<GameObject, Matrix4x4>(null, Matrix4x4.Translate(Vector3.up * args[0])));
turtleInterpretation.Add("W", (float[] args) => new Tuple<GameObject, Matrix4x4>(flower, Matrix4x4.Scale(Vector3.one * 0.15f) * Matrix4x4.Translate(new Vector3(0.0f, -0.5f, 0))));
turtleInterpretation.Add("B", (float[] args) => new Tuple<GameObject, Matrix4x4>(leaf, Matrix4x4.Scale(Vector3.one)));
turtleInterpretation.Add("F", (float[] args) => new Tuple<GameObject, Matrix4x4>(setColor(obj, Mathf.FloorToInt(args[0])), transformation));
turtleInterpretation.Add("M", (float[] args) => new Tuple<GameObject, Matrix4x4>(obj, transformation));
//Wildcard how to represent any other symbol
turtleInterpretation.Add("*.*", (float[] args) => new Tuple<GameObject, Matrix4x4>(obj, transformationM));
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 5559c7807aa7c5e49a46bf6032e3bdce
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -4,7 +4,7 @@ using System.IO;
using UnityEditor; using UnityEditor;
using UnityEngine; using UnityEngine;
public abstract class TurtleLSystem : MonoBehaviour abstract public class TurtleLSystem : MonoBehaviour
{ {
public float speed; public float speed;
private float nextStep; private float nextStep;

View File

@ -0,0 +1,267 @@
using System;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
abstract public class TurtleLSystemEnvironment : TurtleLSystem
{
public Environment environment;
// private LSystemEvaluator evaluator = null;
// private float nextStep;
public sbyte shadowStrength;
public int lookForLightAngle = 35;
public float lookForLightLength = 2.0f;
public Matrix4x4 lightDirection(Matrix4x4 transformation, Matrix4x4 resultTransformation, GameObject shape, LSystemNode node)
{
int minShadow = 10000;
Matrix4x4 bestTransformation = transformation;
int maxShadowTries = 20;
int shadowRotate = 360 / 20;
int shadowStrength_ = 0;
bool clearShape = false;
if (shape == null)
{
clearShape = true;
shape = new GameObject("ShadowConeShape");
}
GameObject instance;
Matrix4x4 new_transformation = transformation;
foreach (GameObject gameObject in GameObject.FindGameObjectsWithTag("ShadowCone"))
{
DestroyImmediate(gameObject);
}
Matrix4x4 objectTransformation = (transformation * resultTransformation);
int nr_shadow_str = 1;
if (environment.sendShadowToLSystem)
{
}
bestTransformation = transformation * resultTransformation;
if (environment.rotateTowardsLight)
{
minShadow = shadowStrength_;
if (shadowStrength_ / nr_shadow_str > 5.0f)
{
shadowConeLimiter++;
// transformation = Matrix4x4.Translate(gameObject.transform.position)*transformation;
for (int angle = 0; angle <= lookForLightAngle; angle += 10)
{
for (int i = 0; i < 360; i += shadowRotate)
{
shadowStrength_ = 0;
for (float length = 0.5f; length < lookForLightLength; length += environment.voxelSize * 0.5f)
{
new_transformation = (transformation * (resultTransformation * Matrix4x4.Rotate(Quaternion.Euler(0, i, 0)) * Matrix4x4.Rotate(Quaternion.Euler(0, 0, angle)) * Matrix4x4.Translate(new Vector3(0, length, 0))));
shadowStrength_ += (int)environment.shadowStrength(new_transformation.ExtractPosition() + transformation.MultiplyPoint(shape.transform.position));
// if(shadowConeLimiter % 10 == 0)
// {
// instance = Instantiate(environment.shape);
// instance.name = "ShadowCone";
// instance.tag = "ShadowCone";
// instance.transform.position = new_transformation.ExtractPosition()+transformation.MultiplyPoint(shape.transform.position);
// instance.transform.rotation *= transformation.ExtractRotation();
// }
}
if (shadowStrength_ < minShadow)
{
minShadow = shadowStrength_;
bestTransformation = (transformation * (resultTransformation * Matrix4x4.Rotate(Quaternion.Euler(0, i, 0)) * Matrix4x4.Rotate(Quaternion.Euler(0, 0, angle))));
}
}
}
}
if (minShadow > 220 * lookForLightLength * 2.0f)
{
bestTransformation = Matrix4x4.Translate(new Vector3(0, 0, 0));
}
}
if (clearShape)
{
DestroyImmediate(shape);
}
return bestTransformation;
}
public void evaluate()
{
base.evaluate();
}
public void evaluateAndPresent()
{
evaluate();
present();
// Debug.Log(evaluator.lSystemString.ToString().Length);
//x.name = "aaa";
//Instantiate(x,Matrix4x4.identity);
}
public void loadFile()
{
// nextStep = Time.time;
// clearObjects();
var sr = new StreamReader(LSystemPath);
evaluator = LSystemFileParser.parseLSystem(sr);
sr.Close();
turtleInterpretation = new Dictionary<string, Func<float[], Tuple<GameObject, Matrix4x4>>>();
initLiteralInterpretation();
}
public void present()
{
clearObjects();
createModelsRecursiveInEnviroment(evaluator.lSystemString, Matrix4x4.Translate(gameObject.transform.position / 2.0f));//Matrix4x4.identity);
}
void refreshShadows()
{
environment.Reset();
foreach (GameObject gameObject in GameObject.FindGameObjectsWithTag("LSystemLiteral"))
{
// if(!isParentThisGameObject(gameObject))
// {
environment.addShadow(gameObject.GetComponent<Transform>().position, shadowStrength);
// }
// else
// {
// if(isParentThisGameObject(gameObject, 2))
// {
// environment.addShadowPoint(gameObject.GetComponent<Transform>().position, 6);
// }
// }
}
}
bool isParentThisGameObject(GameObject gameObject, int depth = 3)
{
if (gameObject.transform.parent != null)
{
if (gameObject.transform.parent.gameObject == this.gameObject)
{
return true;
}
else
{
if (depth >= 0)
{
return isParentThisGameObject(gameObject.transform.parent.gameObject, depth - 1);
}
}
}
return false;
}
int objectCounter = 0;
int shadowConeLimiter = 0;
public int childrenCount(LSystemNode node, int depth = 3)
{
int c = 0;
if (node.children.Count > 0)
{
c += node.children.Count;
if (depth > 0)
{
foreach (LSystemNode child in node.children)
{
c += childrenCount(child, depth - 1);
}
}
}
return c;
}
public void createModelsRecursiveInEnviroment(LSystemNode node, Matrix4x4 transformation, int depth = 0)
{
// transformation *= Matrix4x4.Translate(gameObject.transform.position);
while (node != null && objectCounter < 25000)
{
Matrix4x4 new_transformation = transformation;
Func<float[], Tuple<GameObject, Matrix4x4>> interpretation;
var name = node.literal.name;
if (turtleInterpretation.TryGetValue(name, out interpretation) || turtleInterpretation.TryGetValue("*.*", out interpretation))
{
var result = interpretation(node.literal.values);
Debug.Log("D: " + node.literal);
new_transformation = new_transformation * Matrix4x4.Rotate(Quaternion.Euler(UnityEngine.Random.Range(-0.5f, 0.5f), UnityEngine.Random.Range(-0.5f, 0.5f), UnityEngine.Random.Range(-0.5f, 0.5f)));
new_transformation = lightDirection(new_transformation, result.Item2, result.Item1, node);
if (new_transformation == Matrix4x4.Translate(new Vector3(0, 0, 0)) && environment.cutBranchesWithMaxShadow)
{
Debug.Log(" children " + node.children.Count);
// node.literal.
if (childrenCount(node) < 5)
{
LSystemNode destroyNode = node;
if (destroyNode.parent != null)
{
destroyNode.parent.children.Remove(node);
if (destroyNode.parent.mainChild == null)
{
destroyNode.parent.mainChild = destroyNode.parent.children[0];
}
node = node.mainChild;
destroyNode = null;
// DestroyImmediate(instance);
objectCounter--;
}
continue;
}
}
if (result.Item1 != null && new_transformation != Matrix4x4.Translate(new Vector3(0, 0, 0)))
{
var instance = this.prepeareGameObject(name, result.Item1, new_transformation);
environment.addShadow(new_transformation.ExtractPosition() + transformation.MultiplyPoint(result.Item1.transform.position), (sbyte)(shadowStrength / 8.0f));
}
environment.addShadow(new_transformation.ExtractPosition() + transformation.ExtractPosition(), (sbyte)(shadowStrength / 8.0f));
environment.addShadow((new_transformation * Matrix4x4.Translate(new Vector3(0, 1, 0))).ExtractPosition() + transformation.ExtractPosition(), (sbyte)(shadowStrength / 8.0f));
//remove scale, rather unnecesary
new_transformation = new_transformation * Matrix4x4.Scale(result.Item2.ExtractScale()).inverse;
}
if (node != null)
{
List<LSystemNode> children_tmp = new List<LSystemNode>();
foreach (var child in node.children)
{
children_tmp.Add(child);
}
foreach (var child in children_tmp)
{
if (child != null)
{
createModelsRecursiveInEnviroment(child, new_transformation, depth + 1);
}
}
node = node.mainChild;
}
transformation = new_transformation;
}
}
private void clearObjects()
{
//var objects = Resources.FindObjectsOfTypeAll<GameObject>().Where(obj => obj.name == "Name");
// foreach (GameObject gameObject in GameObject.FindGameObjectsWithTag("LSystemLiteral")) {
// DestroyImmediate(gameObject);
//
// }
objectCounter = 0;
int removed = 1;
while (removed > 0)
{
removed = 0;
foreach (Transform child in this.gameObject.transform)
{
// environment.addShadow(gameObject.GetComponent<Transform>().position, (sbyte)-shadowStrength);
if (child.gameObject.tag == "LSystemLiteral")
{
DestroyImmediate(child.gameObject);
}
removed++;
// GameObject.Destroy(child.gameObject);
}
}
refreshShadows();
// gameObjects = new List<GameObject>();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: f54beb620e478f844adacfa2a6d11930
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 693bec5bc8e82824991520e69bec9c8f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1953259897 &8574412962073106934
TerrainLayer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: layer_Grass01_BigUVd261c09ae55ba1e3
m_DiffuseTexture: {fileID: 2800000, guid: 38bb15d6b378aff46b461e248592d1da, type: 3}
m_NormalMapTexture: {fileID: 0}
m_MaskMapTexture: {fileID: 0}
m_TileSize: {x: 20, y: 20}
m_TileOffset: {x: 0, y: 0}
m_Specular: {r: 0, g: 0, b: 0, a: 0}
m_Metallic: 0
m_Smoothness: 0
m_NormalScale: 1
m_DiffuseRemapMin: {x: 0, y: 0, z: 0, w: 0}
m_DiffuseRemapMax: {x: 1, y: 1, z: 1, w: 1}
m_MaskMapRemapMin: {x: 0, y: 0, z: 0, w: 0}
m_MaskMapRemapMax: {x: 1, y: 1, z: 1, w: 1}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b7ce2212d41a9834f8ba82c669a6e862
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 8574412962073106934
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

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