A highly optimized URP environment pack for mobile. Includes 8 spruce trees, 1 grass patch, and custom shaders for foliage and LOD impostors with full GPU instancing and SRP batching support.Spruce NatureSpruce Nature is an environment asset pack designed specifically for mobile platforms and low-end hardware. Every Tree and Grass comes with it's own LOD. It provides a cohesive collection of spruce trees and grass models, built from the ground up to minimize draw calls and maximize rendering performance in Unity's Universal Render Pipeline (URP).Asset ContentsThe pack is structured to keep memory usage and batching costs as low as possible.8 Unique Spruce Tree Models: Ranging from young saplings to fully grown variations.1 Grass Patch Model: Optimized for dense scattering.Shared Material Architecture: All 8 tree models share exactly 2 materials (one for bark, one for leaves). The grass utilizes 1 dedicated material. This ensures excellent batching and very few state changes for the GPU.Custom Shader SuiteSpruce Nature includes four custom-written URP shaders. These shaders were developed to balance visual fidelity with strict performance budgets. Every shader fully supports the SRP Batcher and GPU Instancing, allowing you to render dense forests efficiently.Global Material FeaturesMost shaders in this pack include built-in color adjustments. You can modify the Hue, Saturation, Value, and Contrast directly within the Unity Inspector, allowing you to create multiple biome variations (like autumn or dead forests) using the exact same base textures.1. Bark ShaderVertical Ambient Occlusion Gradient: Procedurally darkens the bottom of the tree trunks based on object space, anchoring the trees naturally to the terrain without requiring custom vertex colors.Wrap Lighting: Softens harsh directional lighting on the cylindrical trunk meshes to provide a more natural, rounded shading falloff.Shadow Floor: A shadow minimum threshold that prevents areas under heavy canopy cover from turning unnaturally pitch-black.2. Leaf ShaderProcedural Wind System: Includes parameters for wind speed, frequency, direction, and strength. The sway is masked by a customizable gradient so branch tips move dynamically while the roots stay firmly attached to the trunk.Subsurface Scattering: Translucency support allows directional sunlight to naturally bleed through the leaf planes.Double-Sided Lighting: Ensures accurate shading on both the front and back faces of the leaf geometry.Cascaded Shadow Fixes: Calculates shadow mapping on a per-pixel basis to eliminate jagged shadow acne artifacts as the camera moves.3. Grass ShaderRoot-Anchored Wind: Utilizes object-space Y-axis calculations to ensure the top of the grass sways while the roots remain perfectly still.Vertical Alpha Gradient: Uses a dithered alpha clipping method near the bottom of the mesh to blend the grass smoothly into the terrain, hiding harsh geometric intersections.Double-Sided and Wrap Lighting: Keeps the grass visible and naturally lit from all viewing angles.4. LOD Impostor Shader (Tree Cards)Aggressively Optimized: Designed specifically for rendering distant background trees.Modular Compilation: Uses local shader features that allow you to toggle Normal, Roughness, and Translucency maps on or off via simple checkboxes. If a map is disabled, the shader compiler completely strips the mathematical instructions from the code, saving maximum performance on mobile devices.Technical SpecificationsRender Pipeline: Universal Render Pipeline (URP)Target Platforms: Mobile, VR, and Low-end PCGPU Instancing: Fully SupportedSRP Batching: Fully SupportedModels: NameTrianglesVerticesSM_Grasses.fbx74815215SM_Spruce_1.fbx150847746SM_Spruce_2.fbx149557582SM_Spruce_3.fbx149597585SM_Spruce_4.fbx119525956SM_Spruce_5.fbx153217252SM_Spruce_6.fbx95524772SM_Spruce_7.fbx76623628SM_Spruce_8.fbx31381637Textures:NameResolutionFormatspruce 1.png2048x2048.PNGspruce 1_Normal.png2048x2048.PNGspruce 1_Roughness.png2048x2048.PNGspruce 2.png2048x2048.PNGspruce 2_Normal.png2048x2048.PNGspruce 2_Roughness.png2048x2048.PNGspruce 2_Translucency.png2048x2048.PNGT_Grass_Base.tif 2048x2048 .TIFT_Grass_Normal.tif 2048x2048 .TIFT_Grass_Packed.tif 2048x2048 .TIFT_Grass_Thiccness.tif 2048x2048 .TIF1 Imposter.png512x512.PNG1 Imposter_Normal.png512x512.PNG2 Imposter.png512x512.PNG2 Imposter_Normal.png512x512.PNG3 Imposter.png512x512.PNG3 Imposter_Normal.png512x512.PNG4 Imposter.png512x512.PNG4 Imposter_Normal.png512x512.PNG5 Imposter.png512x512.PNG5 Imposter_Normal.png512x512.PNG6 Imposter.png512x512.PNG6 Imposter_Normal.png512x512.PNG7 Imposter.png512x512.PNG7 Imposter_Normal.png512x512.PNG8 Imposter.png512x512.PNG8 Imposter_Normal.png512x512.PNG


