Bildverkleinerrung!?

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Ironstorm

Erstklassiger Contest-Veranstalter

Betreff: Bildverkleinerrung!?

BeitragMi, März 17, 2004 14:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi @ all! Mein Freund will ein Spiel das im Monkey Island Stil ist! Aber wie bekommt er es hin das wenn man nach hinten läuft der Mann(Spieler) sich verkleinert?
..:: blackbird design : blackbird photography : Futuro Verde : X-Commander ::..
MacBook | Intel Core 2 Duo 2,1 GHz | 2048 MB RAM | 80 GB HDD | Mac OS X 10.6.2 (Snow Leopard) | Adobe CS4 Design Premium
 

Dreamora

BeitragMi, März 17, 2004 14:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Scaleentity

Blatolo

BeitragMi, März 17, 2004 15:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Scaleentity ist für 3d Objekte.
Ich denke dass er von 2d Bildern spricht da er einen Monkey Island Stil haben will und weil wir hier im 2d Bereich sind.
ResizeImage - absolute Werte
ScaleImage - relative Werte
 

Dreamora

BeitragMi, März 17, 2004 15:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Sprites in Blitz3D sind auch "2D" und verfügen dennoch über die ScaleEntity Eigenschaften als auch über die anderen Vorteile die Entities mit ihren Texturen haben.

ChrisAttack

BeitragMi, März 17, 2004 15:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Dies hier ist aber 2D Shocked
B3D
MSVC++
DX9SDK
 

Dreamora

BeitragMi, März 17, 2004 16:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja und?
Sprites sind 2D!

Aber ok, wenn man es direkt mit Bildchen zeichnen lösen will, ist mein ansatz natürlich falsch, sorry

ChrisAttack

BeitragMi, März 17, 2004 16:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Aber Sprites können nur in BB3D eingesetzt werden.
aber wir hören besser auf hier rumzuspamen Very Happy
B3D
MSVC++
DX9SDK
 

Dreamora

BeitragMi, März 17, 2004 16:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann hättest du vielleicht erwähnen sollen, welches Blitz du meinst Smile

ChrisAttack

BeitragMi, März 17, 2004 16:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Aber der thread steht ja im 2d verzeichnis. dachte das wäre eindeutig... sorry Wink
B3D
MSVC++
DX9SDK

Ironstorm

Erstklassiger Contest-Veranstalter

BeitragMi, März 17, 2004 23:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke aber jetzt habe ich wieder ein Prob.!!!
Nämlich ich will das wenn man läuft auch animationen zu sehen ist! Aber das geht ncht in einer For Schleife! Denn ich habe es so gemacht:
Code: [AUSKLAPPEN]

For I=0 to 9
Cls
Drawimage you,X,Y,I
delay 100
flip
next

Aber jetzt geht er nur bis Bild eins! Weiter net!!! Crying or Very sad
..:: blackbird design : blackbird photography : Futuro Verde : X-Commander ::..
MacBook | Intel Core 2 Duo 2,1 GHz | 2048 MB RAM | 80 GB HDD | Mac OS X 10.6.2 (Snow Leopard) | Adobe CS4 Design Premium

D2006

Administrator

BeitragMi, März 17, 2004 23:14
Antworten mit Zitat
Benutzer-Profile anzeigen
um genau zu sein geht er bis bild 9 (bzw. 10). das siehst du nur nicht, weil er immer schnell flipt.

Ansatz:

Code: [AUSKLAPPEN]

While(bla)
...
DrawImage you,X,Y,I

flip
I=I+1
If I=10 then I=0

...
Wend


MfG

BladeRunner

Moderator

BeitragMi, März 17, 2004 23:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie du selbst schon erkannt hast ist eine for-Schleife der falsche Weg.
Erschaffe einen Counter den du alle x millisekunden hochzählst und lasse das bild mit diesem Counter zeichnen.

Code: [AUSKLAPPEN]

counter=0
.
.
.
if millisecs() >(alt_zeit+150) then
   alt_zeit=millisecs()
   counter=counter+1
   if counter >max_frame then counter=0
end if
.
.
drawimage me,x,y,counter

Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Ironstorm

Erstklassiger Contest-Veranstalter

BeitragMi, März 17, 2004 23:21
Antworten mit Zitat
Benutzer-Profile anzeigen
thx 8)
..:: blackbird design : blackbird photography : Futuro Verde : X-Commander ::..
MacBook | Intel Core 2 Duo 2,1 GHz | 2048 MB RAM | 80 GB HDD | Mac OS X 10.6.2 (Snow Leopard) | Adobe CS4 Design Premium
 

IonPainter

BeitragMi, März 17, 2004 23:30
Antworten mit Zitat
Benutzer-Profile anzeigen
nachtrag:

dreamora war vorher bei dbp, und da sind sprites keine 3d objekte sondern 2d images Wink
 

lettorTrepuS

BeitragMi, März 17, 2004 23:31
Antworten mit Zitat
Benutzer-Profile anzeigen
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger.

TheShadow

Moderator

BeitragDo, März 18, 2004 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
auf den 1. blick würde ich sagen der Code ist von mir und auf den 2. Blick würde ich sagen, dass es zu langsam für realtime ist...

außerdem habe ich eine DrawScaled-Funktion mal veröffentlicht:


Code: [AUSKLAPPEN]

Graphics 800,600,0,2

Global temporary=CreateImage(800,600) ;<<<WICHTIG!
Global image    =LoadImage("c:\eigenes\grafik\terminator1.bmp")
ClsColor 0,0,255

While Not KeyHit(1)
  x2=x1
  y2=y1
  x1=MouseX()
  y1=MouseY()
  If x1<>x2 Or y1<>y2 Then
    SetBuffer BackBuffer()
    ClsColor 0,0,255
    Cls
    drawscaled image,BackBuffer(),0,0,x1,y1
    Flip
  EndIf
Wend

WaitKey()
FreeImage temporary
FreeImage image
End


;---------------------------------------------------------------------
Function drawscaled(src,dest,x,y,width,height)
  src_width  =ImageWidth (src)
  src_height =ImageHeight(src)
  src_buffer =ImageBuffer(src)
  tmp_buffer =ImageBuffer(temporary)
  div_x#     =Float#(src_width) /Float#(width)
  div_y#     =Float#(src_height)/Float#(height)
  If width=0 Or height=0 Or src_width=0 Or src_height=0 Then Return

  SetBuffer tmp_buffer
  ClsColor 0,0,0
  Cls

  For i=0 To width-1
    CopyRect i*div_x#,0,1,src_height,i,0,src_buffer,tmp_buffer
  Next

  For i=0 To height-1
    CopyRect 0,i*div_y#,width,1,x,y+i,tmp_buffer,dest
  Next
End Function
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group