HeroEngine Forums
Welcome, Guest. Please login or Register for HeroCloud Account.

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - McIndus

Pages: 1 [2]
In a quick check, it looks like we stay about 8 pixels away from the border that separates any two quads; and, a bit closer to the border of the texture atlas itself.  You have the content, so you can easily use it as a guideline.

I'll ask Bennett to provide his input on the SpeedTree texture, as I'm not sure whether that's a usage issue or potential bug.


Thanks for your help, Herb!

Well, the reason I asked about the buffer is because I can't find the pixel buffer you're talking about on the grass quadrant textures.
Are you looking at the content with the Alpha applied?  GIMP automatically shows you the alpha value, PS does not.  If you open the grass files in PS, this is what you see, with the quadrant art going right up to the edge:

Also, unless I turn my transparency up to 4 or 5, you can see the top/bottom of the quads 'bumping' into each other on these textures inside the game as well.  The only thing I see different from my files and the 'test textures' is that the test grass does a gradient fade in the alpha as you get to the bottom of the quadrant, yet mine is big, white, and bold.  I think something is happening in the alpha channel on the third mip.  In HE default files, you don't always see this in game because the bottom of the grass has a stronger transparency than the rest.

I think they are actually the same bug, if it is a bug.  In SpeedTree, when it compiles a texture, it creates a 'green' background to the diffuse textures by default.  I can change this setting to be Transparent, but then I have issues with my billboard trees themselves showing up incorrectly. 
If you compile a texture in speedtree (mine are 1024), by the third mipmap, you can see how the green diffuse 'background' blends with the edge of the pixels of the quad instead of being part of that generated border because of how small the mip is...  however, the Alpha looks 100% ok:

So this - in theory - should work beautifully, and I shouldn't be getting artifacts in the mips when I zoom out, correct?  For some reason, the top/bottom of the diffuse textures on the third mipmap are bleeding through the alpha into the bottom texture.  This is also the exact mip level I'm having issues on with my grass.  I tried dropping my texture resolutions to 512x512 because the test textures are that resolution, but it didn't solve my problem.

Hope this helps.

I have been creating my own 4-tiled textures for use as Dynamic grass, but have been running into a major issue

Does this happen with any of the included test content?

It appears that you're drawing your textures right up to the extent of the quarter of the atlas.  While the texture addressing divides it into a 2x2 of clamped quads, hardware filtering will still bleed across the edge because it can't mask.


The image I posted is actually cropped and edited, but if you're talking about the locations where the top/bottom meet, then yes - my texture is sitting right on the edge.
How many pixels would be a 'good' distance to move my images away from the quadrant edges? 

My current method was literally copy/pasting the ones that work just fine in 'single' mode into a 'smaller' resolution composite of 4, using your awesome quad texture Dynamic placement, making sure that I was pixel precise.  I will try to use the test content as a template for my pixel locations to see if that fixes things.  Could this be because my originals are 1024px instead of the default 512px-less and my mips at a distance are causing hardware filtering bleed? 

It's strange that it only happens at a distance.  I checked a bunch of the test content, and it doesn't seem to be there, but there are other minor issues if transparency is set to "0", such as a pixel bleed on the bottom of some of the textures.  I know transp set to 0 looks like crap and has pixelization, etc., and those artifacts go away right away on the test content,  but I have to set my transparency to "10" or more before my current problem goes away on my own textures, and that sacrifices too much of my grass detail, so my current workaround was to push everything 2 pixels away from the quadrant edges, but I feel that a 4 pixel 'buffer' on each texture is a hackish workaround - or is this standard?

Second, and more important question:  Why is this happening in SpeedTree when it compiles my files?  SpeedTree compiler even adds a nice buffer between the textures, but it seems like the mips are still wrong.  Will I have to manually change all of my SpeedTree textures if they have card textures for leaves after they compile?  The texture that it compiled for me in SpeedTree doesn't even have any textures up to the edge of the quadrant.  My 'knothole' cap texture is the one that seems to be bleeding down into the quad below it, but it also only happens when I zoom out.  Could this be because I have included my ambient lighting from ST in the SpeedTree compiler?  Will I now no longer be able to use this function? EDIT* Just compiled without ambient lighting, still have the problem with SpeedTrees.

Thanks for all your help!

Hello everyone, this is my first post here and I'd like to bring a bug to light that may have been addressed before, but I have a way to reproduce the problem, and am hoping for a fix!

I have been creating my own 4-tiled textures for use as Dynamic grass, but have been running into a major issue.  When I zoom out to the point of where it swaps resolutions, the alpha channel gets a 'line' drawn across it.

I thought it was my textures, so I pushed everything a few pixels away from each other and it 'quick-fixed' my issue, but I have tried again and again to track down the problem on my end, to no avail. (even using bright colored blocks to determine what was going on). 

Here is a screenshot of close up with NO artifact:

And here it is zoomed out, with noticeable artifact (turned transparency to 0 to make obvious)

This is also happening when I use the SpeedTree compiler and use billboard leaves.



I have looked into my textures, and realized that both of these textures are set up in quadrants - the grass billboards, and the speedtree compiled texture.  If the image is divided like this:

Then the bleed is happening from the top/bottom sections between textures, but not on the original texture, only on it as you zoom out... which is telling me that HE is calling the wrong pixel locations for the second set of mipmaps from combined textures.  It also seems to pop up on the left/right side of the Dynamic grass textures sometimes as well.

Thanks, let me know if you need any more information!

Pages: 1 [2]