flutter_dds 0.1.1
flutter_dds: ^0.1.1 copied to clipboard
Ein Flutter-Plugin zum Anzeigen, Bearbeiten und Exportieren von DirectDraw Surface (DDS) Texturdateien. Unterstützt DXT1 und DXT5 Formate sowie verschiedene Farbmodi.
Flutter DDS Plugin #
Ein Flutter-Plugin zum Anzeigen, Bearbeiten und Exportieren von DirectDraw Surface (DDS) Texturdateien. Ideal für Entwickler von Spielen, 3D-Anwendungen und Tools, die mit DDS-Texturen arbeiten möchten.
Features #
- DDS-Formate: Unterstützung für DXT1 und DXT5 Kompressionsformate
- Farbmodus-Konvertierung: Verschiedene Farbmodi (BGRA → RGBA, RGBA → RGBA, RGBA → BGRA)
- Export-Funktionen: Speichern als PNG oder JPG
- Interaktive Anzeige: Zoom und Pan im Bildbetrachter
- Einfache Integration: Sowohl als kompletter Viewer als auch als einfache Anzeigekomponente verwendbar
Vorschau #
Erste Schritte #
Installation #
Fügen Sie flutter_dds zu Ihrer pubspec.yaml-Datei hinzu:
dependencies:
flutter_dds: ^0.1.0
Und führen Sie dann aus:
flutter pub get
Voraussetzungen #
- Flutter SDK 3.0.0 oder höher
- Keine native Konfiguration notwendig - funktioniert auf allen Plattformen, auf denen Flutter unterstützt wird!
Verwendung #
Vollständiger DDS-Viewer #
Verwenden Sie den integrierten Viewer mit allen Funktionen:
import 'package:flutter/material.dart';
import 'package:flutter_dds/flutter_dds.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: const Text('DDS Viewer')),
body: const DDSViewerWidget(),
),
);
}
}
Einfaches DDS-Anzeige-Widget #
Verwenden Sie das DDSImageView-Widget, um eine DDS-Datei direkt anzuzeigen:
DDSImageView(
ddsPath: '/pfad/zur/datei.dds',
colorMode: DDSColorMode.rgba2rgba, // Optional: Standard ist rgba2rgba
)
Farbmodi anpassen #
Wählen Sie zwischen verschiedenen Farbmodi:
// Verwende BGRA zu RGBA Konvertierung (z.B. für DirectX-Texturen)
DDSImageView(
ddsPath: '/pfad/zur/datei.dds',
colorMode: DDSColorMode.bgra2rgba,
)
// Keine Konvertierung
DDSImageView(
ddsPath: '/pfad/zur/datei.dds',
colorMode: DDSColorMode.rgba2rgba,
)
// RGBA zu BGRA Konvertierung
DDSImageView(
ddsPath: '/pfad/zur/datei.dds',
colorMode: DDSColorMode.rgba2bgra,
)
Technische Details #
Unterstützte Formate #
- DXT1: Mit und ohne Alpha-Kanal (1-Bit-Alpha)
- DXT5: Mit vollem 8-Bit-Alpha-Kanal
Geplante Funktionen #
- Weitere DDS-Formate (BC7, uncompressed RGBA/BGRA, etc.)
- Mipmap-Auswahl und Anzeige
- Cubemap-Unterstützung
- Einfache Bildbearbeitung
Beispiele #
Eine vollständige Beispiel-App finden Sie im /example
-Verzeichnis. Die App demonstriert:
- Verwendung des vollständigen DDS-Viewers
- Direkte Integration des DDSImageView-Widgets
- Verschiedene Farbmodi und deren Auswirkungen
- Export-Funktionen
Beitragen #
Beiträge sind willkommen! Wenn Sie einen Fehler finden oder eine Funktion hinzufügen möchten, erstellen Sie bitte einen Issue oder Pull Request auf GitHub.
Lizenz #
Dieses Projekt steht unter der MIT-Lizenz - siehe die LICENSE-Datei für Details.