Search Unity

[GIVEAWAY]Sewer BMT [Featuring BuildingMakerToolset-EditorExtension] [RELEASED]

Discussion in 'Assets and Asset Store' started by ZooP, Nov 17, 2021.

  1. ZooP

    ZooP

    Joined:
    Jun 4, 2014
    Posts:
    48
    Hello guys I’d like to introduce my Sewer BMT.

    Create a complex sewer system with just a few mouse clicks.

    Shot10.png Shot6.png

    Features the BMT workflow.

    BMT means Building Maker Toolset and it provides a custom, very efficient workflow for level designers.

    Watch the BMT workflow tutorial.


    Place prefabs with just one mouse click instead of digging through your project folders, dragging it in to the scene and adjusting the rotation.
    EditorHint.png
    With this workflow you get your sewer level created in just a few minutes.


    • Includes 70 Prefabs paired with the BuildingMakerToolset-EditorExtension (tunnels, pipes, walls etc.).
    • 20 deco props-prefabs (lights, garbage bags, empty bottles etc. )
    • Optimized meshes ~160k tris in the demo scene.
    • All with PBR materials assigned.
    • Using texture atlases with up to 4k resolution.
    • Built-in Render Pipeline, HDRP and URP compatible.
    Shot8.png Shot9.png

    Here ist the link if you like to check it out.
    Sewer BMT
     
    Last edited: Jul 16, 2022
    Hikiko66 likes this.
  2. ZooP

    ZooP

    Joined:
    Jun 4, 2014
    Posts:
    48
    Hi guys, guess the last letter/number and get a free copy of Sewer BMT.
    post a reply when claimed :)
    CodeSew.png
     
  3. kiradaisuke

    kiradaisuke

    Joined:
    Sep 20, 2018
    Posts:
    4
    I have claimed it. Thanks for the free copy :)
     
  4. ZooP

    ZooP

    Joined:
    Jun 4, 2014
    Posts:
    48
    Awesome;)
     
  5. Stupeflip

    Stupeflip

    Joined:
    Mar 20, 2016
    Posts:
    10
    Hello, I would like to know if there is a way to make the sewer invisible from the other side ?
    upload_2022-5-31_21-29-32.png

    Thank you :)
     
  6. ZooP

    ZooP

    Joined:
    Jun 4, 2014
    Posts:
    48
    Hi Stupeflip,
    what do you mean exactly?
     
  7. Stupeflip

    Stupeflip

    Joined:
    Mar 20, 2016
    Posts:
    10
    Hello,

    What i mean, is that you only see the wall of the tunnels when you are inside it which is good.
    But when the player is outside of the tunnels he see through the wall like you can see on my screenshot.
    What I try to do is that when the player is oustide of the tunnel you don't see anything of the tunnel, just black.
    For example on the screenshot we would just see the thing I highlighted :
     

    Attached Files:

  8. ZooP

    ZooP

    Joined:
    Jun 4, 2014
    Posts:
    48
    Ok, this is not something you usually need, because you don’t want your player to be able to clip through walls. This asset is designed to be viewed from the inside.

    However you can make the backfaces black, so if your skybox is black you won’t see the tunnels from the outside. For that you need a custom shader for the SewerAtlas-Material. This custom shader would need a pass where the backfaces are rendered black.

    If you are using the Build-in Render Pipeline Try this shader on the "SewerBMT\Source\SewerAtlas\SewerAtlas.Material"
    Code (CSharp):
    1. // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
    2.  
    3. Shader "Special/Blackbackface"
    4. {
    5.  
    6.  
    7.     Properties
    8.     {
    9.         _Color("Color", Color) = (1,1,1,1)
    10.         _MainTex("Albedo", 2D) = "white" {}
    11.  
    12.         _Cutoff("Alpha Cutoff", Range(0.0, 1.0)) = 0.5
    13.  
    14.         _Glossiness("Smoothness", Range(0.0, 1.0)) = 0.5
    15.         _GlossMapScale("Smoothness Scale", Range(0.0, 1.0)) = 1.0
    16.         [Enum(Metallic Alpha,0,Albedo Alpha,1)] _SmoothnessTextureChannel ("Smoothness texture channel", Float) = 0
    17.  
    18.         [Gamma] _Metallic("Metallic", Range(0.0, 1.0)) = 0.0
    19.         _MetallicGlossMap("Metallic", 2D) = "white" {}
    20.  
    21.         [ToggleOff] _SpecularHighlights("Specular Highlights", Float) = 1.0
    22.         [ToggleOff] _GlossyReflections("Glossy Reflections", Float) = 1.0
    23.  
    24.         _BumpScale("Scale", Float) = 1.0
    25.         [Normal] _BumpMap("Normal Map", 2D) = "bump" {}
    26.  
    27.         _Parallax ("Height Scale", Range (0.005, 0.08)) = 0.02
    28.         _ParallaxMap ("Height Map", 2D) = "black" {}
    29.  
    30.         _OcclusionStrength("Strength", Range(0.0, 1.0)) = 1.0
    31.         _OcclusionMap("Occlusion", 2D) = "white" {}
    32.  
    33.         _EmissionColor("Color", Color) = (0,0,0)
    34.         _EmissionMap("Emission", 2D) = "white" {}
    35.  
    36.         _DetailMask("Detail Mask", 2D) = "white" {}
    37.  
    38.         _DetailAlbedoMap("Detail Albedo x2", 2D) = "grey" {}
    39.         _DetailNormalMapScale("Scale", Float) = 1.0
    40.         [Normal] _DetailNormalMap("Normal Map", 2D) = "bump" {}
    41.  
    42.         [Enum(UV0,0,UV1,1)] _UVSec ("UV Set for secondary textures", Float) = 0
    43.  
    44.  
    45.         // Blending state
    46.         [HideInInspector] _Mode ("__mode", Float) = 0.0
    47.         [HideInInspector] _SrcBlend ("__src", Float) = 1.0
    48.         [HideInInspector] _DstBlend ("__dst", Float) = 0.0
    49.         [HideInInspector] _ZWrite ("__zw", Float) = 1.0
    50.     }
    51.  
    52.  
    53.  
    54.  
    55.     CGINCLUDE
    56.         #define UNITY_SETUP_BRDF_INPUT MetallicSetup
    57.     ENDCG
    58.  
    59.  
    60.  
    61.     SubShader
    62.     {
    63.  
    64.         Tags { "RenderType"="Opaque" "PerformanceChecks"="False" }
    65.         LOD 300
    66.  
    67.      
    68.      
    69.         // ------------------------------------------------------------------
    70.         //  Base forward pass (directional light, emission, lightmaps, ...)
    71.         Pass
    72.         {
    73.             Name "FORWARD"
    74.             Tags { "LightMode" = "ForwardBase" }
    75.  
    76.             Blend [_SrcBlend] [_DstBlend]
    77.             ZWrite [_ZWrite]
    78.  
    79.             CGPROGRAM
    80.             #pragma target 3.0
    81.  
    82.             // -------------------------------------
    83.  
    84.             #pragma shader_feature_local _NORMALMAP
    85.             #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
    86.             #pragma shader_feature _EMISSION
    87.             #pragma shader_feature_local _METALLICGLOSSMAP
    88.             #pragma shader_feature_local _DETAIL_MULX2
    89.             #pragma shader_feature_local _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
    90.             #pragma shader_feature_local _SPECULARHIGHLIGHTS_OFF
    91.             #pragma shader_feature_local _GLOSSYREFLECTIONS_OFF
    92.             #pragma shader_feature_local _PARALLAXMAP
    93.  
    94.             #pragma multi_compile_fwdbase
    95.             #pragma multi_compile_fog
    96.             #pragma multi_compile_instancing
    97.             // Uncomment the following line to enable dithering LOD crossfade. Note: there are more in the file to uncomment for other passes.
    98.             //#pragma multi_compile _ LOD_FADE_CROSSFADE
    99.  
    100.             #pragma vertex vertBase
    101.             #pragma fragment fragBase
    102.             #include "UnityStandardCoreForward.cginc"
    103.  
    104.             ENDCG
    105.         }
    106.         // ------------------------------------------------------------------
    107.         //  Additive forward pass (one light per pass)
    108.         Pass
    109.         {
    110.             Name "FORWARD_DELTA"
    111.             Tags { "LightMode" = "ForwardAdd" }
    112.             Blend [_SrcBlend] One
    113.             Fog { Color (0,0,0,0) } // in additive pass fog should be black
    114.             ZWrite Off
    115.             ZTest LEqual
    116.  
    117.             CGPROGRAM
    118.             #pragma target 3.0
    119.  
    120.             // -------------------------------------
    121.  
    122.  
    123.             #pragma shader_feature_local _NORMALMAP
    124.             #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
    125.             #pragma shader_feature_local _METALLICGLOSSMAP
    126.             #pragma shader_feature_local _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
    127.             #pragma shader_feature_local _SPECULARHIGHLIGHTS_OFF
    128.             #pragma shader_feature_local _DETAIL_MULX2
    129.             #pragma shader_feature_local _PARALLAXMAP
    130.  
    131.             #pragma multi_compile_fwdadd_fullshadows
    132.             #pragma multi_compile_fog
    133.             // Uncomment the following line to enable dithering LOD crossfade. Note: there are more in the file to uncomment for other passes.
    134.             //#pragma multi_compile _ LOD_FADE_CROSSFADE
    135.  
    136.             #pragma vertex vertAdd
    137.             #pragma fragment fragAdd
    138.             #include "UnityStandardCoreForward.cginc"
    139.  
    140.             ENDCG
    141.         }
    142.         // ------------------------------------------------------------------
    143.         //  Shadow rendering pass
    144.         Pass {
    145.             Name "ShadowCaster"
    146.             Tags { "LightMode" = "ShadowCaster" }
    147.  
    148.             ZWrite On ZTest LEqual
    149.  
    150.             CGPROGRAM
    151.             #pragma target 3.0
    152.  
    153.             // -------------------------------------
    154.  
    155.  
    156.             #pragma shader_feature_local _ _ALPHATEST_ON _ALPHABLEND_ON _ALPHAPREMULTIPLY_ON
    157.             #pragma shader_feature_local _METALLICGLOSSMAP
    158.             #pragma shader_feature_local _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
    159.             #pragma shader_feature_local _PARALLAXMAP
    160.             #pragma multi_compile_shadowcaster
    161.             #pragma multi_compile_instancing
    162.             // Uncomment the following line to enable dithering LOD crossfade. Note: there are more in the file to uncomment for other passes.
    163.             //#pragma multi_compile _ LOD_FADE_CROSSFADE
    164.  
    165.             #pragma vertex vertShadowCaster
    166.             #pragma fragment fragShadowCaster
    167.  
    168.             #include "UnityStandardShadow.cginc"
    169.  
    170.             ENDCG
    171.         }
    172.         // ------------------------------------------------------------------
    173.           Pass{
    174.          
    175.             ZWrite On ZTest LEqual
    176.             Cull front
    177.              Color (0,0,0,1)
    178.         }
    179.         // ------------------------------------------------------------------
    180.         // Extracts information for lightmapping, GI (emission, albedo, ...)
    181.         // This pass it not used during regular rendering.
    182.         Pass
    183.         {
    184.             Name "META"
    185.             Tags { "LightMode"="Meta" }
    186.  
    187.             Cull Off
    188.  
    189.             CGPROGRAM
    190.             #pragma vertex vert_meta
    191.             #pragma fragment frag_meta
    192.  
    193.             #pragma shader_feature _EMISSION
    194.             #pragma shader_feature_local _METALLICGLOSSMAP
    195.             #pragma shader_feature_local _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
    196.             #pragma shader_feature_local _DETAIL_MULX2
    197.             #pragma shader_feature EDITOR_VISUALIZATION
    198.  
    199.             #include "UnityStandardMeta.cginc"
    200.             ENDCG
    201.         }
    202.  
    203.  
    204.         }
    205.  
    206.  
    207.  
    208.     FallBack "VertexLit"
    209.     CustomEditor "StandardShaderGUI"
    210. }
    211.  
     
  9. Stupeflip

    Stupeflip

    Joined:
    Mar 20, 2016
    Posts:
    10
    Works great thank you !