Forum Wiki Galerie Kontakt Wie man Fragen richtig stellt. Tutorial Forum
Zurück   GIMP-Forum 3.0 > Arbeiten mit Gimp > GIMP-Ressourcen > Skripte

Hinweise
Alt 08.10.2015, 12:04   #1
dibade
Neuer Benutzer
 
Registriert seit: 08.10.2015
Beiträge: 1
Standard Bilder einfärben per Skript Fu

Hallo,

ich habe vor für ein sehr altes Spiel eine Modifikation vorzunehmen. Und zwar möchte ich ein bewegtes Objekt von rot nach blau umfärben. Das Spiel ist so alt, dass noch keine 3D-Modelle benutzt wurden, sondern SpriteObjekte. Das heißt wiederum, dass das Objekt in 360 Einzelbildern vorliegt, die alle einzeln eingefärbt werden müssten.

Da das eine recht mühselige Arbeit wäre, habe ich beschlossen, das Ganze zu automatisieren und mich dafür in Skript Fu einzuarbeiten.

Aufgrund der schier unendlichen Möglichkeiten, habe ich gerade Probleme dabei herauszufinden, welche Befehle die Teilaufgaben bewirken, die nötig sind.


In etwa so habe ich mir das Skript vorgestellt:

Code:
for i=0:359
 - num = Zahl2String(i)
 - Dateiname=Erzeuge String( '<Pfad/Header>', '_','num','.bmp')
 - Öffne Dateiname.bmp
 - Erzeuge neue Ebene über dem Bild (Farbton)
 - Fülle neue Ebene mit Farbe RGB(0,75,150)
 - Ebene nach unten zusammenführen
 - Fülle Koordinaten (1,1) mit Farbe RGB(0,255,255)
 - Dateiname_neu= Erzeuge String( '<Pfad_neu/Header_neu>', '_','num','.bmp')
 - Speichere Bild als Dateiname_neu.bmp
 - Schließe Dateiname_neu
end
Die ersten paar Schritte dienen der Dateiidentifikation. Danach wird eine neue Ebene erzeugt, die durch ihre Eigenschaften dafür sorgt, dass die ursprünglichen Farben "Überschrieben" werden. Nachdem die Ebenen zusammengeführt wurden, wird der (einfarbige Hintergrund) noch in Cyan umgefärbt. Dies dient später dem Modifikations-Editor als Kennfarbe, die im Spiel dann transparent gesetzt wird. Anschließend soll die Datei unter einem neuen Namen gespeichert werden.

Bisher habe ich folgendes Skript-Grundgerüst zusammengestellt:

Code:
(script-fu-register                  
	"script-fu-soa-item-einfärben"                   
	"Item einfärben"                   
	"Lädt eine .bmp. färbt den Inhalt um\                    
	und speichert sie unter anderem Namen"                   
	""   
	"Copyright (c) 2015 GPL."	
	"Oktober 2015"                   
	"RGB" 
	
SF-COLOR       "Hintergrundfarbe" 	'(0 255 255) 
SF-COLOR       "Farbton" 			'(0  75 150) 

)

(script-fu-menu-register 
	"script-fu-soa-item-einfärben" 
	"<Toolbox>/Xtns/Skript-Fu/soa"
)

(define 
	(script-fu-soa-item-einfärben 

	) 
	;hier kommt alles rein was die Funktion tun soll 
	(let*
		(
			(dasBild
				(car 
					(file-bmp-load 0 "C:\Users\dibad_000\Desktop\Sachen\beispielbild.bmp" "") 
				) 
			) 
			(dieBildbreite 
				(car
					(gimp-image-width dasBild)
				)	
			) 
			(dieBildhöhe 
				(car
					(gimp-image-height dasBild)
				)	
			) 	
			(dieEbeneFarbton 
				(car 
					(gimp-layer-new dasBild dieBildbreite dieBildhoehe RGB-IMAGE "ebene farbton" 100 COLOR-MODE) 
				) 
			)
		) 
		(gimp-edit-bucket-fill dieEbeneFarbton 0 0 100 255  1 1 
		(gimp-image-insert-layer dasBild dieEbeneFarbton 0 -1) 
	)
)
Nun habe ich einige Probleme:

Ich habe ein Fill-Tool gefunden, doch wie kann man diesem mitteilen, mit welcher Farbe gefüllt werden soll? Gibt es vielleicht auch einen eleganteren Weg eine ganze Ebene mit einer Farbe auszufüllen?

Ich habe gelesen, dass in Skript Fu keine Schleifen möglich sind. Gibt es vielleicht einen anderen Weg, wie viele Dateien hintereinander bearbeitet werden können?
dibade ist offline   Mit Zitat antworten
 

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Skript zum automatischen Zusammenfügen zweier Bilder kinddeszorns Skripte 1 16.05.2010 10:45


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:30 Uhr.


Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.