Seite 2 von 3

Verfasst: 30.05.2006 14:09
von Kurzer
Kaeru Gaman hat geschrieben:also, wenn du die karten in 256x256 malst, darstellen kannst du sie so rechteckig wie du lustig bist, aber die eigentliche texture muss 2^x*2^x sein...
Ach so, das teste ich mal!

Gruß Markus

Verfasst: 30.05.2006 14:10
von Kaeru Gaman
> Das kann es nicht sein, die sind 96 x 128 pixel groß.

das meinte ich mit zweierpotenzen und quadratisch.

mach die vorlage in 128x128 und stell sie 96x128 dar... ;)

[edit]
XD wir tippen beide zu schnell... :lol:

Verfasst: 30.05.2006 14:15
von Xaby
Ich hätte nicht gedacht, dass ich euch einen Hinweis geben kann. Ich selbst hab ihn übrigens bei meinem Problem mal von unserem hochgeschätzen Stargäte bekommen.

Hoch Lebe Stargäte. Ein drefaches Hoch auf Stargäte!!!

Hipp Hipp ...

:mrgreen:

Kann man sich ja nur wünschen, dass ich dann später auch wieder so großartig von euch unterstützt werde. :allright:

Verfasst: 30.05.2006 14:23
von Kurzer
Kaeru Gaman hat geschrieben:> Das kann es nicht sein, die sind 96 x 128 pixel groß.
das meinte ich mit zweierpotenzen und quadratisch.
mach die vorlage in 128x128 und stell sie 96x128 dar... ;)
:o Jo moi! leck mi om oarsch!

Genau das isses! Unglaublich, die Sprites müssen quadratisch sein!

[vor-ehrfurcht-niederkniender-smilie] :)

Sauber, Jungs! :allright:

Kaeru Gaman hat geschrieben:XD wir tippen beide zu schnell... :lol:

Oder wir lesen zu langsam :lol:

Verfasst: 30.05.2006 14:28
von Kaeru Gaman
> [vor-ehrfurcht-niederkniender-smilie]

dein findest du unter "Weitere Smilies ansehen"
und der sieht so aus: :praise:

:mrgreen: aber lass ma stecken, passt scho

Verfasst: 30.05.2006 14:31
von DarkDragon
Quadratisch brauchen sie nichtmal zu sein, es ist nur wichtig auf die 2er Potenz zu achten. So kenne ich das zumindest aus normalen Engines und Renderern.

Verfasst: 30.05.2006 14:35
von Kaeru Gaman
@DD

da hatte ich letztens mit Zaphod drüber geredet.
bei rechteckig mit zweierpotenzen sind die einschränkungen im modelltyp wohl geringer, aber auch dort ist keine universelle funktionalität gewährleistet. quadratisch is auf nummer sicher.

Verfasst: 30.05.2006 14:53
von Kurzer
Kaeru Gaman hat geschrieben:> [vor-ehrfurcht-niederkniender-smilie]
dein findest du unter "Weitere Smilies ansehen"
und der sieht so aus: :praise:
Jou, den habe ich gesucht. :)

Aber die Euphorie ebbt ab, denn ich stelle fest, daß mein Code nur im Editor compiliert unter Win2K läuft.
Baue ich eine Exe, dann setzt meine Fehlerauswertung ein. Es kommt die Meldung "Die Kartenbilder konnten nicht geladen werden!"... siehe code unten:

Code: Alles auswählen

Procedure LoadCards()
  Protected SpriteNr.w
  
  SpriteNr = 0

  ; Eine KartenrRückseite lesen
  Result = $ffffffff & LoadSprite(SpriteNr, "Cards\0.bmp", #PB_Sprite_Texture)
  Result = Result & CreateSprite3D(SpriteNr, SpriteNr)
  
  ; Die 144 normalen Karten lesen
  For Count1 = 1 To 12
    For Count2 = 1 To 12
      SpriteNr + 1
      Result = Result & LoadSprite(SpriteNr, "Cards" + Str(Count2) + ".bmp", #PB_Sprite_Texture)
      Result = Result & CreateSprite3D(SpriteNr, SpriteNr)
    Next Count2
  Next Count1

  ; 18 SkipBo-Karten lesen
  For Count1 = 0 To 17
    SpriteNr + 1
    Result = Result & LoadSprite(SpriteNr, "Cards\13.bmp", #PB_Sprite_Texture)
    Result = Result & CreateSprite3D(SpriteNr, SpriteNr)
  Next Count1

  ; HIER ##################################
  Debug Result
  If Result = 0
    MessageRequester("Fehler", "Die Kartenbilder konnten nicht geladen werden!", 0)
    ProcedureReturn = #False
  EndIf

  ProcedureReturn = #True

EndProcedure
Lasse ich mir Result mittels Debug Result beim Start im Editor ausgeben, dann ist es immer > 0. Aber baue ich eine Exe, dann ist es scheinbar immer 0. :-(
Leider weiß ich (noch) nicht, wie ich eine Exe debuggen kann.

Gruß Markus

Verfasst: 30.05.2006 15:01
von Kaeru Gaman
:shock: öh.. das was du da mit dem result machst is aber ungewöhnlich...

*erstma genau les*

...

*grübel*

hm.. also, wenn zwei der aufgerufenen befehle unterschiedliche erfolgsmeldungen rausgeben, können die sich trotzdem gegenseitig nullen.

..allerdings sollte es dann auch im editor nicht funktionieren...


check mal die pfade. wo die .exe steht, wo deine ressourcen stehen, etc.

weiterhin such mal im forum. ts-soft hatte schon öfters ein trickreiches code-snippet gepostet, das den aktuellen pfad der ausführenden exe ermittelt, damit im multitasking bei win nix schief gehen kann...

Verfasst: 30.05.2006 15:12
von Kurzer
Kaeru Gaman hat geschrieben::shock: öh.. das was du da mit dem result machst is aber ungewöhnlich...
*erstma genau les*
...
*grübel*
hm.. also, wenn zwei der aufgerufenen befehle unterschiedliche erfolgsmeldungen rausgeben, können die sich trotzdem gegenseitig nullen.
Hm, ich dachte das mit dem Result wäre sicher so, aber jetzt wo Du es sagst...
Eigentlich will ich mir ne If/EndIf-Wüste damit sparen.

[edit] Evtl. wird so nen Schuh draus:

Code: Alles auswählen

Result = 1
Result = Result * [Befehl...]
Result = Result * [Befehl...]
Result = Result * [Befehl...]
Result = Result * [Befehl...]

If Result 0 =
  Meckermeldung...
EndIf
[/edit]


Wegen des Exe-Pfads, da gucke ich mal (obwohl, unter Win98SE läuft die Exe anstandslos).

Gruß Markus

PS: Kann ich irgendwie Debuggerausgaben von der Exe heraus machen?