About This Software Modlab is not an image editor. ModLab is a free tool that can generate normal maps in a realtime deferred rendering environment. It was initially created as an asset previewing and mastering tool for the game Wayward Terran Frontier which means it stands out among other content creation utility programs by featuring a full hardware rendering pipeline for previewing results in realtime.Modlab can generate high quality normal maps without 3d geometry.ModLab is completely free but you can support development at https://www.patreon.com/user?u=7785848.The Modlab project has 3 core goals.To provide entry level graphic designers an alternative way to create difficult assets such as normal maps and specular/roughness maps.To provide professional graphic designers an ideal environment for fine tuning their art and exporting ready-to-ship assets.To serve as a test bed for new experimental content generation techniques and algorithms. i.e. cool stuff we want to play around with. Depending on reception and feedback Modlab may grow to become much much more. We would like to continue developing Modlab in coordination with the community. Our goal is to have the product remain free and supported by donations, and we will be hosting community polls to decide the direction of future development. Features such as procedural backdrop generation, support for other rendering and post-processing pipes such as Unity or Unreal, and 3d model previews of assets are all on the table.Key features:Generate a normal map from a diffuse map using advanced image processing and analytic techniquesGenerate detailed normal maps from height mapsCombine normal maps with custom blending parametersCreate a horizontal profile for a normal map using the curve editorClean up and sharpen existing normal maps with Bilateral filteringGenerate roughness/specularity mapsFine tune the intensity of emission mapsRealtime preview with settings for dominant, ambient, and point light sources 7aa9394dea Title: ModLabGenre: UtilitiesDeveloper:Reason Generator Inc.Publisher:Reason Generator Inc. Release Date: 15 Feb, 2018 ModLab Download] [torrent Full] v1.1.1: So user had issue with windows open file dialog and asked for another method of loading files. Alright then, patch v1.1.1 is out and you can now load textures by drag and drop onto load file buttons. Also fixed one possible crash that I accidentaly discovered.. Patch 1.2.1: v1.2.1-DDS loading support-TGA loading support (without alpha) using .NET Targa Image Reader-Fixed crash on loading Height map before Dif-Automatic flat grey diffuse in case user wants to process just a normal mapI had very little time to do some extensive testing altho this required some massive changes. If you run into any issue please let me know.. v1.0.1: First minor patch, generally quality of life changes.v1.0.1. Patch v1.1 released: Patch it out! Since I've elaborated content of this patch in blog posts I will keep this short and just link them:Main features:. Preview: patch v1.1: First Patreon poll concluded some time ago and since then I am have been working on the two most voted options. Since talking about optimization would be boring I will talk about other one, which is nothing else than quality of medium and large generated elements. The issue:. Tutorial 2 and Patch 1.2.3: https://www.youtube.com/watch?v=e_mjAM945igSecond tutorial describing how is ModLab used for processing ships for Wayward Terran Frontier: Zero FallsPatch notes: Switched Normal A and Normal B channels for combine Renamed Normal 2 map slot to Normal B Fixed issue with dominant light control drag taking priority over load buttons Added export png function for background (WIP)Big thanks to all my Patreons:Kageve GonswicZero Falls is GoodDmitri KleinAlex YangTiberiumkyleKevin ZechnerIf you find this project useful, consider supporting it at Patreon: https://www.patreon.com/user?u=7785848. First Patreon poll: All Patrons (in this round this includes suporter tier) are able to vote in current poll which will run till Monday 12th March after which I will start working on implementation of winning option.1) Image export for Background generator - In this iteration I would be aiming to create export into one layer 2D image. Resolution would be settable between 512x512 to 4096x4096. In future this would open path for further improvement of space background generator and very possibly export of spherical 360 3d map.2) Ability to chose shader model - Schlick's approximation is currently used for rendering, on top of that it is slightly modified version. I would like to offer option to pick between several shader models. First additional model would be very basic phong model (which is much more primitive than currently used Schlick). Main motivation behind this would be creating framework itself for realtime shader model swap. In future this would lead to ability to preview textures in specific rendering environment being identical or close to Unity/Unreal Engine.3) Optimization - realtime processing is done on GPU but it can be demanding, especially on older GPUs.. or on any GPU if used for processing large textures. There are several optimizations that can be done. Largest one would be to process texture only on value change and that would be first step. In future this will open way for some additional functionality that would use gained performance.4) Increased quality of Medium and Large elements - I am not very happy with with medium and large elements quality when generating normal map from Height map or Diffuse map. Luckily I know exactly what is the cause and what to do with it. For cost of some performance (and of course some work) I can greatly improve quality of these elements.Patreon link: https://www.patreon.com/user?u=7785848. Hotfix 1.2.2b: Just removing alpha information from Roughness map export.. Patch 1.2.2: So, software was originally designed mainly for sprites but over time it grew into very powerful texture processing tool, used by almost 8 000 developers and modders. One of issue that came up from original design is interpolation around edges... NOT anymore.This verison of ModLab will let you chose UV wrapping sampler state.If you like the software and find it useful, then please consider supporting further development on Patreon: https://www.patreon.com/user?u=7785848I you came across any critical issue please let me know, I will look into it as soon as possible.. Preview: patch v1.1 part 2: Alright, so other part of this update: Optimization First of all I need a reasonable goal. Processing a 4k x 4k texture on a 4 years old mid tier GPU at 60 fps seems like a reasonable goal, so let's aim for that. To make it fun let's include the latest changes with the most performance hungry settings (using largest possible kernels for small and medium elements). So initial test: Load texture, Generate From Diffuse set, set the highest radius for both elements + using most complicated kernel aaaaand we are at 17 fps. Alright, so I need to make this aprox 3 times faster. In terms of rendering this is kinda scary especially considering that I was trying to make this efficient in first place and I am not going to compromise quality in any way. First of all let's do some profiling to see what's the most expensive, I have pretty good idea but it is good to confirm and see how exactly expensive it is. What we have learned at this point is that VS graphic debugging sucks. The moment I am under 60 fps (thus the point you want to profile) I am unable to capture a frame and the whole debugging process glitches. Well it's not like I am mad, I am just furious. Ok then, let's profile smaller texture and just use the ratios between individual processing steps. Okay, so I can now capture a frame, I can get quick analysis but I can't get extended "Error have occured" - Thx for info, I almost didn't notice. *flips table* Alright , let's roll with Nsight. Luckily for me Nsight works like a charm. Profiling confirmed what I expected. While at it I've noticed minor Color Surfaces mismatch and here we have another fps. In other words 53 ms per frame, I would need to get to aprox 16.7 ms for frame to be at 60 fps. Currently worst offenders are processing added recently and for those there is no possible optimization as they are simply blurs with large kernel (remember when I said that I wont compromise quality, so no, I am not going to undersample these, blurs shaders used here already make advantage of linear interpolation). The most reasonable way at this point is to process these only when required, thus on value change, it is obvious approach, really which I was avoiding for few minor reasons but I guess it's time. TL DR version of what's going to happen: There are several parallel processing branches running at same time, some are merging at some points, all are contributing to final result. Goal here is to update minimum portion of the "tree" system when their input changes. After these changes we are suddenly at 46-47 fps with very minor fps drop (3-4fps) when moving sliders, everything still responds in realtime, 13fps/5ms to go. So let's give same treatment to billateral processing. Changes above resulted in improvement from 17 to 56 fps with worst case scenario drop to 49 fps for split second (realistically unnoticeable). I've tested also some 8k x 2.5k textures and performance was still very reasonable. This concludes optimization pass for patch 1.1. Main feature still remain changes regarding large and medium elements as mentioned in previous post: https://steamcommunity.com/games/768970/announcements/detail/1671276544921786698 So when is v1.1 going to be released? Probably during next week, no promises there, I want to clean up few things, finish slider value normalization and add few other QoL improvements (scroll wheel to scroll left side of GUI incoming). As always I would like to thanks all Patrons, you are the reason why I am working on this patch. Patreon: https://www.patreon.com/user?u=7785848
ModLab Download] [torrent Full]
Updated: Mar 24, 2020
Comments