sprites ist durchsichtig irgend etwas läuft falsch
Übersicht

![]() |
dimasterBetreff: sprites ist durchsichtig irgend etwas läuft falsch |
![]() Antworten mit Zitat ![]() |
---|---|---|
warum ist mein sprite transparent:?: wie mache ich das es fest wird ![]() danke für hilfe schon vorher |
||
- Zuletzt bearbeitet von dimaster am Do, Apr 29, 2004 21:04, insgesamt einmal bearbeitet
![]() |
DCSieger des B2D Retro Wettbewerb / Aug 04 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ähm... könntest du das Problem etwas genauer beschreiben?
Was für ein Sprite? Wie lädst du es? Was meinst du mit "fest"? |
||
Core i5 4670K | 4 x 3,40 GHZ | 16 GB Ram | GeForce GTX 960 | HTC Vive | Win 10 Pro
www.UnrealSoftware.de | www.StrandedOnline.de | www.CS2D.com | www.CarnageContest.com | www.Stranded3.com |
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
also ich hab das so geladen:
Code: [AUSKLAPPEN] sprite=LoadSprite("gfx/p.bmp") ScaleSprite sprite,-32,-32 PositionEntity sprite,((ppx-scrollx)*2)-640+32,-((ppy-scrolly)*2)+480-32,640 |
||
![]() |
Wild-Storm |
![]() Antworten mit Zitat ![]() |
---|---|---|
ähm, was hat transparenz mit fest zu tun? ![]() |
||
Visit http://www.next-dimension.org
------------------------------------------------- Freeware Modelle, Texturen & Sounds: http://www.blitzforum.de/forum...hp?t=12875 |
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
mit fest meine ich nicht durchsichtig | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hat deine Textur nen Alphawert? bzw. nen alphalayer? ![]() |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Edlothiol |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zitat: ähm, was hat transparenz mit fest zu tun? Hm, vielleicht Wasser=Transparent | Wasser=Flüssig => Gegenteil von Transparent = Gegenteil von Flüssig = Fest ![]() ![]() Damit das nicht zu OT wird: Ich kenn mich mit 3D nicht sonderlich aus und ich weiß auch nicht was der Standard - Modus - Parameter von LoadSprite ist, aber versuch doch malCode: [AUSKLAPPEN] sprite=LoadSprite("gfx/p.bmp",1)
Edit: Oh, vielleicht hätte ich schneller posten sollen... |
||
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
da geht nichts!mit transparent meine ich durchsichtig | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
dann hat deine Textur nen Alphalayer oder du hast EntityAlpha verändert bzw. TextureBlend
ansonsten wird der Sprite nicht transparent |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
vieleicht ligts an kamera einstellung:Code: [AUSKLAPPEN] cam=CreateCamera()
CameraClsMode cam,0,1 CameraRange cam,1,700 PositionEntity cam,3,3,-5 |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
fragen wir anders
is der sprite durchsichtig oder siehst du überhaupt nix? sprich hast du renderworld und flip? |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
ja ich hab renderword und flip und der sprite ist durchsichtig | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Dann hat wie gesagt entweder die Textur nen Alphalayer, du hast Textureblend textur, 1 genommen oder EntityAlpha Sprite, X# mit x < 1 genommen | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
aber da ist nichts von dem hier mal der ganze code:
Code: [AUSKLAPPEN] Graphics3D 640,480,16 SetBuffer BackBuffer() Dim schuss#(50,3) Dim shot(50) Dim map(200,200) tile = LoadAnimImage("gfx/tileset2.bmp",32,32,0,47) load() px=9 ;x-koord des players für kollision py=8 ;y-koord des players für kollision ppx=9*32 ;x-koord des players ppy=8*32 ;y-koord des players xa#=2.38 ya#=2 AutoMidHandle True ;Fehler liegt glaube ich hier cam=CreateCamera() CameraClsMode cam,0,1 CameraRange cam,1,700 PositionEntity cam,3,3,-5 sprite=LoadSprite("gfx/p.bmp") ScaleSprite sprite,-32,-32 PositionEntity sprite,((ppx-scrollx)*2)-640+32,-((ppy-scrolly)*2)+480-32,640 ;################# maus = LoadImage("gfx/maus1.bmp") While Not KeyHit(1) Cls For y=0 To 200 For x=0 To 200 DrawImage tile,x*32-scrollx,y*32-scrolly,map(x,y) Next Next mx# = MouseX() my# = MouseY() winkel = ATan2(mx-288,256-my) RotateSprite sprite,winkel*-1 PositionEntity sprite,((ppx-scrollx)*2)-640+32,-((ppy-scrolly)*2)+480-32,640 If zap>0 Then ; wenn taste gedrückt wurde If move=1 ; wenn die cursor-taste oben gedrückt wurde scrolly=scrolly-2 ;dann scrolle die map nach oben ppy=ppy-2 ;dann scrolle player nach oben q=q+1 ;q=q+1 If q=16 Then ;wenn q=16 zap=0 ;dann ist bewegung zu ende q=0 ;q=0 py=py-1 ;kollisionsdaten des players werden aktualisiert EndIf EndIf If move=2 scrolly=scrolly+2 ppy=ppy+2 q=q+1 If q=16 Then zap=0 q=0 py=py+1 EndIf EndIf If move=3 scrollx=scrollx-2 ppx=ppx-2 q=q+1 If q=16 Then zap=0 q=0 px=px-1 EndIf EndIf If move=4 scrollx=scrollx+2 ppx=ppx+2 q=q+1 If q=16 Then zap=0 q=0 px=px+1 EndIf EndIf EndIf If KeyDown(200) Then If map(px,py-1)<7 Then If zap<1 Then move=1 ;move=1 - oben zap=1 ;move=2 - unten frame=2 ;move=3 - links EndIf ;move=4 - rechts EndIf EndIf If KeyDown(208) Then If map(px,py+1)<7 Then If zap<1 Then move=2 zap=1 frame=3 EndIf EndIf EndIf If KeyDown(203) Then If map(px-1,py)<7 Then If zap<1 Then move=3 zap=1 frame=1 EndIf EndIf EndIf If KeyDown(205) Then If map(px+1,py)<7 Then If zap<1 Then move=4 zap=1 frame=0 EndIf EndIf EndIf DrawImage maus,MouseX(),MouseY() If MouseHit(1) nr=nr+1 snr=snr+1 schuss(nr,0)=1 schuss(nr,1)=xa schuss(nr,2)=ya schuss(nr,3)=winkel-90 shot(nr)=LoadSprite("gfx/kugel.bmp") ScaleSprite shot(nr),0.1,0.1 EndIf If nr=50 Then nr=0 For i=0 To 50 If schuss(i,0)=1 PositionEntity shot(i),schuss(i,1),schuss(i,2),5 schuss(i,1)=schuss(i,1)+(Cos(schuss(i,3))/10) schuss(i,2)=schuss(i,2)-(Sin(schuss(i,3))/10) EndIf Next UpdateWorld RenderWorld Flip Wend Function load() karte$ = ReadFile("map1.map") For x = 0 To 200 For y = 0 To 200 tile = ReadLine(karte$) map(x,y) = ReadInt(karte$) Next Next CloseFile(karte$) End Function |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hasu schonma wat von einrücken gehört? ![]() LoadSprite( Kugel ) in der Loop? Den solltest du davor laden und nachher einfach kopieren über copyentity Denke das Problem kommt vom CamCLSMode gibts irgend einen Grund warum du die Tiefendaten ( zBuffer ) löscht, die Farben jedoch nicht? ![]() Auf die Images hat das eh keine Auswirkung da die Cam die garnicht sieht am einfachsten den CamCLSMode garnet ändern und dann ma gucken ( hättest du übrigens selbst ma testen können ) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ist in deiner Spritetexture sw drin ?
@Dreamora Wenn man nicht will das bei Renderworld der Bildschirm gelöscht wird kann man es selber mit cls machen das ist der Grund . Hat er ja auch richtig gemacht wie ich das so gesehen habe . Dann kann man also im Hintergrund 2D zeichnen und darüber die 3D Szene darstellen . Die Einrückung geht hier nunmal öffters flöten . |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
nur löscht er den bildschirm eh am anfang der Loop mit CLS und das obwohl Updateworld:renderworld:flip am schluss is womit der nutze des CameraCLSMode nimmer wirklich gegeben wäre in dem zusammenhang oder sehe ich das irgendwie falsch?
ansonsten ne interessante idee, habe ich noch nie so gesehen ( hab mich allgemein leider noch nicht sehr viel mit den Cam befehlen beschäftigt von Viewport abgesehen ) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Freeman |
![]() Antworten mit Zitat ![]() |
---|---|---|
entschuldigt wenn ich nicht den Theard gemacht hab, aber ich habe das gleiche problem. Ich will nen Transparenten sprite über meine Map zeichnen allerdings wird der Sprite nur angezeigt wenn ich renderworld() in die schleife reinschreibe , allerdings hat das den blöden nachteil das der rest des Bildschirms jetzt gelöscht wird, hab auch schon etwas rumgetüftelt, habs aber wie immer nich geschafft. deshalb möcht ich mich ma kurz einklinken .
Code: [AUSKLAPPEN] A_StartwertY = 0 A_StartwertX = 0 startwertY = auflY startwertX = auflX Graphics3D 800,600,8,2 SetBuffer BackBuffer() tile = Loadimage("graphics\layer.png") tile1 = LoadImage("graphics\layer1.png") tile2 = LoadImage("graphics\layer2.png") tile3 = LoadImage("graphics\layer3.png") tile4 = LoadImage("graphics\layer4.png") tile5 = LoadImage("graphics\layer5.png") MaskImage tile1 ,239,115,255 MaskImage tile2 ,239,115,255 MaskImage tile3 ,239,115,255 MaskImage tile4 ,239,115,255 MaskImage tile5 ,239,115,255 camera = CreateCamera() sprite2 = Loadsprite("transp.bmp",1) PositionEntity sprite2,0,0,1 EntityAlpha sprite2,0.5 While Not KeyDown(1) DrawImage tile , NeuzeitTownX - scrollx,NeuzeitTownY - scrolly DrawImage tile1, NeuzeitTownX - scrollx,NeuzeitTownY - scrolly DrawImage tile2, NeuzeitTownX - scrollx,NeuzeitTownY - scrolly DrawImage tile3, NeuzeitTownX - scrollx,NeuzeitTownY - scrolly DrawImage tile4, NeuzeitTownX - scrollx,NeuzeitTownY - scrolly DrawImage tile5, NeuzeitTownX - scrollx,NeuzeitTownY - scrolly FPS() Mapscrolling() Flip Wend das ist der code ohne renderworld() |
||
MacBook | MacOSX 10.5 | 80GB HDD | 1GB | BlitzMax 1.28 |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
transparenz ( also sprite ) geht nur mit renderworld weil sprites 3D objekte sind. | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Dreamora
Der Hintergrund besteht bei ihm aus einer 2D Map die wohl nich ganz den Screen füllt darum das CLS eben . Wenn der ClsMode der Camera an wäre würde der Hintergrund wieder gelöscht und die 2D Karte wäre weg . Anders herum gehts auch nicht weil die 3D Objekte von der 2D Karte übermalt werden . Übrigens 2D und 3D sieht witzig aus wenn man als Hintergrund den Desktop nimmt für nen Bildschirmschoner und da drauf dann 3D Rendert 8) @Freeman lese mal oben , wenn du nicht willst das Renderworld den Screen löscht benutzte CameraCLSMode und schalte damit das automatische CLS ab . |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group