-
Posts
47 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Articles
Docs
Gallery
Posts posted by koros
-
-
Just playing around with the PBR branch whilst I study it's mysterious inner workings :)
Saved the grayscale roughness and metallic maps output by Bitmap2Material to RGB8 in Photoshop
Note the roughness .a and the metallic .r channels are selected in T3D
Downloaded Azaezel's PBR branch zip on 8.19.15
Screenshot is OpenGL
Link to the outputs and original main input texture https://www.dropbox.com/s/nwobyd10k7wm2q1/T3D-PBR-test.zip?dl=0
Torque3D PBR branch

Bitmap2Material

Edit
Adding the Dropbox links
https://www.dropbox.com/s/45o9xjuojh1pzdy/T3Dscreen.png?dl=0
https://www.dropbox.com/s/2kmx60029pxmlin/B2MaterialScreen.png?dl=0
...And
Let's try Photobucket.
Torque3D PBR branch
http://i1260.photobucket.com/albums/ii567/aurobooth/T3Dscreen_zpszq8cnz4k.png
Bitmap2Material
http://i1260.photobucket.com/albums/ii567/aurobooth/B2MaterialScreen_zps23tufvjk.png
Can you get to the zip file from Dropbox?
Cheers!
-
HiHi. You could do it in window :D . It would be nice to see a tutorial on the workflow if you like :) .
Torque's PBR is evolving right now. Tutorials might be a bit premature :)
The links below are a good place to start learning the PBR workflow. Azaezel and lot's of others have posted bunches of links here and elsewhere.
I'm slowly working my way through about 10 different resources myself.
https://www.allegorithmic.com/system/files/software/download/build/PBR_Guide_Vol.1.pdf
https://www.allegorithmic.com/system/files/software/download/build/PBR_Guide_Vol.2.pdf
http://jmonkeyengine.org/299803/physically-based-rendering-part-one/
Azaezel's PBR branch
https://github.com/Azaezel/Torque3D
You can have some fun playing with PBR workflows right now with the trials of Allegorithmic's tools.
https://www.allegorithmic.com/download
Lot's of reading to do. :D
-
Nothing special from me right now. Azaezel is the point man on this :D
Azaezel has the dynamic cubemaps for reflections working well in OpenGL, 99% no longer freezing, at least for me.
Roughness/Metalness seems to have the basics in place. Before it's fully in place there will be workflow changes.
You can download his branch, the zip download, and try it. Works out of the box for me on Win 8.1.
https://github.com/Azaezel/Torque3D/tree/PBR
Will post some pics, just want to play around a bit, get up to speed on pbr in general and how we are doing it.
I also need to stop being lazy and fire up VMware+Linux and test OpenGL there.
:D
-
I'm all for a "boring" stability release though :)
Downloading your PBR branch now.
I'll bang on it to the best of my abilities and report.
-
Any new pbr updates?
Still playing with a circa 6.21.15 pbr download. Been a busy summer.
See you've merged dev into pbr looks like it's time for me to update.
Will report glitches as I see em.
Trying to locate and wrap my head around the changes and pbr in general.
Thanks for the Visual Leak Detector link.
-
All the hard work is definitely appreciated on this end!
Thank you.
8-)
-
... I suppose my point was that it is important to compare detailed notes between cases so someone can eventually track down the cause and the final solution (even if the final solution is just the uv tweak).
Absolutely.
The crew here is obviously working hard and I plan to help where I can with my limited Torque skills.
Appreciate the feedback too!
:D
-
There are bound to be little tweaks like this that come to light - OpenGL was dropped a while back and is just now making its way back in. And in that gap the terrain system changed - twice.
It's probably going to come down to little fiddling differences between drivers, but I hope not.
/agree
Unity has a 200+ page bug list, UE4 has issues and I don't mind getting my hands dirty for Torque3D.
Seams are solved for my project though. OpenGl works great for me on Win8.1. Can't wait to fire up a vm and test Linux.
The seams were the only thing that cropped up and I finally fixed that. :D
I am happy as long as I can craft a solution or workaround for an issue.
Whether the uv offset is a solution or just a workaround, that's for the real devs here to decide :D
-
I have a Linux version with openGL and it does not have the seams, but the terrain textures are all wrong there also but a different issue.
But I cannot help you there, I don't understand much of this.
No problem. :)
It's solved for me actually. :D
Guessing it's an issue, precision maybe, at least on my OpenGl implementation, with floor().
Took me longer than it should have to find it but it was a good intro course on Torque3D for me and a bit of a refresher on glsl.
Maybe while I'm here I'll fire up a vm and install some flavor of linux.
Crossplatform is part of what caught my eye when I was checking out Torque3D again and I want linux too :)
-
I like being able to mess with the source and the codebase is, at least for me, a bit more intelligible than the tiny bit of UE4's I've looked at.
Torque's PBR is getting there cuz of Azaezel and others. We've got realtime reflections!
We have dark editor skin! http://www.garagegames.com/community/resources/view/22855
UE4 is nice, I was a subscriber before it went free. Blueprints are nice and the materials do rock. I've yet to spend my "free" $30 in their asset store.
I don't really have an issue with 5%. There are a lot of other entities like the government, Steam, other publishers etc. that can/will take a much bigger chunk.
Unity? Well they have crossplatform sewn up. Played with it for ~2 years.
I'm using OpenFl+Haxe+FlashDevelop for fairly painless mobile so I have no use for Unity 5 and it's "Personal Edition" splash screen.
Unity Pro's $4500, per seat for desktop+mobile is reasonable, but not cheap, for most indies.
Unity source? Sure for lots more money and, perhaps, a revenue share.
Torque3D Strengths
Torque3D is truly free
It's actively developed ( and the current team rocks )
Well documented.
PBR is on the way.
Crossplatform and more on the way.
Dark Editor skin for free :D
Most of the game systems I know I'll use are already there, no need to buy assets.
Built-in Networking is strong (not talking about MMO's and not the Prairie Games Python stuff, but that's proof it can be done )
A strong sense of ownership
Edit
Note the recent "scare" for Unity and Gamemaker users that their middleware might change or vanish due to a sale or possible sale of the company.
The concept of "future proofing" your toolchain has become more important for some. It has for me.
This article focuses on OpenFl+Haxe but makes some good points.
http://www.gamasutra.com/blogs/LarsDoucet/20150217/236674/Game_Maker_Security_and_Freedom.php
Cheers
-
It is a terrain with a base texture + detail texture and a second texture + detail texture, all stock Torque3D textures.
It is zoomed in to show the seams and it looks blurry.
The seams go away with the offset added to uv in terrain.glsl
A few more pics might help clarify this. I should probably do a video.
OpenGl
http://i1260.photobucket.com/albums/ii567/aurobooth/NewSeamsFourmPost2_zpsfb7kg6qk.png
http://i1260.photobucket.com/albums/ii567/aurobooth/NewSeamForumPost3_zpsp3ymafgq.png
http://i1260.photobucket.com/albums/ii567/aurobooth/NewSeamsFourmPost4_zpstvkxlly1.png
http://i1260.photobucket.com/albums/ii567/aurobooth/NewSeamsForumPost5_zps50kuntlp.png
D3D9
http://i1260.photobucket.com/albums/ii567/aurobooth/NewSeamsFourmPost6_zpsednwtzwu.png
http://i1260.photobucket.com/albums/ii567/aurobooth/NewSeamsFourmPost7_zpsgzm4mqjy.png
Terrain.glsl
//----------------------------------------------------------------------------- // Copyright (c) 2012 GarageGames, LLC // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to // deal in the Software without restriction, including without limitation the // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or // sell copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS // IN THE SOFTWARE. //----------------------------------------------------------------------------- float calcBlend( float texId, vec2 layerCoord, float layerSize, vec4 layerSample ) { // This is here to disable the blend if none of // the neighbors equal the current id. // // We depend on the input layer samples being // rounded to the correct integer ids. // vec4 diff = clamp( abs( layerSample - texId ), 0.0, 1.0 ); float noBlend = float(any( bvec4(1 - diff) )); // match the current texture id. vec4 factors = vec4(0); for(int i = 0; i < 4; i++) factors[i] = (layerSample[i] == texId) ? 1 : 0; // workaround for Intel // This is a custom bilinear filter. vec2 uv = layerCoord * layerSize; //uv += 0.00195; //Adding this offset = 0.00195 eliminate seams vec2 xy = floor( uv ); vec2 ratio = uv - xy; vec2 opposite = 1 - ratio; float blend = ( factors.b * opposite.x + factors.g * ratio.x ) * opposite.y + ( factors.r * opposite.x + factors.a * ratio.x ) * ratio.y; return noBlend * blend; }If it was just settings that would be great!
Any way you could pull down the 3.7 release zip and confirm this? https://github.com/GarageGames/Torque3D/archive/release-3.7.zip
It would be helpful if you could verify this with an OpenGl project and post some pics!
Hope this helps clarify a bit.
Appreciate the help.
Cheers
:D
-
That's what was done.
Base+detail, Another texture+detail etc.
When using a detail texture with any of the layers the seams show under OpenGl.
Adding the offset I mentioned eliminates the seams, at least for my card.
Please try it, especially if you have an Nvidia card, and post pics of your results. :)
Cheers
-
Also just want to make sure that this is not perceived as a complaint!
Torque3D and the work everyone has done rocks!
PBR, OpenGl, Linux and all the bug fixes... thats why I am checking it out again.
Just trying to do my part.
Cheers
:)
-
Normal terrain material?
Do you mean D3D9? or just texture layers without a detail texture?
No seams show without at least one detail texture.
Seams don't show at all under D3D9.
The pics show the result when running under OpenGl and using at least one detail texture.
Just for clarity the pics are before adding the offset to uv in game\shaders\common\terrain\terrain.glsl
uv += 0.00195;
Hope this helps
:)
-
Terrain texture seams at blend edges with 2+ texture layers only in OpenGl.
Occurs when using any detail texture and seems independent of square size, resolutions, base texture size etc.
Only tested on AMD Radeon HD7700 + updated drivers.
Win 8.1
Tested with Torque v3.6.3 and 3.7 Release
Solution / workaround: In game\shaders\common\terrain\terrain.glsl
uv += 0.00195;
vec2 xy = floor( uv );
Anyone else see this issue?
Can anyone test this on Nvidia? :)
Did a search here and on Github, sorry if I missed an existing issue.
I did see something about new terrain blending perhaps soon, not sure how this might affect it.
Opened a Github issue here
https://github.com/GarageGames/Torque3D/issues/1318
http://i1260.photobucket.com/albums/ii567/aurobooth/seam3_zpsu1ggaooc.png
http://i1260.photobucket.com/albums/ii567/aurobooth/seam4_zpsimzg5c2l.png
http://i1260.photobucket.com/albums/ii567/aurobooth/seam2_zpsebmdl4pg.png
-
Still using the old build. I'll try to find time to test the new stuff. Youtube video looks nice.
Just started playing around with metalness, was busy checking out the dark skin :D and the terrain texture layers :(
At least with the Metalness workflow I can use some diffuse textures with roughness, I'm not gonna complain! You're putting a lot of work into this.
Been a while since I messed with glsl back in my Irrlicht days, just hacked away and got some vsm/pssm shadows going, not really up to speed on Torque's shaders.
I'll help where I can, testing for now :)
-
System
AMD 6350, Win8.1 8GB
GPU AMD Radeon HD 7700, Driver v. 14.501.1003.0
Images
http://i1260.photobucket.com/albums/ii567/aurobooth/X-dif2_noRed_zpssjesvlev.png
http://i1260.photobucket.com/albums/ii567/aurobooth/X-dif2f_zps3vlbgihe.png
http://i1260.photobucket.com/albums/ii567/aurobooth/X-diff_zpsqjoh44v5.png
http://i1260.photobucket.com/albums/ii567/aurobooth/X-spec_zpsahkfqpcv.png
http://i1260.photobucket.com/albums/ii567/aurobooth/X-spec_n_zpsqcnvekhd.png
Photobucket preserves the channels in the png afaik ;)
Reflections
noticed that the realtime reflections getting "stuck" behavior is much better for objects scaled 1,1,1
Still occurs but objects scaled in the editor mess with the RT reflections a lot more or don't work at all.
Cheers
-
Playing with your realtime reflections... Nice! +1
Reflection sometimes seems to get "stuck", bringing up the options dialog or firing a decal onto the object sometimes "updates" the reflection.
Apologies if I am bringing up known issues, just really busy and haven't read everything yet.
Great work!
-
The two images and the spec map in photoshop plus two Torque screenies. Only "reflective" without the diffuse red channel.
Tested it quite a bit and it seems that both the red channel in the spec map and the diffuse map affect roughness.
This is awesome work!
Cerberus gun looks nice in OpenGL :)
EDIT: It does matter what the color is for the diffuse map, approx center gray allows cube map reflect with the non-red channel diffuse map.
Simply swapped diffuse textures in the same material for the screenshots.
http://i1260.photobucket.com/albums/ii567/aurobooth/diff_all_zps2zhhcy7c.png
http://i1260.photobucket.com/albums/ii567/aurobooth/withRedChan_zps9j4kldf7.png
http://i1260.photobucket.com/albums/ii567/aurobooth/noRedChan-ps_zpscrd4icld.png
http://i1260.photobucket.com/albums/ii567/aurobooth/noRedChan_zps6ukuremo.png
Spec map
http://i1260.photobucket.com/albums/ii567/aurobooth/spec_zpswi3fxdma.png
Material
singleton Material(Grid512_ForestGreenLines_Mat) { mapTo = "Unnamed"; diffuseMap[0] = "core/art/grids/512_forestgreen_lines"; materialTag0 = "TestMaterial"; }; singleton Material(PBRTEST_PBRMetal) { mapTo = "unmapped_mat"; diffuseMap[0] = "art/shapes/textures/Metal_A.dds"; normalMap[0] = "art/shapes/textures/Metal_N.png"; roughness[0] = "1"; metalness[0] = "50"; specularMap[0] = "art/shapes/textures/Metal_S.dds"; translucentBlendOp = "None"; materialTag0 = "Miscellaneous"; }; singleton Material(myWood1) { mapTo = "unmapped_mat"; diffuseMap[0] = "art/shapes/textures/Wood1_A.dds"; normalMap[0] = "art/shapes/textures/Wood1_N.png"; materialTag0 = "Miscellaneous"; }; singleton Material(myGrey) { mapTo = "unmapped_mat"; diffuseColor[0] = "0.341176 0.341176 0.341176 1"; materialTag0 = "Miscellaneous"; }; singleton Material(ucityHealthKit) { mapTo = "unmapped_mat"; diffuseMap[0] = "art/shapes/items/kit/healthkit_d"; normalMap[0] = "art/shapes/items/kit/healthkit_n"; pixelSpecular[0] = "1"; specular0 = "0.5 0.5 0.5 0.5"; specularPower0 = "32"; materialTag0 = "Miscellaneous"; }; singleton Material(MYRock) { mapTo = "CubeSurf"; diffuseMap[0] = "art/shapes/rocks/MossyRock02.png"; specular0 = "0.5 0.5 0.5 0.5"; specularPower0 = "32"; materialTag0 = "Miscellaneous"; }; singleton Material(MYRustySlats) { mapTo = "unmapped_mat"; diffuseColor[0] = "0.231373 0.231373 0.231373 1"; diffuseMap[0] = "art/Greg/TestDiff.png"; normalMap[0] = "art/Greg/X-spec_n.png"; specularMap[0] = "art/Greg/X-spec.png"; specular0 = "0.5 0.5 0.5 0.5"; specularPower0 = "32"; materialTag0 = "Miscellaneous"; }; singleton Material(myDiffuseRedChan) { mapTo = "rustslats"; diffuseColor[0] = "0.282353 0.282353 0.282353 1"; diffuseMap[0] = "art/Greg/X-dif2_noRed.png"; normalMap[0] = "art/Greg/X-spec_n.png"; specularMap[0] = "art/Greg/X-spec.png"; specular0 = "0.5 0.5 0.5 0.5"; specularPower0 = "32"; materialTag0 = "Miscellaneous"; };Cheers :)
-
Thanks for the hard work Azaezel.
Downloaded your latest git and noticed that the Diffuse red channel seems to be modulating the roughness also.
The packed Spec map works as expected but the smoothness/cube map reflectivity seems to also depend on whether I empty the
red channel of the diffuse map.
I know it's a work in progress and it's going to rock when it's done :)
Thanks again!



PBR: Principles, Practice, and Prepwork
in Rendering
Posted
I'm not complaining :D