4sheetzngeegles Posted May 20, 2023 Share Posted May 20, 2023 TFP;Anyone: if you have an answer for this I would appreciate it. Once before I posted a question regarding grass On the terrain and increasing the volume to make look less patchy. It was initially answered by Madmole. It had to do with a memory overload and vertex rendering. The original question was presented prior to the incorporation of texture 2d arrays. It's been a while, but here is the follow up question. I have been working on a mod regarding making the grass more interactive during game play. Watching the rendering process in game as I walk through my apocalyptic utopian landscape, brought me to this thought. There is a specific render distance for grass. Longgrass is mainly a single postcard render, with variable rotations. Longrass is a unified size, and shape. It only renders to a specific distance, then disappears. This also applies to any small topological objects within the same range. It's approximately 88 meters, with grass set on high, 70' view, tested with f3, from start point to straight line termination point. 7,744 square meters, that include number 4 minus poi lot. Presently I have it set to .65, this gives good ground cover. There are 38 plant textures, on the atlas, only 1 is the main cover "treeTallGrassDiagonal", the rest are filler. Even if a player were at the cross section of 4 grid divisions, the total coverage is less than 30% of the capability. 7DTD now uses Texture2d arrays. My questions are; can a combination of GPU Instancing + Texture2DArray, and on the back end object pooling, be used to capitalize on the repetitive shape layout? Could this lower Gpu, garbage, and cpu usage simultaneously? 4 Basically the Terrain is terra,grasses,rocks/boulders,vein topography, nests, fillers, trees. 6 potential pools. If the leaf renders which are basically more postcards, were made into a unified shape, any 2d array texture could be posted to them. The majority of land cover is grass, which also obscures, the other objects until up close. Culling is presently used, can grass be used to save memory also since it repeats more often than other objects. A single model of the starter stones could be used also. Nests are also a single mesh and texture shape. Unity as of 2017.1 + GPU Instancing + Texture2DArray = 100000 entities The max render at 1 plant per meter, is 7.74% of this basic capability in culled view. I hope so. The nurbs in the demo have many more facets than many of the terrain objects. Link to comment Share on other sites More sharing options...
warmer Posted May 21, 2023 Share Posted May 21, 2023 you can edit the spawn rate of grass in the xml files. I think its in the biome one if I am not mistaken. I did that for trees and grass both to make the forest feel a bit more wild and less manicured Link to comment Share on other sites More sharing options...
4sheetzngeegles Posted May 21, 2023 Author Share Posted May 21, 2023 I started doing it when I first had the conversation with Madmole years and alphas ago. What I was talking about above was when I linked the first thought with the second, as I started this mod, because there are two main categories of grass. Tall and short. The tall only uses 1 texture, 1 set size and shape. This model fills the basic prerequisites for using gpu instancing to generate all the grass in a single pass. It couldn't be done before, I was just wondering if it can be done and help now. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now