Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

The Asset Store Essence

Discussion in 'Assets and Asset Store' started by hvilela, Sep 3, 2012.

  1. hvilela

    hvilela

    Joined:
    Dec 6, 2010
    Posts:
    24
    I think that the Asset Store concept is great, but I believe people (especially artists) are not fully understanding the essence.
    If I wan't to create a game with bought assets, I need assets that match. I can't buy one character from an artist and other from another one. The same goes for scenery.

    I think that some artist understood it by creating packs or at least a collection of separated models that match each other, but most of the models are one of a kind. It's quite common to reach an great model with an affordable price and than see that there's nothing you can do with it.

    Do you feel the same?

    I woud like to point some exemples of what I believe to be a good model to follow: Polygonmaker, Frogames and 3DRT.com.
     
  2. fholm

    fholm

    Joined:
    Aug 20, 2011
    Posts:
    2,052
    I do agree, not sure what you wanna get with this post, but I agree. I often don't buy stuff because I can't use a model here and there, I need complete sets with a lot of animations, props, etc.
     
  3. mr_Necturus

    mr_Necturus

    Joined:
    May 17, 2010
    Posts:
    2,956
    You are right, collections usually going well.

    I have also several collections in my own store. And I thought to put it on Asset Store too. Just one thing stopping me to do it. Usually my models have many textures, so packs will be too big for uploading it to asset store. In my shop I have tools to combine pack from any items I have on the server.
     
  4. fholm

    fholm

    Joined:
    Aug 20, 2011
    Posts:
    2,052
    I would rather have a half gig big pack of well composed models that fit together, instead of smaller packs of N models which dont go together at all.
     
  5. phex

    phex

    Joined:
    Mar 16, 2010
    Posts:
    725
    Every artist has its own style, me too. And i know that not every asset can be used with others.
    But there are a lot of artists offering collections in the same style, like dexsoft, arteria, mr necturus,
    the ones you chosen for example...

    You must also keep in mind that someone likes a lowpoly comic style and another one prefers
    AAA style "Nextgen" models. Mobile developers looking for lowpoly assets, the ordinary
    ZOMBIE-FPS-MMORPG-WOW-KILLER Developer needs other things to be happy :)

    You see, there is no way to get a ONE-STYLE-FITS-ALL kind of thing..
     
  6. hvilela

    hvilela

    Joined:
    Dec 6, 2010
    Posts:
    24
    @fholm Well, I'm not sure what I wanna get with this post neither. :)
    Maybe open some eyes.

    @mr_Necturus You're not seeling packs but you're selling models that fit each other, so I guess you're doing well. The main issue is to find a model that has no matches at all. Take Arabian Art Studios for example. They have this nice fat zombie that is very cheap, considering the quality. But what can I do with just one type of zombie? They have no other assets to sell and I can't buy zombies from other artists, they won't match.

    @phex I'm not expecting that models from different artists match. I expect each artist posting many models with the same style, not just one cause it's useless.
     
    Last edited: Sep 3, 2012
  7. mr_Necturus

    mr_Necturus

    Joined:
    May 17, 2010
    Posts:
    2,956
    Hm... These guy just started. It takes time to make animated characters especially in good quality and especially when you just started. I think we well see more from Arabian Art Studios soon.
     
  8. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    I totally agree that a game, or level, needs a consistent look and feel so that means the modeling/visuals need consistency which you won't get from lots of different authors contributing models that vary wildly. On the other hand, if someone supplied asset bundles that were so extensive as to provide that consistency across a whole level or game, then those assets would `define` the game so much more and it would be much harder to make a unique game that doesn't look/feel just like someone else's using the same assets. Ideally you will have custom assets created for each unique game, specific to that game. Sometimes the idea of what may prove beneficially financially such as selling the same asset to lots of people doesn't necessarily align with what makes for a great game.
     
  9. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,203
    It's possible to also mix styles, as long as you are consistent with the mixing. You could have architecture in one style, characters in another, and foliage in a third. As long as they are similar, then the mix becomes a style of it's own. It's also possible to tune the texture settings to make things match better - ie, desaturate things that are more cartoonish (and vice versa), add bump maps, etc. For example, for one asset pack that I purchased, it had everything in one texture atlas, so I created a special masked-detail shader that mixes in higher resolution textures to make things less cartoonish. Example:

     
  10. phex

    phex

    Joined:
    Mar 16, 2010
    Posts:
    725
    Left one is what you bought and the right shows what you did with a shader ?
    Excellent !
     
  11. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,203
    Thanks, that is correct - left is the default (I'd previously modified it) and right is the shader version. This is from the "fantasy village pack", which is on the asset store now (I'd purchased it straight from the developer back when he ran his own store). If anyone is interested, here is the shader itself. This was for my own use, so a few values are hardcoded, and I could stretch it to use Alpha for another mask, or even varying shades of the existing colors. I likely will at some point because I need one more detail texture. :)

    Code (csharp):
    1.  
    2.   Shader "Custom/BumpMaskDiffuse" {
    3.     Properties {
    4.       _Color ("Main Color", Color) = (1,1,1,1)
    5.       _MainTex ("Texture", 2D) = "white" {}
    6.       _MaskTex ("MaskTex (RGBA)", 2D) = "black" {}
    7.       _BumpMap ("Bumpmap", 2D) = "bump" {}
    8.       _RedDetail ("RedDetail (RGBA)",2D) = "gray" {}
    9.       _GreenDetail ("GreenDetail (RGBA)",2D) = "gray" {}
    10.       _BlueDetail ("BlueDetail (RGBA)",2D) = "gray" {}
    11.       _DetailTile ("Detail Tile", Range(0,1)) = 1
    12.     }
    13.    
    14.     SubShader {
    15.       Tags { "RenderType" = "Opaque" }
    16.       CGPROGRAM
    17.       #pragma surface surf BlinnPhong  
    18.  
    19.       struct Input
    20.       {
    21.         float2 uv_MainTex;
    22.         float2 uv_BumpMap;
    23.       };
    24.      
    25.       sampler2D _MainTex;
    26.       sampler2D _MaskTex;
    27.       sampler2D _BumpMap;
    28.       sampler2D _RedDetail;
    29.       sampler2D _GreenDetail;
    30.       sampler2D _BlueDetail;
    31.       float     _DetailTile;
    32.       float4    _Color;
    33.      
    34.       void surf (Input IN, inout SurfaceOutput o)
    35.       {
    36.         float4 basecol = tex2D (_MainTex, IN.uv_MainTex);
    37.         float4 maskcol = tex2D (_MaskTex, IN.uv_MainTex);
    38.         float3 newcol;
    39.      
    40.         if (maskcol.r > 0.05)
    41.         {
    42.             float2 detailuv = IN.uv_MainTex / _DetailTile;
    43.             float4 Detail = tex2D (_RedDetail, detailuv);  
    44.             basecol.rgb = basecol.rgb * 2 * Detail.rgb;
    45.         }
    46.        
    47.         if (maskcol.g > 0.05)
    48.         {
    49.             float2 detailuv = IN.uv_MainTex / _DetailTile;
    50.             float4 Detail = tex2D (_GreenDetail, detailuv);
    51.             basecol.rgb = basecol.rgb * 2 * Detail.rgb;
    52.         }
    53.        
    54.         if (maskcol.b > 0.05)
    55.         {
    56.             float2 detailuv = IN.uv_MainTex / _DetailTile;
    57.             float4 Detail = tex2D (_BlueDetail, detailuv); 
    58.             basecol.rgb = basecol.rgb * 2 * Detail.rgb;
    59.         }
    60.        
    61.         o.Albedo = basecol * _Color;
    62.         o.Normal = UnpackNormal (tex2D (_BumpMap, IN.uv_BumpMap));
    63.         o.Alpha = 0.2;
    64.       }
    65.       ENDCG
    66.     }
    67.     Fallback "Diffuse"
    68.   }
    69.  
    70.  
     
    Last edited: Sep 4, 2012