Sprite skalieren ..
Übersicht

![]() |
Verge3000Betreff: Sprite skalieren .. |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wie skaliere ich ein Sprite, das ein Bild von 800x600 Größe ist exakt und passend auf den Bildschirm, kurz, so dass es Originalgröße annimmt. Denn bei mir ist ein Sprite von Grund auf erstmal verzerrt. | ||
Woher soll ich wissen was ich denke, bevor ich höre was ich sage? |
![]() |
ChrisAttack |
![]() Antworten mit Zitat ![]() |
---|---|---|
scalesprite image_handel,x,y | ||
B3D
MSVC++ DX9SDK |
![]() |
Verge3000 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja der Befehl ist mir klar. Aber bei
scalesprite titelbild,1,1 ist das Bild verzerrt. Ich bekomm es so nicht auf Originalgröße. Das wäre ja rumprobieren ohne Ende. |
||
Woher soll ich wissen was ich denke, bevor ich höre was ich sage? |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
muss im verhältnis 4 : 3 gescaled werden, wie der bildschirm ja auch is | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Verge3000 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sagt mir nun leider wenig. Wie müsste der Befehl dann lauten ?!? ![]() |
||
Woher soll ich wissen was ich denke, bevor ich höre was ich sage? |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ScaleFactor = 200
scalesprite sprite, 4 * scalefactor, 3 * scalefactor bitte erst überlegen, dann fragen. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
imagodespira |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich bin mir nicht sicher, aber ein Sprite wird automatisch von Blitz auf eine größe wie 256x256, 512x512, 1024x1024 usw. skaliert... also wird es schwierig das auf 800x600 exakt zu bekommen...
liege ich da richtig, oder falsch ???? Wenn richtig, dann auf 1024x1024 in der Bildbearbeitung skalieren und dann in Blitz in das richtige verhältnis rechnen lassen... (mit scaleSprite() ). ... wie gesagt, ich kann mich auch täuschen. Für was brauchst Du so ein großés Sprite? Für ein Hintergrundbild kannst du doch das in 2d machen und den Rest darüberlegen als 3D. So mach ich das... Hier noch ein Link, damit es Pixelgenau bleibt: http://www.unrealsoftware.de/n..._bb_3dto2d Das ist wichtig für HUD´s, vielleicht hilft Dir das weiter. |
||
![]() |
Verge3000 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich will einfach nur ein Titelbild machen das einfadet und ausfadet. Hier der Code:
Zitat: Function intro()
kamera=CreateCamera() PositionEntity kamera,0,0,-1 titelbild=LoadSprite("grafik\v-titelbild.jpg") SpriteViewMode titelbild,1 For i# = 0 To 100 EntityAlpha titelbild,i/100 UpdateWorld RenderWorld Flip Next WaitKey For i# = 100 To 0 Step -1 EntityAlpha titelbild,i/100 UpdateWorld RenderWorld Flip Next FreeEntity titelbild Cls ; ; Intro endet ; End Function Leider ist das 800x600 Bild dann sehr in der Höhe verzerrt und so. Graphics3D ist bei mir auch 800x600. Das Sprite also das Bild ist auch 800x600. Doch ich bekomme es nicht genau skaliert. |
||
Woher soll ich wissen was ich denke, bevor ich höre was ich sage? |
furbolg |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ProjCamMode oder so | ||
![]() |
Verge3000 |
![]() Antworten mit Zitat ![]() |
---|---|---|
So, so funktioniert es im Grunde genommen nun:
Zitat: ;
; Intro beginnt ; intro() Function intro() kamera=CreateCamera() titelbild=LoadSprite("grafik\v-titelbild.jpg") ScaleSprite titelbild,800,600 PositionEntity titelbild,((0)*2)-800+800,-((0)*2)+600-600,800 SpriteViewMode titelbild,1 For i# = 0 To 100 EntityAlpha titelbild,i/100 UpdateWorld RenderWorld Flip Next WaitKey For i# = 100 To 0 Step -1 EntityAlpha titelbild,i/100 UpdateWorld RenderWorld Flip Next FreeEntity titelbild FreeEntity kamera Cls ; ; Intro endet ; End Function Das Bild ist nun genau skaliert, jedoch trotzdem ich sag mal ein wenig verpixelt oder verzerrt. Nicht so klar wie ein Image. Kann man nicht ein Image faden oder ist noch was unkorrekt an dem Code? |
||
Woher soll ich wissen was ich denke, bevor ich höre was ich sage? |
![]() |
imagodespira |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du kannst das Problem umgehen, wenn Du ein Hinterundbild als Image einlädst:
hg = loadimage("bild.bmp") drawimage hg, 0, 0 ;ausserhalb der Schleife, gleich nach dem Laden ... und dann nicht das Bild fadest, sondern ein schwarzes Sprite erstellst und das fadest... fade = createSprite() EntityColor fade, 0, 0, 0 ;die Farbe des Hintergrundes Bei der Kamera musst Du dann aber den CLSMode ändern: CameraClsMode kamera, 0, 1 ;dann sollte der Hintergrund nicht gelöscht werden |
||
![]() |
Verge3000 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Interessanter Ansatz. Klingt gut und probier ich heute Abend wenn ich von der Arbeit wieder zuhaus bin mal aus. | ||
Woher soll ich wissen was ich denke, bevor ich höre was ich sage? |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group