Guess what, Slinky Muffins? It’s updated! Here’s the changelog:
- Roughness maps - Now you can finally use the full range of PBR shading in UE4!
- Independant roughness TM - Along with detail textures, you can also specify roughness variation amount per-tile.
- Ryan B’s POM with shadows - New POM calculation allows you to use shadows and direction
- Sun Direction material parameter collection and blueprint - Allows you to pull sun direction from the directional light in level for accurate POM shadow direction
- Colored Tile Maps - Tile maps can now be colored, allowing you to manually color individual tiles with the full range of RGB values and colors
- Tiling in world space - You can map the system in XYZ coordinates so it works flat on a wall, floor, or ceiling, and tiles seamlessly across multiple meshes, even if UVs are not set up on them
- Fixed bug - POM disabled local tiling
- Fixed bug - Parallax/Iterative caused displacement to tile incorrectly
- Toggle for Metallic shader - Previously set to on all the time
- Toggle for cheaper gamma correction - Previously set to on all the time
- Optimum Maps - Use individual channels of one texture map for all areas that used to be handled by the Tile Maps. Can save draw calls on PS4/OpenGL systems, but wastes more memory (Shared samplers are still preferred for DirectX 11 systems)
If you download the Perfect Tile System from the Marketplace right now, you will get all these great upgrades! If you already downloaded it, please re-download the newer version to make use of all the added features and bug fixes.
The user guide has been updated to reflect all of these changes. If you’d like to download the user guide, it is available as a free download right here:
As a side note, I’d like to mention that the money I earned from selling this system so far has allowed me to upgrade my graphics card from a GT 640 to a GTX 960! Everything runs so smoothly now, it’s fantastic! Thanks to everyone who supported this project!
As for the future of this system, it is currently doing most of what I really wanted it to do. The system is finally optimized for PS4 and OpenGL platforms. I can try to make Optimum textures to improve draw call performance on mobile devices, using a single four-channel compressed texture VS 4 individual uncompressed textures for things like parallax, AO, and roughness, but in my experiments it was much more difficult to accomplish than I anticipated. I can’t swap out texture objects, so the iterative parallax and POM material functions will be tricky to set up. I would have to explode the size of the shader to twice the size it already is right now to make a seamless workflow for something like that (plz don’t make me do this). It already works on mobile as it is, optimized for most of the basic things you want to do. If you want custom AO, custom roughness, diffuse textures, colored TMs, and parallax displacement on a mobile platform, as of right now, good luck. You can do it, it just takes a new draw call for each texture. Except for the diffuse texture, none of them can be compressed, either.
Stuff like tile randomizing (shifting tiles around to get a less orderly appearance), detail metallic (high-res texture for up-close metal definition), detail texturing (layering one texture on top of another to improve detail), double-masks (using two textures to generate the final mask, great for chipped tiles), the aforementioned Optimum texture (displacement, roughness, AO, detail metal in one texture), and the possibility of actually supporting translucent rendering would be a dream for me to integrate with the current system, but with each new feature like that, the complexity gets tougher and tougher and tougher. At this point the project has basically spiraled beyond the limits of what I can do. I mean, this thing has been a year-long undertaking! 14 months ago was the first day I posted about this system. And right now, there isn’t a single system out there that is this good at eliminating the tiling look from repeated textures: no Substance, no Photoshop tutorial, and no graphics tutorial has managed to get to the point where you can feasibly render half a square mile of tiling bricks, and with as much ease as this system. For that, I am truly proud.
I may revisit this project again to integrate those final upgrades. But until then, keep on creating!