Compressed textures for FanArt - testing here with XBMC 2009-10-05 (r23431) or newer - Printable Version
+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Help and Support (/forumdisplay.php?fid=33)
+--- Forum: XBMC General Help and Support (/forumdisplay.php?fid=111)
+--- Thread: Compressed textures for FanArt - testing here with XBMC 2009-10-05 (r23431) or newer (/showthread.php?tid=59115)
- avus m3 - 2010-12-03 01:51
I haven't tried this with my MySQL setup yet but from reading everyones responses why is not the default behavior of xbmc?
- turbobuickguy - 2010-12-06 22:45
Are the instructions posted here still valid for XBMCLive RC2? (I have a clean install on a Zotac HD-ID11)
I have tried following them, and when I get to "sudo sh cudatoolkit_2.3_linux_32_ubuntu9.04.run" I receive an error. "Syntax error:redirection unexpected" to be exact. I am executing this command from my /home/user/download directory, using my user account.
Solving this, is probably something incredibly simple, but I am very unfamiliar with linux to be honest... although I can follow directions well enough to get me into trouble . What I did notice, is that the version of linux showing in my putty window is 10.04, I don't know if that means that the 9.04 version of cuda tools can be used or not, or if I get a newer version, if all the remaining steps here will get me the results I want (converting, and using DDS Fan Art). Any help to get me pointed in the right direction is greatly appreciated!!
IceNine Wrote:Well that is a project that took me almost a whole day. Hopefully I can help you out!
- ashlar - 2010-12-12 12:18
Two questions on this:
1) to update an existing library to use this I need to completely clean and rescan?
2) need to configure a new Asrock ion 3D. In this case if I add the relevant advancedsetting entry before scanning the library I should be covered, right?
- Jimmer - 2010-12-12 12:56
You don't need to rescan. Just enable it in advancedsettings.xml
All you need to do is browse through your existing library. First time you do this it will cache your art as a dds file. Next time you browse over something, it will use the dds version. On the downside you will have to browse your whole media collection to bring up your art for each film and make the dds version. It does not automatically created dds art for you... On the upside, you only have to do it once!
- ashlar - 2010-12-12 18:06
Thanks Jimmer for your very quick and clear reply. Much appreciated.
Loading DXT1 compressed texture from DDS file - galvanash - 2010-12-15 05:39
I know xbmc doesn't support xbox anymore... But if there is a developer that might be willing to help out with what is probably a simple problem for those that actually know directx programming...
Any help at all would be greatly appreciated.
- jmarshall - 2010-12-15 06:21
Why not use D3DXCreateTextureFromFile or whatever it is - the XDK contains functions that'll likely be able to load .dds images. Take a look through the XDK documentation.
If you can't do that then it should be basically the same as directx on windows. See TextureDX.cpp in particular.
You probably need to watch the pitch and height requirements, though the total size you're copying seems fine (4bits/pixel for DXT1). At any rate, the debugger will probably at least tell you where it's crashing - one presumes in the memcpy. Check that you're not running off the end of image.GetData() or lr.pBits. lr.Pitch might be somewhat useful for giving you a clue, but don't rely on it - it does funny things on DXTn textures. It might be worth running a for loop (you'll need it to pack it out to power of 2 anyway) - see Texture.cpp for the bit that packs out the texture.
Something else you'll likely run into (when it's not crashing at least) is that xbox may require that DXT1 be swizzled, I'm not sure - you may be able to "just" modify the code in DirectXGraphics.cpp or whatever it is for this (it unswizzles and unpacks DXT1,3,5).
That's about all the help I can give. Have fun!
- galvanash - 2010-12-15 07:51
jmarshall Wrote:Why not use D3DXCreateTextureFromFile or whatever it is - the XDK contains functions that'll likely be able to load .dds images. Take a look through the XDK documentation.
Thank you! I switched to using this call (much simpler). It is working (i.e. the call is successful - returns D3D_OK), and it is no longer crashing... But nothing gets drawn (the fanart background is just white). Oh well, Ill keep trying to figure out whats happening. Thank you very much for the pointers.
EDIT: SUCCESS!!! Thank you very much - you got me on the right track. I had everything right after I switched to using D3DXCreateTextureFromFile (as you suggested), but I wasn't settings the width and height in the CPicture.m_info struct (imageLib does that part in the normal code path - I missed it). I just set the width and height and xbmc started displaying the DXT1 texture. Yay! Now I just got to test and test and test....
- acbeef - 2010-12-16 16:45
Just a quick question ... I didnt see it posted
Does the dds conversion happen on cutom backgrounds for skins or do you have to convert those images manually
Ie: conditional weather folder, movies , tvshows...etc
- ashlar - 2010-12-19 16:02
acbeef Wrote:Just a quick question ... I didnt see it posted+1 on this question. Is it worth doing it?