sergiusz308 Posted September 15, 2023 Share Posted September 15, 2023 Hello, couple of questions regarding texturing, does Unigine supports: 1. SVTs (aka mega textures)? 2. UDIMs workflow? Thanks, S. Link to comment
silent Posted September 15, 2023 Share Posted September 15, 2023 sergiusz308 We do have custom mega-texture support, but only for terrain (ObjectLandscapeTerrain). No UDIMs support. Thanks! How to submit a good bug report --- FTP server for test scenes and user uploads: ftp://files.unigine.com user: upload password: 6xYkd6vLYWjpW6SN Link to comment
sergiusz308 Posted September 15, 2023 Author Share Posted September 15, 2023 @silent thanks for info! ad SVT: Is extending mega-texture support for arbitrary meshes is something that can be done at C# or C++ Engine API, exposed in SDK or it's too low-level and requires changes to the source-code / custom builds? Link to comment
sweetluna Posted September 16, 2023 Share Posted September 16, 2023 Hi sergiusz308, Landscape terrain's virtual texture implementation is a special case and is only available for it specifically. Through you could try implementing you own system for mega-textures but this will require some deep understanding how you can implement one. For starters this will require some way of knowing what tiles to load to the VRAM, this could be implemented with either Render::asyncTransferStructuredBuffer() or Render::asyncTransferTextureToImage(). Another thing that you will is to correctly apply such megatexture for the meshes. Although is no easy task but seems possible to implement at the first glance. Hope this helps May RenderDoc/Nsight Graphics/Intel GPA bless you Link to comment
sergiusz308 Posted September 16, 2023 Author Share Posted September 16, 2023 @sweetluna thanks for getting back on this. I understand that suggested APIs is what you use for terrain? How you guys approached intermediary buffer / texture and loading pages from disk? Thanks, S. Link to comment
sweetluna Posted September 17, 2023 Share Posted September 17, 2023 Internally we have our own format for Landscape Layer maps that can be read at specific regions on demand. Feedback Streaming is managed using async transfers from GPU to CPU via same api's that I provided above. Texture upload to the GPU can be performed via Texture::setImage() and then rendered into the final atlas texture with RenderTarget. Note that you can request temporary textures that Engine manages internally. Render::getTemporaryTexture() This can be done for RenderTarget s too with Render::getTemporaryRenderTarget(). Don't forget to release them with appropriate calls to Render::releaseTemporaryTexture() & Render::releaseTemporaryRenderTarget(). Hope this helps 1 May RenderDoc/Nsight Graphics/Intel GPA bless you Link to comment
sergiusz308 Posted September 17, 2023 Author Share Posted September 17, 2023 Thanks, this is a good starting point! Link to comment
Recommended Posts