|
||
|
GP Mailing List
ATXGPSIG List
|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [gameprogrammer] Re: A newbie Java Question - GUI/Animation etc...
Hello Richard.
I know that in the Killer Game Programming code the
author used a double-buffering command:
setDoubleBuffered(true/false);
which is from JPanel/JComponent, and this is also
supposed to eliminate flicker, I believe.
Anyway, a custom paint function would also work.
I'm working on making some techniques work for a
java game. I wish you luck with your efforts.
Tom.
--- richard sabbarton <richard.sabbarton@gmail.com>
wrote:
> Hi Tom,
>
> I downloaded the Java3D API from Sun. It looks good
> but I think it
> was a bit much for what I was looking for. Anyway,
> after a little
> further digging I managed to work out how to do what
> I was trying to
> do.
>
> The key to getting rid of the flicker was not using
> the paint()
> function but instead, using my own.
>
> Firstly, I created a new Image and then obtained the
> Graphics
> interface for the image. This gave me my offscreen
> location to
> assemble my GUI. I then use this image and draw it
> to the Graphics
> interface of my Applet
>
> // Variables and members
> Image offScreenImage;
> Graphics offScreenGraphics;
> Graphics onScreenGraphics;
>
> In the init function I run the following:
>
> offScreenImage = createImage( width, height );
> offScreenGraphics =
> offScreenImage.getGraphics();
> onScreenGraphics = this.getGraphics();
>
>
> I then setup a timer to keep the screen up-to-date
> every xxx
> milliseconds which basically runs the following:
>
> // Draw everything I need to my offscreen
> Graphics Interface
> offScreenGraphics.drawImage( etc. etc. etc. );
> offScreenGraphics.drawImage( etc. etc. etc. );
> offScreenGraphics.drawImage( etc. etc. etc. );
>
> // Then draw the whole thing to screen with the
> Image Interface
> onScreenGraphics.drawImage(offScreenImage, xxx ,
> yyyy , this );
>
> Seems to work quite well for simple graphics and GUI
> etc. If I want
> anything more complex then I will go down the Java3D
> route but for now
> this will do.
>
> Regards
>
> Richard
>
>
>
> On 04/02/2008, Tom Clifford <tjclifford@yahoo.com>
> wrote:
> > Java has it's own Java3D interface, found at:
> >
> > http://java.sun.com/products/java-media/3D/
> >
> > It allows you to do what is called active
> rendering,
> > which is similar to the c/c++ WinMain/WndProc
> loops,
> > that uses double-buffering,
> > or you can create the objects you want and allow
> > Java3D to do the looping for you, while doing
> > animation with their Behavior objects.
> >
> > There are some good java examples with source
> > code, at Killer Game Programming with Java, by
> > Andrew Davison
> > O'Reilly, May 2005
> > ISBN: 0-596-00730-2
> > http://www.oreilly.com/catalog/killergame/
> > Web Site for the book:
> > http://fivedots.coe.psu.ac.th/~ad/jg
> >
> > code downloads and instructions at:
> >
> > http://fivedots.coe.psu.ac.th/~ad/jg/code/
> >
> > Tom C.
> >
> >
> > --- richard sabbarton
> <richard.sabbarton@gmail.com>
> > wrote:
> >
> > > Hi Guys,
> > >
> > > In C++ on windows I would use animation by
> creating
> > > a compatible
> > > device context in memory with
> CreateCompatibleDC().
> > > I would write my
> > > game and all of its elements to the MemoryDC and
> > > then use something
> > > like BitBlt() to push it to my main DC.
> > >
> > > I have recently started learning Java and I want
> to
> > > perform a similar
> > > function. I want to write all of the elements
> to
> > > memory and then
> > > transfer it to the screen every x milliseconds.
> > > This is to eliminate
> > > flicker etc.
> > >
> > > I have been looking online through tutorials
> etc.
> > > and I can't seem to
> > > find a description of how to do this. Do I need
> to
> > > use java.awt or
> > > should I use javax.swing.
> > >
> > > Any thoughts on how to do this or suggestions on
> > > greating a game
> > > display in Java?
> > >
> > > Initially this is for display in an Applet in a
> web
> > > page.
> > >
> > > Regards
> > >
> > > Richard
> > >
> > > ---------------------
> > > To unsubscribe go to
> > > http://gameprogrammer.com/mailinglist.html
> > >
> > >
> > >
> >
> >
> >
> >
>
____________________________________________________________________________________
> > Be a better friend, newshound, and
> > know-it-all with Yahoo! Mobile. Try it now.
>
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
> >
> >
> > ---------------------
> > To unsubscribe go to
> http://gameprogrammer.com/mailinglist.html
> >
> >
> >
>
> ---------------------
> To unsubscribe go to
> http://gameprogrammer.com/mailinglist.html
>
>
>
____________________________________________________________________________________
Looking for last minute shopping deals?
Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping
---------------------
To unsubscribe go to http://gameprogrammer.com/mailinglist.html
|
|