Author Topic: Alphamode  (Read 5397 times)

Offline Derb

  • Mc. Print
  • *
  • Posts: 35
    • View Profile
Alphamode
« on: 2011-Dec-29 »

Malzeit  O_O

Ich habe ein Problem mit Alphamode. Gebe ich positive Werte an, wird mein Sprite Hell was OK ist. Ich will es aber abdunkeln also negativer Wert passiert nichts.


Danke

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5111
  • O Rly?
    • View Profile
Re: Alphamode
« Reply #1 on: 2011-Dec-29 »
Hast du ein kurzes Beispiel, was den Fehler zeigt?
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard

Offline Derb

  • Mc. Print
  • *
  • Posts: 35
    • View Profile
Re: Alphamode
« Reply #2 on: 2011-Dec-30 »
Ein kleines Beispiel habe ich nicht weil der Code mittlerweile sehr umfangreich ist...

Das wäre die stelle

Quote
   GRABSPRITE 9001,xwin+10,ywin+10,xwinl,ywinl
   ALPHAMODE -0.2
   DRAWSPRITE 9001,xwin+10,ywin+10
   ALPHAMODE 0

Wenn Alphamode nur die transparenz betrifft warum hat es dann positive und negative Werte in der Syntax?

In meinem Bsp. oben habe ich einen hellen Effekt mit 0.2 und keinen Effekt mit -0.2

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5111
  • O Rly?
    • View Profile
Re: Alphamode
« Reply #3 on: 2011-Dec-30 »
mach mal ALPHAMODE -.8
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard

Offline Derb

  • Mc. Print
  • *
  • Posts: 35
    • View Profile
Re: Alphamode
« Reply #4 on: 2011-Dec-30 »
nichts zu sehen... wie gesagt bei 0.8 ist es aufgehellt, mit negativem Vorzeichen NICHTS... :rant:

Offline monono

  • Mr. Polyvector
  • ***
  • Posts: 213
    • View Profile
    • Sockel Lernmedien
Re: Alphamode
« Reply #5 on: 2011-Dec-31 »
Wie Ocean schon geschrieben hat: Alphamode ist nicht wirklich zum abdunkeln geeignet. Es gibt Minus und Plus, weil es in opengl etliche Blendmodes und Einstellungen gibt. Auch wenn in der Hilfe steht, dass es für Schatten geeignet ist, ist damit gemeint, dass es beim blenden den Hintergrund eher verdunkelt, statt z.B. die Farbwerte zu addieren. Sinn macht das ganze erst wenn du Grafiken übereinander legst. Wenn du  ein einzelnes Sprite abdunkeln willst, male es mit POLYVECTOR und gebe dunkle RGB-Werte an jede Ecke.

Offline michael

  • Mc. Print
  • *
  • Posts: 25
    • View Profile
Re: Alphamode
« Reply #6 on: 2011-Dec-31 »
mach mal ein showscreen dazwischen und es wird gehen...,hier ein auszug aus meinem Code wo ich das verwenden...


  FOR i = -1 TO 0 STEP 0.1
    ALPHAMODE i
    xPrint("LEVEL", -1)
    xPrint(MyLevel%,0)
    SHOWSCREEN
    sWait(100)
  NEXT

Offline Derb

  • Mc. Print
  • *
  • Posts: 35
    • View Profile
Re: Alphamode
« Reply #7 on: 2012-Jan-07 »
Ok das Alphamode nun die Transparenz setzt habe ich begriffen. Vieleicht habe ich auch nur den falschen Ansatz und ihr könnt mir weiterhelfen.

Ich habe folgendes vor:

Ein Sprite fliegt über eine Bitmap. Um den Effekt des fliegenden Objektes realistischer zu gestalten, soll unterhalb versetzt der Schatten des fliegenden Objekts dargestellt werden. Natürlich ist der Schatten nicht schwarz sondern nur abgedunkelt.

Eigentlich wollte ich mir den Untergrund mit grabsprite in den Puffer kopieren, mit alphamode bearbeiten und dann wieder setzen.

Kann mir jemand mal grob einen Abriss geben wie ich es sonst realisieren soll?


Ich bedanke mich schon mal...

Offline monono

  • Mr. Polyvector
  • ***
  • Posts: 213
    • View Profile
    • Sockel Lernmedien
Re: Alphamode
« Reply #8 on: 2012-Jan-07 »
Quote
Natürlich ist der Schatten nicht schwarz sondern nur abgedunkelt.
Ist der Schatten das abgedunkelte Sprite oder dunkelt der Schatten den Hintergrund. Ich nehme an du meinst das Zweite. :)

Wenn du dich nicht POLYVECTOR auseinandersetzen willst, kannst du doch zwei Sprites laden (das selbe Bild einmal normal, einmal komplett schwarz). Dann zeichnest du den Hintergrund, dann das schwarze Sprite mit Transparenz, dann das normale Sprite. Die beiden Sprites dürfen natürlich nicht die selbe Position haben, sonst sieht man das Untere nicht. Also etwas versetzt, je nach höhe.
Wenn du keine zwei Sprites laden willst, kannst du auch beide Bilder in einer Imagedatei nebeneinander haben, und das ganze mit LOADANIM laden und bei DRAWANIM zwischen der Schattenversion und der Originalversion hin und her schalten.

Ich würde dir trotzdem POLYVECTOR ans Herz legen. Es gibt einige Funktionen hier im Forum mit denen man DRAWSPRITE ersetzen kann. Der Vorteil ist, dass du das Sprite an jeder Ecke beliebig einfärben kannst und auch die Alphawerte pro Ecke verändern kannst.

Lass auf jeden Fall die Idee mit dem Puffer sein. Es wird im besten Falle langamer und komplizierter.

Wenn das so nicht reicht und du etwas Code brauchst, sag bescheid.

Offline Derb

  • Mc. Print
  • *
  • Posts: 35
    • View Profile
Re: Alphamode
« Reply #9 on: 2012-Jan-07 »
Ich habe die Freie Version, also nix Polyvector ;-(

Der Tipp mit dem Schwarzen Sprite und dann Alphamode hört sich aber sehr gut an.

Werde es mal ausprobieren ;-)

Offline Derb

  • Mc. Print
  • *
  • Posts: 35
    • View Profile
Re: Alphamode
« Reply #10 on: 2012-Jan-07 »
Funktioniert so wie es wollte... danke für den Tipp. Hab wieder einmal zu kompliziert gedacht.

1000 Dank

Offline Kitty Hello

  • code monkey
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 10816
  • here on my island the sea says 'hello'
    • View Profile
    • http://www.glbasic.com
Re: Alphamode
« Reply #11 on: 2012-Jan-08 »
polyvector geht auch bei der freien Version. (Ist ja 2D).

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5111
  • O Rly?
    • View Profile
Re: Alphamode
« Reply #12 on: 2012-Jan-08 »
Hab ich mir eben auch grade gedacht :D
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard

Offline Derb

  • Mc. Print
  • *
  • Posts: 35
    • View Profile
Re: Alphamode
« Reply #13 on: 2012-Jan-09 »
Das hab ich nicht gewusst, da ich Poly mit 3 D assoziiert habe.  :nw:

Wie schon mal erwähnt, habe ich vor 15 Jahren auf dem Amiga programmiert. Das ist lange her und gewisse Dinge will man immer noch machen wie seinerzeit.

Von Allen Basic Dialekten die es aktuell so gibt, ist GL mir das liebste geworden, obwohl es bei weitem nicht perfekt ist.

Danke aber nochmal für die tolle Hilfe.
« Last Edit: 2012-Jan-09 by Derb »

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5111
  • O Rly?
    • View Profile
Re: Alphamode
« Reply #14 on: 2012-Jan-09 »
Von Allen Basic Dialekten die es aktuell so gibt, ist GL mir das liebste geworden, obwohl es bei weitem nicht perfekt ist.

Für 2D in jeder hinsicht PERFEKT! :)
Was will man bitte noch mehr?!
I <3 DGArray's :D

PC:
AMD Ryzen 7 1700 @3.9GHz, 16GB HyperX Fury 3000MHz Ram, ASUS ROG GTX 1060 STRIX 6GB, Windows 10 Pro 64Bit, MSi Tomahawk B350 Mainboard