DDSWriter
所属分类:压缩解压
开发工具:Java
文件大小:12325KB
下载次数:0
上传日期:2021-04-05 10:45:01
上 传 者:
sh-1993
说明: DDSWriter是一个命令行实用程序和java库,用于编写压缩和未压缩的DDS。
(DDSWriter is a command-line utility and java library to write compressed and uncompressed DDS.)
文件列表:
.travis.yml (1126, 2021-04-05)
LICENSE (1053, 2021-04-05)
LicenseGen.sh (507, 2021-04-05)
TODO.md (1113, 2021-04-05)
Tests (0, 2021-04-05)
Tests\build.gradle (426, 2021-04-05)
Tests\src (0, 2021-04-05)
Tests\src\test (0, 2021-04-05)
Tests\src\test\java (0, 2021-04-05)
Tests\src\test\java\tests (0, 2021-04-05)
Tests\src\test\java\tests\InteractiveCLI.java (546, 2021-04-05)
Tests\src\test\java\tests\TestS3TC_and_ATI_lwjgl.java (1311, 2021-04-05)
Tests\src\test\java\tests\TestUtils.java (1600, 2021-04-05)
Tests\src\test\resources (0, 2021-04-05)
Tests\src\test\resources\tests (0, 2021-04-05)
Tests\src\test\resources\tests\red.jpg (591, 2021-04-05)
Tests\src\test\resources\tests\redDXT1.dds (2176, 2021-04-05)
Tests\src\test\resources\tests\test.png (187, 2021-04-05)
Tests\src\test\resources\tests\test_output.dds (4224, 2021-04-05)
Tests\src\test\resources\tests\texture2D.dds (842528, 2021-04-05)
Tests\src\test\resources\tests\texture2D.jpg (159414, 2021-04-05)
Tests\src\test\resources\tests\texture2D_2.png (10735785, 2021-04-05)
Tests\src\test\resources\tests\texture2D_MipMaps.dds (1122992, 2021-04-05)
Tests\src\test\resources\tests\texture2DwithAlpha.png (435485, 2021-04-05)
Tests\src\test\resources\tests\textureCubeMap.dds (25165952, 2021-04-05)
Tests\src\test\resources\tests\textureCubeMap_MipMaps.dds (33554552, 2021-04-05)
build.gradle (1115, 2021-04-05)
build.sh (619, 2021-04-05)
dds_format (0, 2021-04-05)
dds_format\build.gradle (0, 2021-04-05)
dds_format\src (0, 2021-04-05)
dds_format\src\main (0, 2021-04-05)
dds_format\src\main\java (0, 2021-04-05)
dds_format\src\main\java\ddswriter (0, 2021-04-05)
dds_format\src\main\java\ddswriter\DDSOutputStream.java (2646, 2021-04-05)
dds_format\src\main\java\ddswriter\format (0, 2021-04-05)
dds_format\src\main\java\ddswriter\format\DDS_BODY.java (1303, 2021-04-05)
... ...
[![Build Status](https://travis-ci.org/riccardobl/DDSWriter.svg?branch=master)](https://travis-ci.org/riccardobl/DDSWriter)
# DDSWriter
DDSWriter is a command-line utility and java library to write DDS.
It supports extensions with the use of delegates and CLI modules.
A delegate is a class to which is delegated the task to write the header and the body of the DDS, a CLI module is an extension for the CLI interface.
## The Java library
#### Requirements
````gradle
def jme_version = "v3.1"
def jme_group = "com.github.jMonkeyEngine.jmonkeyengine"
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
dependencies {
compile "${jme_group}:jme3-core:${jme_version}"
compile "${jme_group}:jme3-desktop:${jme_version}"
}
````
#### Library
````gradle
def version = "1.0"
repositories {
maven { url 'https://jitpack.io' }
}
dependencies {
compile "com.github.riccardobl.DDSWriter:dds_writer:$version"
}
````
#### Usage
```java
com.jme3.texture.Texture tx=...; // Texture loaded with jmonkey
OutputStream fo=...;
Map options=...; // Options for ddswriter and for the delegates
Collection delegates=...; // List of delegate (needs at least one)
DDSWriter.write(tx,options,delegates,fo);
```
#### Options
```gen-mipmaps``` = ```true```/```false``` - Enable/Disable mipmap generation
```debug``` = ```true```/```false``` - Enable/Disable debug info
```format``` - Output format. (See delegates for available formats)
## The Command line
```
Usage: --in path/file.png --out path/out.dds [options]
Options:
--in : Input file
--out : Output file
--format: Output format. Default: ARGB8 (uncompressed)
--gen-mipmaps: Generate mipmaps
--exit: Exit interactive console
--debug: Show debug informations
Input formats:
jpg,bmp,png,tga,dds
Output formats:
ARGB8,RGB8,RGB565
```
To use one or more delegates in CLI, they must be added to the classpath.
--help will be updated to show informations related to the delegate.
## Delegates
### Generic (uncompressed)
Delegate that provides the following uncompressed formats: *RGB8* *ARGB9* *RGB565*
```ddswriter.delegates.GenericDelegate delegate=new ddswriter.delegates.GenericDelegate();```
#### Gradle depencency
None: included in dds writer
### LWJGL2 S3TC (DXT compression)
Delegate that provides S3tc (DXT) compression, it requires graphical drivers that support such compression and works only in an LWJGL2 context.
This delegate adds the formats *S3TC_DXT1*,*S3TC_DXT2*,*S3TC_DXT5*.
```java
ddswriter.delegates.lwjgl2_s3tc.S3TC_LWJGL2CompressionDelegate delegate=new ddswriter.delegates.lwjgl2_s3tc.S3TC_LWJGL2CompressionDelegate();
```
#### Gradle depencency
```gradle
compile 'com.github.riccardobl.DDSWriter:dds_writer__s3tc_lwjgl2_delegate:$version'
```
### LWJGL2 RGTC (ATI compression)
Delegate that provides RGTC (ATI) compression, it requires graphical drivers that support such compression and works only in an LWJGL2 context.
This delegate adds the formats *`RGTC1*,*RGTC2*.
```java
ddswriter.delegates.lwjgl2_rgtc.RGTC_LWJGL2CompressionDelegate delegate=new ddswriter.delegates.lwjgl2_rgtc.RGTC_LWJGL2CompressionDelegate();
```
#### Gradle depencency
```gradle
compile 'com.github.riccardobl.DDSWriter:dds_writer__rgtc_lwjgl2_delegate:$version'
```
## Usage examples
#### CLI with s3tc delegator
```
java -cp "dds_writer__cli-fat-1.0.jar:dds_writer__s3tc_ati_lwjgl2_delegate-fat-1.0.jar" ddswriter.cli.CLI109 --help
```
## Write a delegate
TODO
## Write a CLI module
TODO
[TODO LIST](TODO.md)
近期下载者:
相关文件:
收藏者: