Author Topic: 2D Darstellung  (Read 1398 times)

Offline WPShadow

  • Administrator
  • Prof. Inline
  • *******
  • Posts: 1667
    • View Profile
    • http://lostrevenant.blogspot.com
2D Darstellung
« on: 2009-Oct-28 »
Hi,

hätte eine Frage: gibt es einen Weg eine Graphik (Sprite) nicht zu verschmälern, sondern die Größe beizubehalten und einfach nur z.b. 60% des Bildes darzustellen? Ist etwas blöd erklärt, aber ich meine damit z.B. einen Balken von rot nach grün zeichnen und dann nur einen Teil davon aktiv darzustellen, den Teil, den man also nicht braucht, einfach wegzuschneiden, ohne die Graphik zu zoomen, o.ä.

Hat da jemand eine Idee?

Gruß

W.
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

Offline Schranz0r

  • Premium User :)
  • Administrator
  • Prof. Inline
  • *******
  • Posts: 5035
  • O Rly?
    • View Profile
Re: 2D Darstellung
« Reply #1 on: 2009-Oct-28 »
Polyvector ;)
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 WPShadow

  • Administrator
  • Prof. Inline
  • *******
  • Posts: 1667
    • View Profile
    • http://lostrevenant.blogspot.com
Re: 2D Darstellung
« Reply #2 on: 2009-Oct-28 »
Hab ich schon versucht, aber k.A. wo ich anfange...  :'(

UPDATE:

Normalerweise müßten die Texturkoordinaten so gerechnet werden:

     
     0.5,0
       |
0,0    |    1,0
   - - | - -
  |    |     |
  |    |     |
  |    |     |
   - - | - -
0,1    |    1,1
       |
     0.5,1


Habe ich das soweit richtig verstanden, oder rechne ich da jetzt falsch?
« Last Edit: 2009-Oct-28 by WPShadow »
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

Offline Quentin

  • Prof. Inline
  • *****
  • Posts: 915
    • View Profile
Re: 2D Darstellung
« Reply #3 on: 2009-Oct-28 »
meintest du so etwas in der Art?

Code: (glbasic) [Select]
// sample graphic for progress bar
DRAWRECT 0, 0, 440, 30, RGB(0, 255, 0)
PRINT "progress bar for WPShadow ..............", 10, 5
GRABSPRITE 0, 0, 0, 440, 30
col = RGB(255, 255, 255)

// initialize
startx = 100
starty = 100
endy = 130
endx = 540
width = startx
delay = 10

timer = GETTIMERALL() + delay
GETSPRITESIZE 0, sx, sy

WHILE TRUE
STARTPOLY 0
POLYVECTOR startx, starty, 0, 0, col
POLYVECTOR startx, endy, 0, sy, col
POLYVECTOR width, endy, width-startx, sy, col
POLYVECTOR width, starty, width-startx, 0, col
  ENDPOLY
  IF width < endx
IF timer < GETTIMERALL()
INC width, 1
timer = GETTIMERALL() + delay
ENDIF
ELSE
    PRINT "Finito!", 300, endy + 10
  ENDIF
  SHOWSCREEN
WEND

Offline WPShadow

  • Administrator
  • Prof. Inline
  • *******
  • Posts: 1667
    • View Profile
    • http://lostrevenant.blogspot.com
Re: 2D Darstellung
« Reply #4 on: 2009-Oct-28 »
Genau das habe ich gemeint!  :good:

Super Beispiel! Danke!!! *freu*

PS.: So in der Art hatte ich mir das gedacht, war mir aber nicht sicher...  :whistle:
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est