GLBasic forum

Other languages => GLBasic - de => Topic started by: WPShadow on 2010-Aug-30

Title: Transparenzfrage
Post by: WPShadow on 2010-Aug-30
Hallo,

ich frage mal ganz banal:

Ist es möglich einen z.B. Polyvektor zu machen, deren obere Hälfte Transparent ist und dessen untere Hälfte nicht? Also einen Alpha - Wert der von unten nach oben steigt/fällt?

Ist sowas technisch überhaupt realisierbar?

LG

W.
Title: Re: Transparenzfrage
Post by: backslider on 2010-Aug-30
Hi,

Also technisch möglich ist es mit Sicherheit, siehe z.B. Photoshop Farbverlauf von Farbe nach Transparenz^^
Warscheinlich meinst du aber die "Technik" von GLBasic oder?

Ich probier das mal eben aus, obs geht *g*.
Danach editiere ich den Post hier.

Gruß
Title: Re: Transparenzfrage
Post by: WPShadow on 2010-Aug-30
Ganz genau! Es war tatsächlich GLBasic gemeint!

http://www.tektorum.de/attachments/praesentation-darstellung/135d1093014284-cinema-4d-transparenter-verlauf-transparenz2.jpg (http://www.tektorum.de/attachments/praesentation-darstellung/135d1093014284-cinema-4d-transparenter-verlauf-transparenz2.jpg)

Gemeint ist es ca. so wie in dem Screenshot

Title: Re: Transparenzfrage
Post by: backslider on 2010-Aug-30
Probier mal hiermit n bisschen rum!
Ist noch ein kleiner Bug drin, aber der sollte zu beheben sein. Wie es sich allerdings bei mehreren Objekten dieser Art auf die performance auswirkt, musst du ausprobieren :)
Kannst ja nochmal Meldung geben  :good:

Code (glbasic) Select

WHILE TRUE

drawIt(100,100,100,1, RGB(255,255,255))


SHOWSCREEN
WEND

FUNCTION drawIt: x, y, width, steps, col
FOR i=0 TO 100 STEP steps
ALPHAMODE i/100
DRAWRECT x,i+y,width,steps,col
NEXT
ENDFUNCTION
Title: Re: Transparenzfrage
Post by: WPShadow on 2010-Aug-30
Auf die Idee bin ich ja auch schon gekommen, aber bei 10 oder 15 Grafiken am Bildschirm wird das von der Performance her schon ziemlich eng!

Ich dachte da so an Interface und ähnliches...  :P

Mein Gedanke war, ob es sowas in der Art gibt wie:

Alphamode 0
Polyvector
Alphamode 0.5
Polyvector
usw.

Das wäre vor allem für Grahiken und Hintergründe eine total spannende Lösung...  8)
Title: Re: Transparenzfrage
Post by: monono on 2010-Aug-30
Das klappt eigendlich so wie du sagst, nur ist opengl-Transparenz immer etwas verwirrend.
z.B.
Code (glbasic) Select

ALPHAMODE 1
STARTPOLY -1
  POLYVECTOR  0,   0,  0,  0, RGB(  255, 255,   0)
  ALPHAMODE -1
  POLYVECTOR   0, 300,  0, 64,RGB(  255, 255,   0)
  POLYVECTOR 400, 400, 64, 64, RGB(  255, 255,   0)
   POLYVECTOR 350,  50, 64,  0, RGB(  255, 255,   0)
ENDPOLY

STARTPOLY -1
  POLYVECTOR  0,   0,  0,  0, RGB(  0, 255,   0)
  ALPHAMODE -0.0001
  POLYVECTOR   0, 300,  0, 64, RGB(  0, 255,   0)
  POLYVECTOR 300, 300, 64, 64, RGB(  0, 255,   0)
  POLYVECTOR 250,  50, 64,  0, RGB(  0, 255,   0)
ENDPOLY

  SHOWSCREEN
  MOUSEWAIT

...zeichnet ein grünes Viereck mit Alphaecken auf das große Gelbe. Seltsamerweise darf der Alphawert nicht 0 sein. Das ist dann wohl schon ein anderer Blendtype. Probiere mal mit verschiedenen Alphawerten aus, du wirst deine Lösung bestimmt finden.
Title: Re: Transparenzfrage
Post by: WPShadow on 2010-Aug-30
Ach, ok, es funktioniert also genauso! Ich war mir nicht sicher, wollte deshalb mal nachfragen. Konnte es in der Arbeit auch nicht testen!

Danke für den Test, finde es echt genial!!! Mache mich sofort ans experimentieren!!!!  :booze:
Title: Re: Transparenzfrage
Post by: Schranz0r on 2010-Aug-30
Alphatransperenz in PNG  = FTW!
Spart Code + Nerven ;)
Title: Re: Transparenzfrage
Post by: WPShadow on 2010-Aug-31
Das stimmt wohl, leider bin ich halt ein sehr schlechter Graphiker und kenne mich nun mal mit keinem einzigen Graphikprogramm aus!  :giveup:

Somit bleibt mir wohl oder übel nicht viel, oder?
Title: Re: Transparenzfrage
Post by: backslider on 2010-Aug-31
Oder du fragst nette Leute (wie z.B. mich  :good:) ob sie dir mal irgendwas malen :) bzw. zeigen, wie man ganz leicht und gratis solche Grafiken macht. (mit Programmen wie z.B. Blender / Gimp etc.)

Dafür sind wir doch ein Forum  ;)

#EDIT: Ich habe einfach mal ein kurzes knackiges Tutorial dazu verfasst ;)
http://www.glbasic.com/forum/index.php?topic=4938.0

Viel Spaß!
Title: Re: Transparenzfrage
Post by: WPShadow on 2010-Aug-31
Das Tutorial finde ich genial einfach!

Könntest du vielleicht, wenn es nicht allzuviel Aufwand ist, noch ein paar Tipps und Tricks für z.B. Gimp zusammen schreiben?

Ich für meinen Teil habe ein bißchen mit Paint.NET herum gespielt und bin keinen Schritt weiter gekommen. Bis heute habe ich nicht raus bekommen, was es mit Ebenen auf sich hat!  :whistle:
Title: Re: Transparenzfrage
Post by: backslider on 2010-Aug-31
Schön, dass es dir gefällt!

klar kann ich noch ein paar Sachen zusammentragen, einfacher ist es aber, wenn du spezielle Fragen hast :)
Weil machen kann man sogut wie alles (man, nicht ich :D) damit^^

Ebenen haben mehrere Funktionen.
z.B. kannst du, wenn dir eine Ebene nicht gefällt, sie einfach löschen ohne mit dem Radiergummi rumzufuchteln
du kannst Ebenen einfach wegschalten um zu sehen, wie das Bild ohne diese aussieht.
du Kannst Ebenen verschiedene Überlagerungseinstellungen verpassen (Addition, Multiplikation etc.)
du kannst eine Ebene als Skizze benutzen und auf einer neuen die fertige Zeichnung machen und auf einer
wiederum neuen dann die rötlichen Farben etc.
Und noch vieeeeeeeel mehr :)

Also wie gesagt... entweder du hast noch spezielle Fragen oder ich überlege mir mal was (wie z.B. das Arbeiten mit Ebenen)
Title: Re: Transparenzfrage
Post by: Kitty Hello on 2010-Oct-12
wenn man _vor_ polyvector alphamode macht, dann kann man mit alphamode vor polyvector arbeiten. Ein Wert von alphamode -1 ist dann opaque.