Skip to content
This repository has been archived by the owner on Dec 31, 2020. It is now read-only.

System.AccessViolationException compressing texture, and c# port #272

Open
vpenades opened this issue Dec 11, 2017 · 3 comments
Open

System.AccessViolationException compressing texture, and c# port #272

vpenades opened this issue Dec 11, 2017 · 3 comments

Comments

@vpenades
Copy link

Hi

I've been having exception issues with NVTT used in monogame when processing textures, After some discussions with monogame maintainers, they expressed desire to remove NVTT in favour of a pure c# implementation.

I did a c# port of the original LibSquish here , and I'm in the process of replacing the NVTT method calls to LibSquish calls.

My questions are these:

In monogame code, they set AlphaMode to PreMultiplied
when the texture format is not Dxt1. What SetAlphaMode does? it tells the library to premultiply the colors with alpha? or it is just to tell the library that the input bitmap has already been alpha-premultiplied?

I've found your repository after porting LibSquish, after reviewing nvidia-texture-tools code, I've found you've improved cluster block compression. Would you agree to let me port your code to c# too? My c# port also uses a MIT license.

let me know about it

@castano
Copy link
Owner

castano commented Dec 11, 2017 via email

@vpenades
Copy link
Author

Thanks

Certainly, NVTT seems to cover a lot more than just encoding Dxt blocks, which is the only part I'm interested in.

Could it be possible for you to tell me which the minimal set of files related to block compression?

Upon initial review, it seems to me the code is in CompressorDXT1 and CompressorDXT5_RGBM , should I assume most of the actual code is there? and... is that code the one used for maximum quality?

I understand that QuickCompressDXT is a path for fast, low quality compression...

@castano
Copy link
Owner

castano commented Dec 14, 2017 via email

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants