Java-Gaming.org Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (769)
Games in Android Showcase (230)
games submitted by our members
Games in WIP (855)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: 1 [2]
  ignore  |  Print  
  minimizing image bit depth and resolution for better performance?  (Read 9722 times)
0 Members and 1 Guest are viewing this topic.
Offline trembovetski

Senior Devvie




If only I knew what I'm talking about!


« Reply #30 - Posted 2005-09-13 14:58:51 »

I think the problem could be a rounding error somewhere. Up to a point your rotate(angle)...rotate(-angle)
turn the transform on and off, but at some angle the restored transform that's left after rotate(-angle) may
have some tiny amount of rotation left because of rounding error, which means that all the rest of the
rendering will be rendered transformed, even though you don't see it.

So one suggestion would be to instead of rotate/unrotate try savetransform/rotate/restoretransform .

Also, I can't find it, but I believe there was a bug fixed in mustang (jdk6.0) which at least partly addressed
this. Could you please try mustang (http://mustang.dev/java.net)?

Thanks,
  Dmitri
Java2D Team
Offline rickyhaggett

Junior Newbie





« Reply #31 - Posted 2005-09-13 15:29:23 »

This sounds pretty plausible, and it reminded me of the last thing I did in desperation last night before going to bed - I tried casting my double to a float, i.e.

g.rotate((float)angle);
...
g.rotate(-(float)angle);

This seemed to have the effect of changing the angles for which the slow-down occured (so angles which previously were fine now caused problems, and angles which were slow were now fine).

I'll try your suggestion this evening, and check out mustang too..

Cheers,

Ricky
Offline rickyhaggett

Junior Newbie





« Reply #32 - Posted 2005-09-13 19:34:28 »

Marvellous!  That fix works - thanks Dmitri.

I now have:

AffineTransform transform = g.getTransform();
g.translate(x, y);
g.rotate(angle);
...
g.setTransform(transform);

.. and I'm back in the wonderful world of 60fps. I'm guessing this way is also slightly more optimal.

For reference, the values causing the trouble were:

0.41887902047863906 (Math.toRadians(24))
6.073745796940266 (Math.toRadians(348))
1.4311699866353502 (Math.toRadians(82)).

Thanks for the help. I've downloaded Mustang - will check it out soon

Ricky


Pages: 1 [2]
  ignore  |  Print  
 
 

 
EgonOlsen (1574 views)
2018-06-10 19:43:48

EgonOlsen (1658 views)
2018-06-10 19:43:44

EgonOlsen (1145 views)
2018-06-10 19:43:20

DesertCoockie (1573 views)
2018-05-13 18:23:11

nelsongames (1174 views)
2018-04-24 18:15:36

nelsongames (1665 views)
2018-04-24 18:14:32

ivj94 (2421 views)
2018-03-24 14:47:39

ivj94 (1631 views)
2018-03-24 14:46:31

ivj94 (2719 views)
2018-03-24 14:43:53

Solater (884 views)
2018-03-17 05:04:08
Deployment and Packaging
by mudlee
2018-08-22 18:09:50

Java Gaming Resources
by gouessej
2018-08-22 08:19:41

Deployment and Packaging
by gouessej
2018-08-22 08:04:08

Deployment and Packaging
by gouessej
2018-08-22 08:03:45

Deployment and Packaging
by philfrei
2018-08-20 02:33:38

Deployment and Packaging
by philfrei
2018-08-20 02:29:55

Deployment and Packaging
by philfrei
2018-08-19 23:56:20

Deployment and Packaging
by philfrei
2018-08-19 23:54:46
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!