<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>DirectXTex texture processing library</title><link>http://directxtex.codeplex.com/project/feeds/rss</link><description>DirectXTex is a shared source library for doing Direct3D texture processing and image I&amp;#47;O.</description><item><title>Commented Task: Volume map generation support for MIRROR vs. CLAMP, LINEAR, and CUBIC [642]</title><link>http://directxtex.codeplex.com/workitem/642</link><description>The current implementation of GenerateMipmaps3D&amp;#40;&amp;#41; only implements POINT and FANT &amp;#40;aka box for down-sizing&amp;#41; filtering. It needs new filters written for LINEAR and CUBIC which should implement clamp vs. mirror &amp;#40;wrap-modes are not meaningful settings for point&amp;#47;box filtering&amp;#41;.&lt;br /&gt;&amp;#160;&lt;br /&gt;WIC filtering can&amp;#39;t be used because no concept of volume maps which must be merged together for proper mipchains.&lt;br /&gt;Comments: ** Comment from web user: walbourn ** &lt;p&gt;See related workitem [930](https://directxtex.codeplex.com/workitem/930)&lt;/p&gt;</description><author>walbourn</author><pubDate>Mon, 20 May 2013 21:16:45 GMT</pubDate><guid isPermaLink="false">Commented Task: Volume map generation support for MIRROR vs. CLAMP, LINEAR, and CUBIC [642] 20130520091645P</guid></item><item><title>Commented Task: Support for MIRROR/WRAP vs. CLAMP filtering for mipmap generation [641]</title><link>http://directxtex.codeplex.com/workitem/641</link><description>DirectXTex uses WIC&amp;#39;s IWICBitmapScaler object to resize images and to generate mipmap chains. WIC only supports &amp;#34;Clamp&amp;#34; filtering modes, so this doesn&amp;#39;t always result in a properly tileable texture.&lt;br /&gt;&amp;#160;&lt;br /&gt;This would add TEX_FILTER_FLAGS for TEX_FILTER_MIRROR_U, TEX_FILTER_MIRROR_V, TEX_FILTER_MIRROR_W, TEX_FILTER_MIRROR to be supported by GenerateMipmaps&amp;#91;3D&amp;#93;&amp;#40;&amp;#41;.&lt;br /&gt;Comments: ** Comment from web user: walbourn ** &lt;p&gt;See related workitem [930](https://directxtex.codeplex.com/workitem/930)&lt;/p&gt;</description><author>walbourn</author><pubDate>Mon, 20 May 2013 21:16:43 GMT</pubDate><guid isPermaLink="false">Commented Task: Support for MIRROR/WRAP vs. CLAMP filtering for mipmap generation [641] 20130520091643P</guid></item><item><title>New Post: SRGB support</title><link>http://directxtex.codeplex.com/discussions/444260</link><description>&lt;div style="line-height: normal;"&gt;This discussion has been copied to a work item. Click &lt;a href="https://directxtex.codeplex.com/workitem/930" rel="nofollow"&gt;here&lt;/a&gt; to go to the work item and continue the discussion.&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Mon, 20 May 2013 21:16:09 GMT</pubDate><guid isPermaLink="false">New Post: SRGB support 20130520091609P</guid></item><item><title>Created Unassigned: sRGB "gamma correct" filtering for mipmaps [930]</title><link>http://directxtex.codeplex.com/workitem/930</link><description>The current implementation of 2D mipmap generation relies on WIC&amp;#39;s filtering implementation. This currently supports only 2D pointer, box, and linear, and cubic filtering using &amp;#34;CLAMP&amp;#34; semantics.&lt;br /&gt;&lt;br /&gt;The 3D mipmap generation does not use WIC and currently only supports point, box filtering.&lt;br /&gt;&lt;br /&gt;There are already open work items to implement custom filtering options for &amp;#91;2D filtering&amp;#93;&amp;#40;https&amp;#58;&amp;#47;&amp;#47;directxtex.codeplex.com&amp;#47;workitem&amp;#47;641&amp;#41; to support &amp;#34;WRAP&amp;#47;MIRROR&amp;#34; semantics as well as triangle filtering, as well as &amp;#91;3D filtering&amp;#93;&amp;#40;https&amp;#58;&amp;#47;&amp;#47;directxtex.codeplex.com&amp;#47;workitem&amp;#47;642&amp;#41; to support linear, cubic, and triangle filtering.&lt;br /&gt;&lt;br /&gt;This work item is to support &amp;#34;gamma correct&amp;#34; filtering for all 2D &amp;#39;custom&amp;#39; filtering and all 3D filtering cases.&lt;br /&gt;</description><author>walbourn</author><pubDate>Mon, 20 May 2013 21:16:08 GMT</pubDate><guid isPermaLink="false">Created Unassigned: sRGB "gamma correct" filtering for mipmaps [930] 20130520091608P</guid></item><item><title>New Post: SRGB support</title><link>http://directxtex.codeplex.com/discussions/444260</link><description>&lt;div style="line-height: normal;"&gt;The sRGB options currently just do SRGB color space conversion for Convert. This was previously not working correctly in all cases due to WIC not handling colorspace quite right.&lt;br /&gt;
&lt;br /&gt;
The library is currently using WIC to do mipmap generation and resizing, which does not do &amp;quot;gamma correct&amp;quot; filtering. I have an open work item to write my own custom filters which will be &amp;quot;gamma correct&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
See comments in Codeplex work item &lt;a href="https://directxtex.codeplex.com/workitem/641" rel="nofollow"&gt;641&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Mon, 20 May 2013 20:44:14 GMT</pubDate><guid isPermaLink="false">New Post: SRGB support 20130520084414P</guid></item><item><title>New Post: SRGB support</title><link>http://directxtex.codeplex.com/discussions/444260</link><description>&lt;div style="line-height: normal;"&gt;Hello,&lt;br /&gt;
&lt;br /&gt;
I'm playing with texconv and can't figure out how the srgbi/srgbo/srgbe options works.&lt;br /&gt;
I tried to convert from an R8G8B8A8 png file to a BC1_UNORM_SRGB DDS. In this case, mipmap generation should be done with gamma correction. But the srgb options seems to have no effect.&lt;br /&gt;
&lt;br /&gt;
I've also tested to convert the same file to BC1_UNORM using -srgbi indicating that the orignal image is in SRGB space, and should be de-gamma before mipmap generation and compression. Once again the option seems to have no effect. &lt;br /&gt;
&lt;br /&gt;
I took a look to the texconv source code, and it seems that srgb options are only used in the convert stage (ligne 819), and since my output format is compressed, the code is never called.&lt;br /&gt;
&lt;br /&gt;
Am I missing something, or srgb support is not working ?&lt;br /&gt;
&lt;br /&gt;
Chris &lt;br /&gt;
&lt;/div&gt;</description><author>doomtr666</author><pubDate>Mon, 20 May 2013 09:08:21 GMT</pubDate><guid isPermaLink="false">New Post: SRGB support 20130520090821A</guid></item><item><title>New Post: Support for D3DFMT_A8L8</title><link>https://directxtex.codeplex.com/discussions/443181</link><description>&lt;div style="line-height: normal;"&gt;Great, thanks for following up on this!&lt;br /&gt;
&lt;br /&gt;
— Mauricio&lt;br /&gt;
&lt;/div&gt;</description><author>MVives</author><pubDate>Thu, 16 May 2013 06:09:41 GMT</pubDate><guid isPermaLink="false">New Post: Support for D3DFMT_A8L8 20130516060941A</guid></item><item><title>Edited Feature: Support for expanding L8, L16, A8L8 on load from .DDS [927]</title><link>http://directxtex.codeplex.com/workitem/927</link><description>DirectXTex currently assumes that .DDS files for DDSPF_L8, DDSPF_L16, and DDSPF_A8L8  will be &amp;#39;non-expanding&amp;#39; and rely on the shader to handle replication of rgb or moving alpha.  This is also what DDSTextureLoader does.&lt;br /&gt;&lt;br /&gt;DDSPF_L8 -&amp;#62; DXGI_FORMAT_R8_UNORM&lt;br /&gt;DDSPF_L16 -&amp;#62; DXGI_FORMAT_R16_UNORM&lt;br /&gt;DDSPF_A8L8 -&amp;#62; DXGI_FORMAT_R8G8_UNORM&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This work item is a request to actually expand these so that no shader changes are required.&lt;br /&gt;&lt;br /&gt;DDSPF_L8 -&amp;#62; DXGI_FORMAT_R8G8B8A8_UNORM &amp;#40;r,g,b replicated&amp;#41;&lt;br /&gt;DDSPF_L16 -&amp;#62; DXGI_FORMAT_R16G16B16A16_UNORM &amp;#40;r,b,g replicated&amp;#41;&lt;br /&gt;DDSPF_A8L8 -&amp;#62; DXGI_FORMAT_R8G8B8A8_UNORM &amp;#40;r,g,b replicated&amp;#41;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This will be controlled by a new flag DDS_FLAGS_EXPAND_LUMINANCE&lt;br /&gt;&lt;br /&gt;&amp;#62; Note DDS_FLAGS_NO_LEGACY_EXPANSION conflicts with DDS_FLAGS_EXPAND_LUMINANCE, so specifying both with result in E_INVALIDARG.&lt;br /&gt;&lt;br /&gt;Reference&amp;#58; &amp;#91;Legacy Formats&amp;#93;&amp;#40;http&amp;#58;&amp;#47;&amp;#47;msdn.microsoft.com&amp;#47;en-us&amp;#47;library&amp;#47;windows&amp;#47;desktop&amp;#47;cc308051&amp;#40;v&amp;#61;vs.85&amp;#41;.aspx&amp;#41;&lt;br /&gt;</description><author>walbourn</author><pubDate>Wed, 15 May 2013 19:41:48 GMT</pubDate><guid isPermaLink="false">Edited Feature: Support for expanding L8, L16, A8L8 on load from .DDS [927] 20130515074148P</guid></item><item><title>New Post: Support for D3DFMT_A8L8</title><link>http://directxtex.codeplex.com/discussions/443181</link><description>&lt;div style="line-height: normal;"&gt;This discussion has been copied to a work item. Click &lt;a href="https://directxtex.codeplex.com/workitem/927" rel="nofollow"&gt;here&lt;/a&gt; to go to the work item and continue the discussion.&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Wed, 15 May 2013 19:40:56 GMT</pubDate><guid isPermaLink="false">New Post: Support for D3DFMT_A8L8 20130515074056P</guid></item><item><title>Created Feature: Support for expanding L8, L16, A8L8 on load from .DDS [927]</title><link>http://directxtex.codeplex.com/workitem/927</link><description>DirectXTex currently assumes that .DDS files for DDSPF_L8, DDSPF_L16, and DDSPF_A8L8  will be &amp;#39;non-expanding&amp;#39; and rely on the shader to handle replication of rgb or moving alpha.  This is also what DDSTextureLoader does.&lt;br /&gt;&lt;br /&gt;DDSPF_L8 -&amp;#62; DXGI_FORMAT_R8_UNORM&lt;br /&gt;DDSPF_L16 -&amp;#62; DXGI_FORMAT_R16_UNORM&lt;br /&gt;DDSPF_A8L8 -&amp;#62; DXGI_FORMAT_R8G8_UNORM&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This work item is a request to actually expand these so that no shader changes are required.&lt;br /&gt;&lt;br /&gt;DDSPF_L8 -&amp;#62; DXGI_FORMAT_R8G8B8A8_UNORM &amp;#40;r,g,b replicated&amp;#41;&lt;br /&gt;DDSPF_L16 -&amp;#62; DXGI_FORMAT_R16G16B16A16_UNORM &amp;#40;r,b,g replicated&amp;#41;&lt;br /&gt;DDSPF_A8L8 -&amp;#62; DXGI_FORMAT_R8G8B8A8_UNORM &amp;#40;r,g,b replicated&amp;#41;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This will be controlled by a new flag DDS_FLAGS_EXPAND_LUMINANCE&lt;br /&gt;&lt;br /&gt;&amp;#62; Note DDS_FLAGS_NO_LEGACY_EXPANSION conflicts with DDS_FLAGS_EXPAND_LUMINANCE, so specifying both with result in E_INVALIDARG.&lt;br /&gt;&lt;br /&gt;Reference&amp;#58; &amp;#91;Legacy Formats&amp;#93;&amp;#40;http&amp;#58;&amp;#47;&amp;#47;msdn.microsoft.com&amp;#47;en-us&amp;#47;library&amp;#47;windows&amp;#47;desktop&amp;#47;cc308051&amp;#40;v&amp;#61;vs.85&amp;#41;.aspx&amp;#41;&lt;br /&gt;</description><author>walbourn</author><pubDate>Wed, 15 May 2013 19:40:52 GMT</pubDate><guid isPermaLink="false">Created Feature: Support for expanding L8, L16, A8L8 on load from .DDS [927] 20130515074052P</guid></item><item><title>New Post: Support for D3DFMT_A8L8</title><link>http://directxtex.codeplex.com/discussions/443181</link><description>&lt;div style="line-height: normal;"&gt;I actually wrote that table with a co-worker, so some of the mappings are already captured. The key issue is that you want no conversions in the shader, which means you'd rather have the texture get 'bigger' to avoid this.&lt;br /&gt;
&lt;br /&gt;
There are a number of &amp;quot;Not Available&amp;quot; options that don't really come up in DDS files (Depth, VB, IB) or simply don't apply to Direct3D 10.x/11.x (bumpmap). The three I listed above really do seem to be the only cases where this applies.&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Wed, 15 May 2013 19:31:50 GMT</pubDate><guid isPermaLink="false">New Post: Support for D3DFMT_A8L8 20130515073150P</guid></item><item><title>New Post: Support for D3DFMT_A8L8</title><link>http://directxtex.codeplex.com/discussions/443181</link><description>&lt;div style="line-height: normal;"&gt;Note: The DDSTextureLoader uses the same mappings because it does no conversions or expansions at all...&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Fri, 10 May 2013 00:46:57 GMT</pubDate><guid isPermaLink="false">New Post: Support for D3DFMT_A8L8 20130510124657A</guid></item><item><title>New Post: Support for D3DFMT_A8L8</title><link>http://directxtex.codeplex.com/discussions/443181</link><description>&lt;div style="line-height: normal;"&gt;I guess I wouldn't consider these as expanding or not.  What is more important (at least for our purposes) is that alpha from the source ends up in alpha in the destination, and that luminance is replicated to RGB if expansion is required.  In this case, DX11 simply doesn't support A8L8, and while R8G8 can store the data, the result is interpreted differently by default.&lt;br /&gt;
&lt;br /&gt;
In other words, if I have a legacy DDS file (like A8L8) and I load it with DirectXTex to a supported format, and then save it again to DDS, will the two DDS files look the same in a DDS viewer?  With the existing DirectXTex code, a grayscale A8L8 DDS file turns into a red/green R8G8 file.&lt;br /&gt;
&lt;br /&gt;
That being said, more options wouldn't hurt here.  If I were trying to be totally complete, I would use the following list...&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://msdn.microsoft.com/en-us/library/windows/desktop/cc308051(v=vs.85).aspx" rel="nofollow"&gt;http://msdn.microsoft.com/en-us/library/windows/desktop/cc308051(v=vs.85).aspx&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
... and make sure each &amp;quot;Not Available&amp;quot; entry has a reasonable story.&lt;br /&gt;
&lt;br /&gt;
— Mauricio&lt;br /&gt;
&lt;/div&gt;</description><author>MVives</author><pubDate>Fri, 10 May 2013 00:13:41 GMT</pubDate><guid isPermaLink="false">New Post: Support for D3DFMT_A8L8 20130510121341A</guid></item><item><title>New Post: Support for D3DFMT_A8L8</title><link>http://directxtex.codeplex.com/discussions/443181</link><description>&lt;div style="line-height: normal;"&gt;So far I would think:&lt;br /&gt;
&lt;br /&gt;
'standard' (non-expanding)&lt;br /&gt;
&lt;br /&gt;
DDSPF_L8 -&amp;gt; DXGI_FORMAT_R8_UNORM&lt;br /&gt;
DDSPF_L16 -&amp;gt; DXGI_FORMAT_R16_UNORM&lt;br /&gt;
DDSPF_A8L8 -&amp;gt; DXGI_FORMAT_R8G8_UNORM&lt;br /&gt;
&lt;br /&gt;
'alternative' (expanding)&lt;br /&gt;
&lt;br /&gt;
DDSPF_L8 -&amp;gt; DXGI_FORMAT_R8G8B8A8_UNORM (r,g,b replicated)&lt;br /&gt;
DDSPF_L16 -&amp;gt; DXGI_FORMAT_R16G16B16A16_UNORM (r,b,g replicated)&lt;br /&gt;
DDSPF_A8L8 -&amp;gt; DXGI_FORMAT_R8G8B8A8_UNORM (r,g,b replicated)&lt;br /&gt;
&lt;br /&gt;
Are there others?&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Thu, 09 May 2013 23:49:03 GMT</pubDate><guid isPermaLink="false">New Post: Support for D3DFMT_A8L8 20130509114903P</guid></item><item><title>New Post: Support for D3DFMT_A8L8</title><link>http://directxtex.codeplex.com/discussions/443181</link><description>&lt;div style="line-height: normal;"&gt;The general assumption is that you are trying to preserve the 2-channel nature of the data. I could add an optional flag to the DDS loader to convert like this. Can you come up with a complete list of 'alternative' conversions and post it here?&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Thu, 09 May 2013 23:45:08 GMT</pubDate><guid isPermaLink="false">New Post: Support for D3DFMT_A8L8 20130509114508P</guid></item><item><title>New Post: DDSTextureLoader and auto-gen mipmaps?</title><link>http://directxtex.codeplex.com/discussions/442983</link><description>&lt;div style="line-height: normal;"&gt;&lt;a href="http://directxtex.codeplex.com" rel="nofollow"&gt;DirectXTex&lt;/a&gt; is a reasonable option to get full-featured support for scenarios like this, legacy .DDS file formats for conversion (say 24bpp which fail with DDSTextureLoader), general decompression and mip-gen.&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Thu, 09 May 2013 23:41:16 GMT</pubDate><guid isPermaLink="false">New Post: DDSTextureLoader and auto-gen mipmaps? 20130509114116P</guid></item><item><title>New Post: DDSTextureLoader and auto-gen mipmaps?</title><link>http://directxtex.codeplex.com/discussions/442983</link><description>&lt;div style="line-height: normal;"&gt;Deathicon,&lt;br /&gt;
&lt;br /&gt;
I needed a relatively seamless replacement for D3DX11CreateTextureFromFile(), which does such mipmap generation, so I ended up doing something similar to you.  I am also in a position where the texture inputs are not necessarily artist-generated, and could require a lot of processing to use.&lt;br /&gt;
&lt;br /&gt;
— Mauricio&lt;br /&gt;
&lt;/div&gt;</description><author>MVives</author><pubDate>Thu, 09 May 2013 23:05:14 GMT</pubDate><guid isPermaLink="false">New Post: DDSTextureLoader and auto-gen mipmaps? 20130509110514P</guid></item><item><title>New Post: Support for D3DFMT_A8L8</title><link>http://directxtex.codeplex.com/discussions/443181</link><description>&lt;div style="line-height: normal;"&gt;I noticed that the DDS loader converts D3DFMT_A8L8 files to DXGI_FORMAT_R8G8_UNORM.  This will cause the alpha to be lost, and instead be used as green.  I made some changes to instead convert it to DXGI_FORMAT_R8G8B8A8_UNORM.  This does involve expansion, but at least the alpha is properly preserved, without requiring shader changes.&lt;br /&gt;
&lt;br /&gt;
I am mentioning this here in case anyone encounters the same issue.  The changes are in DirectXTexDDS.cpp.  Let me know if you are interested in this.&lt;br /&gt;
&lt;br /&gt;
— Mauricio&lt;br /&gt;
&lt;/div&gt;</description><author>MVives</author><pubDate>Thu, 09 May 2013 23:01:24 GMT</pubDate><guid isPermaLink="false">New Post: Support for D3DFMT_A8L8 20130509110124P</guid></item><item><title>New Post: DDSTextureLoader and auto-gen mipmaps?</title><link>http://directxtex.codeplex.com/discussions/442983</link><description>&lt;div style="line-height: normal;"&gt;I totally agree with out regarding the fact that if they didn't export mipmaps, it shouldn't be mipmapped in the first place. But it turns out that in my application I use the mipmaps to control a blurring effect on reflections or image based lighting maps, which can be controlled by the user, and also animated. Because of that, I still need my mipmaps regardless if they were exported in the DDS file or not.&lt;br /&gt;
&lt;br /&gt;
In the light of this, do you still believe it doesn't have its place in the DDSTextureLoader? Or perhaps we should tell the users that if they use DDS files, they need to bake the mipmaps themselves? Its just a lot less elegant to not be able to generate them ourselves.&lt;br /&gt;
&lt;/div&gt;</description><author>Deathicon</author><pubDate>Thu, 09 May 2013 15:02:28 GMT</pubDate><guid isPermaLink="false">New Post: DDSTextureLoader and auto-gen mipmaps? 20130509030228P</guid></item><item><title>New Post: DDSTextureLoader and auto-gen mipmaps?</title><link>http://directxtex.codeplex.com/discussions/442983</link><description>&lt;div style="line-height: normal;"&gt;The general design of DDSTextureLoader is assuming you have properly 'cooked' all the texture options into it them most efficiency for a DDS, and is very light-weight. The WICTextureLoader is already having to do a fairly heavy-weight conversion, so it's pretty easy to support auto-gen mips. Also, auto-gen mips is not supported on any device for DXT/BC compressed data which is the most common usage case for a .DDS file over a traditional image bitmap format.&lt;br /&gt;
&lt;br /&gt;
Personally, I would assume that if someone loaded a DDS file without mips, it wasn't intended to be mipmapped in the first place, but I don't know enough about your scenario to be sure.&lt;br /&gt;
&lt;br /&gt;
Another alternative is to use &lt;a href="https://directxtex.codeplex.com/" rel="nofollow"&gt;DirectXTex&lt;/a&gt; and so a software-based mipmap generation on a DDS if needed which can also do software-based decompression of DXT/BC data.&lt;br /&gt;
&lt;/div&gt;</description><author>walbourn</author><pubDate>Wed, 08 May 2013 18:14:10 GMT</pubDate><guid isPermaLink="false">New Post: DDSTextureLoader and auto-gen mipmaps? 20130508061410P</guid></item></channel></rss>