AmplifyCreations / AmplifyImpostors-Feedback

0 stars 0 forks source link

Template Design #11

Closed BOXOPHOBIC closed 1 year ago

BOXOPHOBIC commented 1 year ago
  1. The template always adds _Albedo and _Normals even if not used. We should be able to have and handle our own bakes as we want via the custom texture samplers, and the impostor should only take care of sampling the textures and blend them.

image image

  1. An impostor could work with any template because we just provide some interpolated textures and vertex output via the Impostor Node. This way we can have unlit shaders, simple lit, custom lit, etc, without needing to duplicate the templates.

  2. The impostor is always performing a clip, in fact, it does 2 clips. This could be done at the end, in case the user wants to add something to that clip. In my case, the shader is performing 3 clips.

image

  1. The ImpostorFragment could take care of a single texture at a time, instead of doing the entire SurfaceOutput maybe?

  2. URP/HDRP bakers are not needed, the BIRP one works for all.

  3. The built in shaders could be moved to templates to have only 1 system for everything. I can help to make the bakers work with the unity shaders. Fewer shaders to maintain, which are all written in a different style. If the custom templates are dropped, the amplify templates can be used, so the impostor only needs the bakers. Win win win

How I would redesign the shaders, the impostor node adds interpolators, the vertex/frag calculation, and outputs the textures with parallax and that's it. Any template can be used after and we just hook the textures, perform the alpha clip, etc

Dawie3565 commented 1 year ago

this item is now tracking in https://github.com/AmplifyCreations/AmplifyShaderEditor-Feedback/issues/171