unity-renderer
unity-renderer copied to clipboard
POC: Render infinite floor using color tint from map texture
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
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
- Initial development of the map projected on the infinite floor.
Added shader to infinite floor in gameplay and adjusted the values to match the current scene
- Added a texture to the parcels
- 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.
- Added new color to owned parcels.
- Floor texture tiling now matches parcel sizes and alignment.
- Major optimization changes and refinement of the shader.
- Removed fog from infinite floor shader.
- 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
- Grid fade and fog positions are now world based.
- Player position value now controls where the grid focus and fog are located
- 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
- 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.
Infinite Floor Blender from Floor To Skybox
We need to have a quick meeting to define area of colors etc
- 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.
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
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.
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 .
- Added new variation Frequency to brake the blocky overall look
- Separation and access to parcel boarders grid (white grid in this area so i can show the progress)
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
Infinite Floor Ground Interpolation (video with result ).
Now we have one remaining problem , solution was presented and will be implemented today as well.
https://images.zenhubusercontent.com/337227404/7d79f5f6-ca03-4303-b6d5-e335f7d3ee2b/blender_rev_1_1.m4v
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
Complete Elimination of Infinite Floor Edge , currently corking on the coloration to match the Skybox Ground.
Dont mind the Green and Red colors , those are my Debug setup
Implementation and complete blend (automated)
https://images.zenhubusercontent.com/337227404/9fcb4c7a-8538-4148-83e9-76ba42a8f374/infinitefloorcompleteblendimp_1.m4v
And Play Test From High And Low Grounds
High Grounds
https://images.zenhubusercontent.com/337227404/760c2d0e-f66d-460b-adb7-0ae2da8b6a45/playtestforinfiniteflooradvancefog_1.m4v
Lower Grounds
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.