Taschenlampe

Übersicht BlitzBasic Allgemein

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

 

Schoasch

Betreff: Taschenlampe

BeitragFr, Dez 22, 2006 18:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi ich wollte fragen wie ich eine Tasche Taschenlame mache:
Also alles ist schwarz und dort wo man mit der Maus ist, ist es erhellt und man sieht einen Teil von dem Bild im hintergrund... Ok ich habs nicht so gut erklärt aber ich glaube ihr werdet euch schon auskennen Smile

Ich war mir jetzt nicht sicher ob das in Grafik oder in Blitz 2d hingehört


Danke schon mal im voraus
Schoasch
 

Mr Hopp

BeitragFr, Dez 22, 2006 18:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist so einfach nicht zu realisieren. In 3D wäre es leichter.

Ich habe das noch nie probiert, aber falls du doch B3D hast, könntest du es über sprites hinkriegen Wink Im Tut-Forum ist dazu ein Beitrag
Zitat:
Wie poste ich falsch?

Nachdem ich Google, die FAQ's und die Boardsuche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen, in den falschen Unterforen, mit kreativen Titeln und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann.
 

Schoasch

Betreff: habe ich

BeitragFr, Dez 22, 2006 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe zwar B3d (vollversion) jedoch möchte ich ein 2d Spiel machen Sad
Vielleicht das man irgendwie einen Transparenten Punkt malt also mal das Komplette hintergrundbild und dann noch ein schwarzes Bild das man darüber setzt und dann immer einen Transparenten Punkt hineinsetzt ... ^^

Edit: Wie wechsle ich in Gimp die farbe des Pinsels *gg*
:Megalach: (die Frage war ernst gemeint ^^)
  • Zuletzt bearbeitet von Schoasch am Fr, Dez 22, 2006 18:59, insgesamt einmal bearbeitet
 

D²O

BeitragFr, Dez 22, 2006 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm, HotBit hatte das mal gemacht.
Das war allerdings noch im "Alten" Forum.

Mal schaun ob ich das noch habe.
Blitz+; Blitz3d; BlitzMax; GLBasic; Purebasic;
GameMaker Studio 1.4xx; AGK;

5k41

BeitragFr, Dez 22, 2006 19:24
Antworten mit Zitat
Benutzer-Profile anzeigen
also ich würd einfach ne schwarze Image über alles legen und dann immer an der stelle wo die maus ist mit 255,0,255 ein pinkes oval reinstanzen, welches dann anschließend gemasked wird.

MfG
Projekte:
For a better World - Gesellschaftsspiel ( 100%)

User posted image

Lunatix

BeitragFr, Dez 22, 2006 19:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Du kannst auch mit Blitz3D ein D Game machen...

Am besten wäre wohl BlitzMax Mr. Green
Dort hast du Transparenz, kannst somit das mit Blend und Alpha sehr einfach realisieren. Geht auch in Blitz3D, mit ein paar umwegen... suche mal nach

"single surface" oder "2D²3D"
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen...

DerHase

BeitragFr, Dez 22, 2006 20:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Hab schnell was zusammen gehackt, muss packen deshalb kann ich es grad nicht auskommentieren, vielleicht hilft es Dir ja bisschen.
Code: [AUSKLAPPEN]
Graphics 320,240,0,2
HidePointer()

bg = CreateImage(320,240,1)
SetBuffer(ImageBuffer(bg))
For t = 0 To 1000
   Color Rand(0,255) ,Rand(0,255), Rand(0,255)
   Rect Rand(0,320),  Rand(0,240), Rand(5,25), Rand(5,25), 1
Next

ab = CreateImage(320,240,1)
SetBuffer (BackBuffer())

While Not KeyHit(1)
   SetBuffer(ImageBuffer(ab))
   Color 50,0,0
   Rect 0,0, 320, 240
   Color 0,0,0
   Oval MouseX(), MouseY(), 50, 50,1
    SetBuffer (BackBuffer())
   DrawImage bg, 0, 0
   DrawImage ab, 0, 0
   Flip:Cls
Wend
Play Satyr!
 

JanK

BeitragFr, Dez 22, 2006 20:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Da er anscheinend etwas in 2D machen will würde eher auf die Lösung von 5k41
bevorzugen. Da sie viel leichter is als Single... und Sprites Wink .
Ich habe keine Zeit, mich zu beeilen.
The Pollux Conflict || The Pollux Renegades || Lipstick-live.de

ToeB

BeitragFr, Dez 22, 2006 20:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab ma was einfaches:
Code: [AUSKLAPPEN]

Graphics 640,480,16,2

SetBuffer BackBuffer()

Repeat
mx = MouseX()
my = MouseY()
Color 0,255,255
Rect 1,1,640,480
Color 255,0,0
Rect 1,1,300,200
Oval 400,300,150,150
Color 0,0,0
Rect mx-150,my+100,200,800
Rect 0,0,mx-100,my+800
Rect 0,0,mx+800,my-20
Rect mx+20,my-my,800,800
Flip
Cls

Until KeyHit(1)

kleines Update Wink

5k41

BeitragFr, Dez 22, 2006 20:25
Antworten mit Zitat
Benutzer-Profile anzeigen
da hast das was ich mein Wink
Code: [AUSKLAPPEN]

Graphics 800,600,32,2
SetBuffer BackBuffer()

image = CreateLampImage()

ClsColor 255,255,0

While Not KeyDown(1)
   
   Color 255,0,0
   
   Rect 100,100,100,100
   
   Color 0,255,0
   
   Rect 300,300,100,100
   
   UpdateLamp(image,MouseX(),MouseY(),100)
   
   Flip
   Cls
      
Wend

End

Function CreateLampImage()

   image = CreateImage(GraphicsWidth(),GraphicsHeight())

   MaskImage image,255,0,255
   
   Return image

End Function

Function UpdateLamp(image,x,y,radius)


   SetBuffer ImageBuffer(image)
   Color 0,0,0
   Rect 0,0,ImageWidth(image),ImageHeight(image)
   Color 255,0,255
   Oval x-radius/2,y-radius/2,radius,radius

   SetBuffer BackBuffer()
   DrawImage image,0,0


End Function
Projekte:
For a better World - Gesellschaftsspiel ( 100%)

User posted image

Smily

BeitragSa, Dez 23, 2006 11:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Ihr macht es Viel zu kompliziert ^^
Ich finde es für zu aufwendig, in jedem Durchlauf das Bild zu verändern

Code: [AUSKLAPPEN]

Image1 = CreateImage(300,300)
Image2 = CreateImage(50,50)

SetBuffer ImageBuffer(image1)
For X = 0 To 300
 For Y = 0 To 300
  Color Rand(255),Rand(255),Rand(255)
  Plot X,Y
 Next
Next

SetBuffer ImageBuffer(image2)
Color 255,0,255
Oval 0,0,50,50

MaskImage image2,255,0,255

Graphics 300,300,16,2
HidePointer()
Color 0,0,0
SetBuffer BackBuffer()

Repeat
 Cls
 DrawImage image1,0,0
 DrawImage image2,Mousex(),mousey()
 Rect 0,0,mousex(),300
 Rect MouseX()+50,0,300,300
 Rect MouseX(),0,mousex()+50,Mousey()
 Rect MouseX(),mousey()+50,mousex()+50,300
 Flip
Until KeyHit(1)


Ich würde sagen, dies ist die beste lösung für das Problem.
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

SpionAtom

BeitragSa, Dez 23, 2006 12:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Radius beliebig einstellbar...

Code: [AUSKLAPPEN]
Graphics 800, 600, 0, 2


   radius = 100 ;<--- Radius hier einstellen

   ;Maske für die Lampe
   picLampMask = CreateImage(2 * radius, 2 * radius)
   SetBuffer ImageBuffer(picLampMask)
   Color 0, 0, 0   
   Rect 0, 0, 2 * radius, 2 * radius, 1
   Color 255, 255, 255
   Oval 0, 0, 2 * radius, 2 * radius, 1
   MaskImage picLampMask, 255, 255, 255


   ;Ein Hintergrundbild erstellen
   picHintergrund = CreateImage(GraphicsWidth(), GraphicsHeight())
   SetBuffer ImageBuffer(picHintergrund)
   For i = 1 To 200
      Color Rand(255), Rand(255), Rand(255)
      Oval Rand(GraphicsWidth()), Rand(GraphicsHeight()), Rand(200), Rand(200)
   Next


   SetBuffer BackBuffer()
   Repeat

      Cls
      DrawBlock picHintergrund, 0, 0
      doLamp picLampMask, radius
      Flip()

   Until KeyDown(1)
   End
   


Function doLamp (pic, r)

   mx = MouseX()
   my = MouseY()
   
   DrawImage pic, mx - r, my - r
   
   Color 0, 0, 0
   Rect 0, 0, GraphicsWidth(), my - r, 1
   Rect 0, my + r, GraphicsWidth(), GraphicsHeight() - my - r, 1
   Rect 0, 0, mx - r, GraphicsHeight(), 1
   Rect mx + r, 0, GraphicsWidth() - mx - r, GraphicsHeight(), 1

End Function



EDIT: Oh man bin ich lahm, ham schon 1000 Leute geantwortet Embarassed
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080

Hagbard

BeitragSa, Dez 23, 2006 14:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Version von Hot-Bit, als richtigen Taschenlampeneffekt!

Code: [AUSKLAPPEN]
Graphics 640,480,16, 2
SeedRnd MilliSecs()

MoveMouse 320,240

Dim ltmap(640,640,3)

fntArial =LoadFont("Arial",160,1,0,0)
SetFont fntArial

bild = CreateImage(640,480)
SetBuffer ImageBuffer(bild)


  For i = 0 To 479 Step 2
      For j = 0 To 639 Step 2
         Color Rand(0,255),Rand(0,255),Rand(0,255)
         Rect j,i,1,1
      Next
   Next



ii=72:iii=128
For i=48 To 40 Step-1
  Color iii,iii,iii
  Text i,ii,"HOT-BiT"
  ii=ii+1:iii=iii+14
Next
Color 255,255,255
Text 39,81,"HOT-BiT"
FreeFont fntArial

fntArial =LoadFont("Arial",36,1,0,0)
SetFont fntArial
Color 255,200,0
Text 242,218,"präsentiert:"
Color 255,255,0
Text 240,220,"präsentiert:"

oo=80
For i=120 To 100 Step-1
Color oo/10,oo/5,oo
Rect 120-(i-120),280+(i-120),439,179
oo=oo+8
Next



FreeFont fntArial
fntArial =LoadFont("Arial",40,1,0,0)
SetFont fntArial
Color 164,164,164
Text 172,278,"Taschenlampen- Effekt"
Color 196,196,196
Text 171,279,"Taschenlampen- Effekt"
Color 255,196,0
Text 170,280,"Taschenlampen- Effekt"

FreeFont fntArial



fntArial =LoadFont("Arial",76,1,0,0)
SetFont fntArial


ii=320:iii=90
For i=144 To 140 Step-1
  Color iii,iii-40,iii/10
  Text i,ii,"Blitz-Basic 2D"
  ii=ii+1:iii=iii+33
Next

ox=255
For i= 530 To 140 Step -4
   Color ox,ox,ox/10
   Oval i,395,35,35
 
   ox=ox-2
Next




FreeFont fntArial

 
.aaax

    LockBuffer ImageBuffer(bild)
     For y=0 To 479
       For x=0 To 639
         wert = ReadPixelFast(x,y)
         R = (wert And $FF0000) / $10000
         G = (wert And $FF00) / $100
         B = (wert And $FF)
         ltmap(y,x,1)=R
         ltmap(y,x,2)=G
         ltmap(y,x,3)=B
       Next
     Next
     UnlockBuffer ImageBuffer(bild)



SetBuffer BackBuffer()


kegel=150 ;70
kegeln=kegel*2
fakt=255/kegel
mytime=MilliSecs()




Repeat
   
   Cls
   


If MilliSecs()-mytime>5000
  kegel=Rand(40,150)
  kegeln=kegel*2
  fakt=255/kegel
  mytime=MilliSecs()
EndIf

   LockBuffer BackBuffer()   


x = MouseX()
y = MouseY()

i3=0

For i=1 To kegel Step 2
   If i3<5 i3=i3+1 Else i3=i3 +2  ;i-1
   e = 3 - (i Shl 1)
   xi=0
   yi=i   
   While xi <= yi



    If (x+xi)<639 And (y+yi)<479
      R=ltmap(y+yi,x+xi,1):G=ltmap(y+yi,x+xi,2):B=ltmap(y+yi,x+xi,3)     ; x + xi, y + yi
      Else
      Goto mma1
    EndIf
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt ;Shr 1
         If G<0 G = 0
         B = B - i3 * fakt ;Shr 2
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+xi, y+yi, NewRGB
               
         R=ltmap(y+yi+1,x+xi,1):G=ltmap(y+yi+1,x+xi,2):B=ltmap(y+yi+1,x+xi,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+xi, y+yi+1, NewRGB

         R=ltmap(y+yi+1,x+xi+1,1):G=ltmap(y+yi+1,x+xi+1,2):B=ltmap(y+yi+1,x+xi+1,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+xi+1, y+yi+1, NewRGB


.mma1
    If (x-xi)>1 And (y+yi)<479
      R=ltmap(y+yi,x-xi,1):G=ltmap(y+yi,x-xi,2):B=ltmap(y+yi,x-xi,3)
      Else
      Goto mma2
    EndIf
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-xi, y+yi, NewRGB

         R=ltmap(y+yi+1,x-xi,1):G=ltmap(y+yi+1,x-xi,2):B=ltmap(y+yi+1,x-xi,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-xi, y+yi+1, NewRGB       

         R=ltmap(y+yi+1,x-xi-1,1):G=ltmap(y+yi+1,x-xi-1,2):B=ltmap(y+yi+1,x-xi-1,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-xi-1, y+yi+1, NewRGB


.mma2
    If (x+xi)<639 And (y-yi)>1
      R=ltmap(y-yi,x+xi,1):G=ltmap(y-yi,x+xi,2):B=ltmap(y-yi,x+xi,3)
      Else
      Goto mma3
    EndIf
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+xi, y-yi, NewRGB
         
         R=ltmap(y-yi+1,x+xi,1):G=ltmap(y-yi+1,x+xi,2):B=ltmap(y-yi+1,x+xi,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+xi, y-yi+1, NewRGB

         R=ltmap(y-yi+1,x+xi-1,1):G=ltmap(y-yi+1,x+xi-1,2):B=ltmap(y-yi+1,x+xi-1,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+xi-1, y-yi+1, NewRGB




.mma3
   If (x-xi)>1 And (y-yi)>1
      R=ltmap(y-yi,x-xi,1):G=ltmap(y-yi,x-xi,2):B=ltmap(y-yi,x-xi,3)
      Else
      Goto mma4
   EndIf
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-xi, y-yi, NewRGB

         R=ltmap(y-yi+1,x-xi,1):G=ltmap(y-yi+1,x-xi,2):B=ltmap(y-yi+1,x-xi,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-xi, y-yi+1, NewRGB

         R=ltmap(y-yi+1,x-xi+1,1):G=ltmap(y-yi+1,x-xi+1,2):B=ltmap(y-yi+1,x-xi+1,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-xi+1, y-yi+1, NewRGB


.mma4
    If (x+yi)<639 And (y+xi)<479
      R=ltmap(y+xi,x+yi,1):G=ltmap(y+xi,x+yi,2):B=ltmap(y+xi,x+yi,3)
      Else
      Goto mma5
    EndIf
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+yi, y+xi, NewRGB

         R=ltmap(y+xi+1,x+yi,1):G=ltmap(y+xi+1,x+yi,2):B=ltmap(y+xi+1,x+yi,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+yi, y+xi+1, NewRGB

         R=ltmap(y+xi+1,x+yi+1,1):G=ltmap(y+xi+1,x+yi+1,2):B=ltmap(y+xi+1,x+yi+1,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x+yi+1, y+xi+1, NewRGB



.mma5
    If (x-yi)>1 And (y+xi)<479
      R=ltmap(y+xi,x-yi,1):G=ltmap(y+xi,x-yi,2):B=ltmap(y+xi,x-yi,3)
      Else
      Goto mma6
    EndIf
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-yi, y+xi, NewRGB

         R=ltmap(y+xi+1,x-yi,1):G=ltmap(y+xi+1,x-yi,2):B=ltmap(y+xi+1,x-yi,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-yi, y+xi+1, NewRGB

         R=ltmap(y+xi+1,x-yi-1,1):G=ltmap(y+xi+1,x-yi-1,2):B=ltmap(y+xi+1,x-yi-1,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixelFast x-yi-1, y+xi+1, NewRGB



.mma6
    If (x+yi)<639 And (y-xi)>1
      R=ltmap(y-xi,x+yi,1):G=ltmap(y-xi,x+yi,2):B=ltmap(y-xi,x+yi,3)
      Else
      Goto mma7
    EndIf
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixel x+yi, y-xi, NewRGB

         R=ltmap(y-xi+1,x+yi,1):G=ltmap(y-xi+1,x+yi,2):B=ltmap(y-xi+1,x+yi,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixel x+yi, y-xi+1, NewRGB

         R=ltmap(y-xi+1,x+yi-1,1):G=ltmap(y-xi+1,x+yi-1,2):B=ltmap(y-xi+1,x+yi-1,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixel x+yi-1, y-xi+1, NewRGB


.mma7
    If (x-yi)>1 And (y-xi)>1
      R=ltmap(y-xi,x-yi,1):G=ltmap(y-xi,x-yi,2):B=ltmap(y-xi,x-yi,3)
      Else
      Goto mma8
    EndIf
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixel x-yi, y-xi, NewRGB

         R=ltmap(y-xi+1,x-yi,1):G=ltmap(y-xi+1,x-yi,2):B=ltmap(y-xi+1,x-yi,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixel x-yi, y-xi+1, NewRGB

         R=ltmap(y-xi+1,x-yi+1,1):G=ltmap(y-xi+1,x-yi+1,2):B=ltmap(y-xi+1,x-yi+1,3)
         R = R - i3 * fakt
         If R<0 R = 0
         G = G - i3 * fakt
         If G<0 G = 0
         B = B - i3 * fakt
         If B<0 B = 0
         NewRGB = r*$10000 + g*$100 + b
           WritePixel x-yi+1, y-xi+1, NewRGB

.mma8     
      xi = xi + 1
      If e < 0
         e = e + 2 + (xi Shl 2)
      Else
         e = e + 2 + (xi Shl 2) - ((yi - 1) Shl 2)
         yi = yi - 1
      End If

 
      Wend
Next
   
UnlockBuffer BackBuffer()


fps2 = fps2 + 1
If fpstimer + 1000 < MilliSecs() Then
  fps = fps2:fps2 = 0:fpstimer = MilliSecs()
End If
Color 255,255,0
Text 10,20,"FPS : "+fps

Text 10,40,"Durchmesser: "+kegeln

   Flip 0
Until KeyHit(1)

End

Smily

BeitragSa, Dez 23, 2006 19:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich glaube der Threatstarter wollte nur einen einfachen Taschenlampen effeckt.

Der Code"schnipsel" ist ja riesig.
Ich finde, dass es keinen Sinn mehr hat wenn ein so verhältnissmäßig unwichtiger Effeckt den Halben Code von Programm darstellt.
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Hagbard

BeitragSa, Dez 23, 2006 19:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Es liest ja nicht nur Schoasch diesen Thread/Beitrag und evtl. braucht es mal jemand, der auch fortgeschritten ist.
 

D²O

BeitragSa, Dez 23, 2006 19:37
Antworten mit Zitat
Benutzer-Profile anzeigen
@ Hagbard,
genau das habe ich gemeint.
Schade das ich das hier und viele anderen guten sachen von hotBit nicht mehr habe/finde.
Blitz+; Blitz3d; BlitzMax; GLBasic; Purebasic;
GameMaker Studio 1.4xx; AGK;
 

Schoasch

Betreff: Danke für die Mühe!

BeitragSa, Dez 23, 2006 20:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke das ihr euch so bemüht habt Smile
Nur wie kann ich das machen, dass es nicht genaus auf einer Stelle abgegrenzt ist das Licht sondernd real, also immer schwächer wird das Licht Smile
Danke schon mal im voraus Smile
Schoasch

FireballFlame

BeitragSa, Dez 23, 2006 23:22
Antworten mit Zitat
Benutzer-Profile anzeigen
(Halb-)Transparenz ist mit 2D-Befehlen kaum vernünftig machbar.
Aber wenn du schon Blitz3D hast, kannst du doch dein 2D-Spiel auch mit 3D-Funktionen basteln. Solche Sachen lassen sich nämlich mit Sprites viel einfacher machen. ^^ Und eine 3D-Grafikkarte hat heutzutage sowieso jeder Wink
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit
 

Schoasch

BeitragSo, Dez 24, 2006 8:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab jetzt mal selber eine Taschenlampe gemacht und will das der kleine Punkt immer größer wird...
hier der Code:
Code: [AUSKLAPPEN]

Graphics 320,240,0,2
Bild = LoadImage("C:\Dokumente und Einstellungen\Claudia\Desktop\Georg\Meine Bilder\Rakete1.png")
Bild2 = LoadImage("C:\Dokumente und Einstellungen\Claudia\Desktop\Georg\Blitz Basic\Robs BB-Kurs komplett\bilder\stars.bmp")
Bild3 = LoadImage("C:\Dokumente und Einstellungen\Claudia\Desktop\Georg\Blitz Basic\Robs BB-Kurs komplett\bilder\collide.jpg")
HidePointer()

b = CreateImage(320,240,1)
SetBuffer(ImageBuffer(b))
MaskImage Bild, 255,255,255
MaskImage Bild3,0,0,0
ScaleImage Bild3, 0.5,0.5
DrawImage Bild2,0,0
DrawImage Bild3,0,0
DrawImage Bild, 150,100

a = CreateImage(320,240,1)

SetBuffer BackBuffer()

x = 10
y = 10

While Not KeyHit(1)
SetBuffer(ImageBuffer(a))
Color 100,100,100
Rect 0,0,320,240
Color 0,0,0
Oval MouseX(),MouseY(),x,y,1
x = x + 0.1
y = y + 0.1
SetBuffer BackBuffer()
DrawImage b,0,0
DrawImage a,0,0
Flip
Cls
Wend


Hier will ich das der Kreis immer größer wird (x = x + 0.1
y = y + 0.1)
nur ab 0.5 und weiter runter (0.4,0.3 ...)
reagiert er nicht mehr da bleibt er so klein ...

Edit : Habs gelöst das müssen Float zahlen sein (#)
danke

Eingeproggt

Betreff: @Hagbard

BeitragSo, Dez 24, 2006 15:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Dieses Beispiel dürfte ausgeklügelt sein, jedoch stürzt es bei mir ab, ohne irgendetwas zu sagen / tun.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group