unity-renderer icon indicating copy to clipboard operation
unity-renderer copied to clipboard

POC: Render infinite floor using color tint from map texture

Open olavra opened this issue 2 years ago • 8 comments

This POC tries to render a preview of the size, boundaries and type of parcel that are not loaded yet on the infinite floor. With this we could:

  • Anticipate the content to be loaded, improving the discoverability and curiosity of the players.
  • Be confortable with low end devices and low scene load radius
  • Prevent the abrupt cuts of streets and roads, drawing their parcels in gray colors similar to those of the assets.
  • Give color variance, improving the enrichment of the skyline.
  • Improve the rendering of the world floor for positions above the ground

image.png

image (1).png

Acceptance Criteria

  • Using the atlas map texture of the whole map, print each parcel of the infinite floor with their corresponding color tint
  • Parcels need to still have their grid, but the grid color will be dependent of the parcel color
  • Empty parcels, states, parks, roads and streets need to be rendered with different colors
  • Parcel colors type may have ranges to improve variety, parcels belonging to the same scene should have the same color.
  • Scenes border should be delimited with thicker grid lines.

Notes

  • Check viability of using square tiling textures instead of color tints

olavra avatar Jun 02 '22 12:06 olavra

  • Initial development of the map projected on the infinite floor.

image.png

JuanSalice avatar Jul 26 '22 21:07 JuanSalice

Added shader to infinite floor in gameplay and adjusted the values to match the current scene

image.png

image.png

image.png

JuanSalice avatar Jul 27 '22 14:07 JuanSalice

  • Added a texture to the parcels

image.png

JuanSalice avatar Jul 28 '22 12:07 JuanSalice

  • Added texture to the roads.
  • The scale of the plane no longer changes the size of the map projected onto it.
  • Added grid into the grass with customization options.
  • Grid on the grass can be set to an exact number per parcel.
  • Cleanup and optimization of the shader.

image.png

image.png

JuanSalice avatar Jul 29 '22 18:07 JuanSalice

  • Added new color to owned parcels.
  • Floor texture tiling now matches parcel sizes and alignment.

image.png

JuanSalice avatar Aug 01 '22 21:08 JuanSalice

  • Major optimization changes and refinement of the shader.

JuanSalice avatar Aug 04 '22 13:08 JuanSalice

  • Removed fog from infinite floor shader.

JuanSalice avatar Sep 01 '22 21:09 JuanSalice

  • Added grid thickness variation with customization values
  • The outline between parcels now has an additive effect
  • The grid is now visible on a further distance
  • There is a focus point where the grid looks brighter, which will be aligned with the user's avatar
  • Added a fake fog with customization values

image.png

image.png

image.png

JuanSalice avatar Sep 02 '22 21:09 JuanSalice

  • Grid fade and fog positions are now world based.
  • Player position value now controls where the grid focus and fog are located

JuanSalice avatar Sep 15 '22 20:09 JuanSalice

  • Fixed bugs caused by infinite floor being relocated.
  • Adjustment of values for the infinite floor shader.

https://images.zenhubusercontent.com/337227404/40e74fbf-7cc4-46fa-80b4-ba3c48e91930/infinitefloor_1.mp4

JuanSalice avatar Sep 19 '22 21:09 JuanSalice

  • Adjusted values.
  • Grass grid fading now is independent from the fog.
  • Values are scaled to avoid big numbers.
  • Fixed an issue where the grass texture was not applied on the empty areas of the map.

image.png

JuanSalice avatar Sep 23 '22 20:09 JuanSalice

Infinite Floor Blender from Floor To Skybox

We need to have a quick meeting to define area of colors etc

infinite_Floor_updates_control.jpg

MichaelBitsakis avatar Oct 06 '22 12:10 MichaelBitsakis

  • Separated and Enchainment of grass Grid.
  • Added colour variation on the grass Grids

Minimal (not too loud in the eyes) effect so i can get a first feedback on this part.

For the Plaza parcel we can further separate it and keep the previous effect or create new one for those grids lines there.

comparison.jpg

https://images.zenhubusercontent.com/337227404/9505014e-7f57-4fa7-b9b4-8e8c3b00dbe9/grassgridseparationenchacement_1.m4v

https://images.zenhubusercontent.com/337227404/a78690f7-354c-4c71-9495-a479ee321433/grassgrid_comparison_1.m4v

MichaelBitsakis avatar Oct 11 '22 16:10 MichaelBitsakis

Horizon Distance Blender

3 frames in this GIF

Frame 1 : Current Infinite to Skybox Frame 2 : Near Distance Blender Frame 3 : Near plus Far Distance Blender

This will give the illusion of background objects (trees) being drawn in bigger Z Distance one from another and in comparison with the Floor END EDGES and not coming straight up right after the Floor ends as they are in Frame 1 of this GIF.

HorizonDistanceBlender.gif

To enhance the effect we can make a billboard system of Trees and rocks starting right after the Floor 4 edges end . Billboards can be spawn in different locations regarding Z distance .

MichaelBitsakis avatar Oct 12 '22 11:10 MichaelBitsakis

  • Added new variation Frequency to brake the blocky overall look

added_new_variation_frequency.jpg

  • Separation and access to parcel boarders grid (white grid in this area so i can show the progress)

separation and access to parcel boarders.jpg

Now we can start adding effects on those grid lines

  • Parcel Boarder Lines subshader ready for applying the effect

https://images.zenhubusercontent.com/337227404/7c5d5e21-b82c-48a5-b5d4-2223a3b35c47/parcelboarderlinesreadyforeffect_1.m4v

MichaelBitsakis avatar Oct 12 '22 14:10 MichaelBitsakis

Infinite Floor Ground Interpolation (video with result ).

Now we have one remaining problem , solution was presented and will be implemented today as well.

interoation_1.jpg

interoation_2.jpg

interoation_3.jpg

interoation_4.jpg

interoation_5.jpg

interoation_6.jpg

https://images.zenhubusercontent.com/337227404/7d79f5f6-ca03-4303-b6d5-e335f7d3ee2b/blender_rev_1_1.m4v

MichaelBitsakis avatar Oct 13 '22 10:10 MichaelBitsakis

Explaining the solution for the missing interpolation steps and hard edges of the quad.

https://images.zenhubusercontent.com/337227404/c6d60380-96e1-4f9b-ae15-f6b31c2c4348/solution_for_interpolation_blending_1.m4v

MichaelBitsakis avatar Oct 13 '22 12:10 MichaelBitsakis

Complete Elimination of Infinite Floor Edge , currently corking on the coloration to match the Skybox Ground.

EliminationOfInfinitFloorEdges.jpg

EliminationOfInfinitFloorEdges_closerview.jpg

Dont mind the Green and Red colors , those are my Debug setup

MichaelBitsakis avatar Oct 18 '22 13:10 MichaelBitsakis

Implementation and complete blend (automated)

infiniteFloorCompleteBlend.jpg

https://images.zenhubusercontent.com/337227404/9fcb4c7a-8538-4148-83e9-76ba42a8f374/infinitefloorcompleteblendimp_1.m4v

MichaelBitsakis avatar Oct 18 '22 14:10 MichaelBitsakis

And Play Test From High And Low Grounds

High Grounds

https://images.zenhubusercontent.com/337227404/760c2d0e-f66d-460b-adb7-0ae2da8b6a45/playtestforinfiniteflooradvancefog_1.m4v

MichaelBitsakis avatar Oct 18 '22 14:10 MichaelBitsakis

Lower Grounds

LowerGrounds.jpg

LowerGrounds_2.jpg

LowerGrounds_3.jpg

LowerGrounds_4.jpg

MichaelBitsakis avatar Oct 18 '22 14:10 MichaelBitsakis

Separated as many systems as possible as previous version of Infinite floor had everything linked up from the received data and it was going to cause me several issues and lost of time to change things especially now that we are adding new systems on top of it.

complete separation.jpg

complete separation_2.jpg

complete separation_3.jpg

MichaelBitsakis avatar Oct 19 '22 12:10 MichaelBitsakis