View Issue Details

IDProjectCategoryView StatusLast Update
0000680DarkRadiantMap Editingpublic03.04.2009 10:26
ReporterJdude Assigned Togreebo  
Status closedResolutionfixed 
Product Version0.9.6 
Target Version0.9.9Fixed in Version0.9.9 
Summary0000680: Texture alignment method:
DescriptionCopied directly from the forum where it was discussed:

We talked about this before but never came to a conclusion. 90 degree turns in brushes don't have the proper alignment when you copy and paste the texture plus it's values from any one face onto another.

I had an idea for a tool which would take and area of the texture on a face of 5x5 pixels on the edge of a brush, perhaps larger, and take the selected face and look for a set of 5x5 pixels which contain the same RGB values as the chosen 5x5 texture, then it would automatically move the selected face so that the 5x5 which are the same are moved to the edge so that it matches the 5x5 on the chosen face, then it would move it +5 pixels over thus perfectly aligning the texture. If it cannot find the same 5x5 values than it would try a horizontal flip, then a vertical flip in addition, then minus the horizontal flip. With each flip trying to find the same 5x5 RGB values.

This would free up a ton of time for mappers trying to align brushes around corners!

While I get your idea, the method of examining the actual pixels of a texture can't be employed in DarkRadiant, as the image data is just pushed into the graphics driver. The only thing available are the texture coordinates (U/V) which can be compared to each other. This would be more practical anyway.

I wrote a similar algorithm for patches ("Stitch Patch Textures"), and I think I can pull this off for brushes too. You can push that request to the tracker, but (you know what I'm going to say) don't expect it very soon.
TagsNo tags attached.


There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
16.05.2008 20:58 Jdude New Issue
19.05.2008 06:15 greebo Status new => acknowledged
09.12.2008 15:32 greebo Target Version => 0.9.9
28.12.2008 21:25 greebo Status acknowledged => assigned
28.12.2008 21:25 greebo Assigned To => greebo
28.12.2008 21:26 greebo Status assigned => resolved
28.12.2008 21:26 greebo Fixed in Version => 0.9.9
28.12.2008 21:26 greebo Resolution open => fixed
28.12.2008 21:26 greebo Projection none => minor fix
28.12.2008 21:26 greebo ETA none => < 1 day
28.12.2008 21:26 greebo Build => 3985
03.04.2009 10:26 greebo Status resolved => closed