Jump to content
Jagware
Sign in to follow this  
Orion_

Scaled Sprite

Recommended Posts

Orion_    1

Hello, I'm trying to use the "scaling" feature of the OP, but as always with the Jaguar, using the hardware is good for getting headaches

I'm trying a simple Zoom x2 sprite (160x120 -> 320x240)

It's not working on real hardware, but it works under Virtual Jaguar (so I must be close)

 

It seems not to be the HSCALE/VSCALE/REMAINDER values, because whatever value I try, I always get the same result on screen on real hardware.

 

opvj.png

 

on real hardware:

optv.jpg

 

why ? :(

Share this post


Link to post
Share on other sites
sh3-rg    6

It's hard to see in the photo of the TV, but does the first line of the image look correct? It doesn't look like the deckchair bars but with the bleeding it's hard to tell if it's the same as the emulated image.

Share this post


Link to post
Share on other sites
Shamus    0

Did you try the same code with a non-scaled bitmap, and does that work on real hardware?

 

Also, if you could post a minimal code example that displays the problem, that would go a long way towards helping figure out the problem (no need to post image files, I can insert my own). :)

Share this post


Link to post
Share on other sites
SCPCD    0

It's probably because your scaled object is 16-byte aligned instead of 32-byte aligned. :P

 

Scaled object should be 32-byte aligned.

 

Share this post


Link to post
Share on other sites
Orion_    1

yes, my OPlist was 32bytes aligned, but because of the 2 branch object at the beginning, the first sprite becomes 16bytes aligned...

now it's working, but I have a strange behavior, the image "jumps" each 1 or 2 seconds, it seems that the remainder value have something to do with this (maybe it overlap the VDE or something)

I tried ((1+2)<<5)-1, or (2<<5)-1 but still the same problem :/

(a "0" remainder gives very strange line drawn on screen :D)

 

Share this post


Link to post
Share on other sites
SCPCD    0
@SCPCD: How does that work? Does the OP see that it's a scaled bitmap and then decide to drop the low 4 bits to get the rest of the data?

The OP detect that it's a scaled object and read the extra phrase at [ObjectAddr | (1<<4)] that is wrong if the object is not at an 32-byte aligned addr.

:)

 

Share this post


Link to post
Share on other sites
Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×