|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
°³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå |
java.lang.Object | +--java.awt.image.BufferStrategy
BufferStrategy
Ŭ·¡½º´Â ƯÁ¤ÀÇ Canvas
¶Ç´Â Window
»óÀÇ º¹ÀâÇÑ ¸Þ¸ð¸®¸¦ Æí¼ºÇÏ´Â ¸ÞÄ«´ÏÁòÀ» ³ªÅ¸³À´Ï´Ù. ƯÁ¤ÀÇ ¹öÆÛ ½ºÆ®·¡ÅÍÁö°¡ ±¸Çö °¡´ÉÇѰ¡ ¾î¶²°¡ ¹× ±× ±¸Çö ¹æ¹ýÀº Çϵå¿þ¾î¿Í ¼ÒÇÁÆ®¿þ¾îÀÇ Á¦ÇÑ »çÇ׿¡ ÀÇÇØ Á¤ÇØÁý´Ï´Ù. ÀÌ·¯ÇÑ Á¦ÇÑ »çÇ×Àº Canvas
¶Ç´Â Window
¸¦ ÀÛ¼ºÇÒ °æ¿ì¿¡ »ç¿ëÇÏ´Â GraphicsConfiguration
ÀÇ ±â´ÉÀ» °³ÀÔ½ÃÄÑ °ËÃâµË´Ï´Ù.
¡¸¹öÆÛ¡¹ ¹× ¡¸Ç¥¸é¡¹À̶ó°í ÇÏ´Â ¸»Àº µ¿ÀÇÀ̸ç, ºñµ¥¿Àµ¥¹ÙÀ̽º¸Þ¸ð¸®³» ¶Ç´Â ½Ã½ºÅ۸޸𸮳»¿¡¼ÀÇ ¿¬¼ÓÇÑ ¸Þ¸ð¸® area¸¦ °¡¸®Åµ´Ï´Ù.
º¹ÀâÇÑ ¹öÆÛ ½ºÆ®·¡ÅÍÁö¿¡´Â ¸î°³ÀÇ Á¾·ù°¡ ÀÖ¾î, ÀϹÝÀûÀÎ °ÍÀ¸·Î ÇØ¼´Â Â÷·ÊÂ÷·Ê ¸µ ¹öÆÛ¸µ, Blit ¹öÆÛ¸µ, ¹× ½ºÅ×·¹¿À ¹öÆÛ¸µÀÌ ÀÖ½À´Ï´Ù. ¹«¾ùº¸´Ù ÀϹÝÀûÀÎ °ÍÀº Â÷·ÊÂ÷·Ê ¸µ ¹öÆÛ¸µ (´õºí ¹öÆÛ¸µ ¶Ç´Â Æ®¸®Çà ¹öÆÛ¸µ)ÀÔ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ´ÜÀÏÀÇ ¡¸¹é ¹öÆÛ¡¹¿¡ Ç¥Çö ÇÏ°í ³ª¼, µ¥ÀÌÅ͸¦ º¹Á¦ÇÒ±î ºñµð¿À Æ÷ÀÎÅ͸¦ À̵¿ÇÏ´Â °ÍÀ¸·Î½á ´ÜÀÏ ½ºÅÜ¿¡¼ ³»¿ëÀ» ÇÁ·±Æ® (µð½ºÇ÷¹ÀÌ)¿¡ À̵¿ÇÕ´Ï´Ù. ºñµð¿À Æ÷ÀÎÅ͸¦ À̵¿ÇÏ´Â °ÍÀ¸·Î ¹öÆÛ°¡ ±³È¯µÇ¾î ÃÖÃʷΠǥÇö µÈ ¹öÆÛ ¶Ç´Â µð¹ÙÀ̽º¿¡ ÇöÀç Ç¥½ÃµÇ°í ÀÖ´Â À̹ÌÁö°¡ ¡¸ÇÁ·±Æ® ¹öÆÛ¡¹°¡ µË´Ï´Ù. À̰ÍÀº ¡¸ÆäÀÌÁöÈĸ³ÇΡ¹À̶ó°í ºÒ¸³´Ï´Ù.
´ë½Å¿¡, ºñµð¿À Æ÷ÀÎÅ͸¦ À̵¿ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, üÀγ»¿¡¼ ¼±ÇàÇØ ¹é ¹öÆÛÀÇ ³»¿ëÀ» º¹Á¦ ¶Ç´Â ¡¸Blit¡¹ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
Double buffering: *********** *********** * * ------> * * [To display] <---- * Front B * Show * Back B. * <---- Rendering * * <------ * * *********** *********** Triple buffering: [To *********** *********** *********** display] * * --------+---------+------> * * <---- * Front B * Show * Mid. B. * * Back B. * <---- Rendering * * <------ * * <----- * * *********** *********** ***********
½ºÅ×·¹¿À ¹öÆÛ¸µÀº Á¿ìÀÇ ´«¿¡ ´ëÇØ¼ ´Ù¸¥ À̹ÌÁö Ç¥Çö¸¦ ¼Æ÷Æ®ÇÏ´Â Çϵå¿þ¾î¿ëÀÔ´Ï´Ù. Â÷·ÊÂ÷·Ê ¸µ ¹öÆÛ¸µ°ú ´à¾Æ ÀÖ½À´Ï´Ù¸¸, ¾ç´«¿ëÀ¸·Î 2 °³ÀÇ ¹öÆÛ üÀÎÀÌ ÀÖ½À´Ï´Ù. 2 °³ÀÇ ¹öÆÛ üÀÎÀº µ¿½Ã¿¡ ¹Ù²ò´Ï´Ù.
Stereo buffering: *********** *********** * * ------> * * [To left eye] <---- * Front B * * Back B. * <---- Rendering * * <------ * * *********** *********** Show *********** *********** * * ------> * * [To right eye] <--- * Front B * * Back B. * <---- Rendering * * <------ * * *********** ***********
¹öÆÛ ½ºÆ®·¡ÅÍÁöÀÇ ÀÛ¼º°ú »ç¿ëÀÇ ¿¹¸¦ ³ªÅ¸³À´Ï´Ù.
// Check the capabilities of the GraphicsConfiguration
...
// Create our component
Window w = new Window(gc);
// Show our window
w.setVisible(true);
// Create a general double-buffering strategy
w.createBufferStrategy(2);
BufferStrategy strategy = w.getBufferStrategy();
// Render loop
while (! done) {
Graphics g = strategy.getDrawGraphics();
// Draw to graphics
...
strategy.show();
}
// Dispose the window
w.setVisible(false);
w.dispose();
Component
,
GraphicsConfiguration
»ý¼ºÀÚÀÇ °³¿ä | |
BufferStrategy ()
|
¸Þ¼ÒµåÀÇ °³¿ä | |
abstract boolean |
contentsLost ()
getDrawGraphics ¿¡ÀÇ ¸¶Áö¸· È£ÃâÀ» À§Çؼ(¶§¹®¿¡) Ç¥Çö ¹öÆÛ°¡ ¼Ò½ÇÇß´ÂÁö ¾î¶°Çß´ÂÁö¸¦ µ¹·ÁÁÝ´Ï´Ù. |
abstract boolean |
contentsRestored ()
Ç¥Çö ¹öÆÛ°¡ ¼Ò½Ç »óÅ·κÎÅÍ ÃÖ±Ù º¹¿øµÇ¾î µðÆúÆ®ÀÇ ¹é±×¶ó¿îµå Ä®¶ó (Èò»ö)¿¡ ÀçÃʱâȵǾú´ÂÁö ¾î¶°Çß´ÂÁö¸¦ µ¹·ÁÁÝ´Ï´Ù. |
abstract BufferCapabilities |
getCapabilities ()
|
abstract Graphics |
getDrawGraphics ()
|
abstract void |
show ()
¸Þ¸ð¸®¸¦ º¹Á¦ (Blit)ÇÒ±î µð½ºÇ÷¹ÀÌ Æ÷ÀÎÅ͸¦ º¯°æÇÏ´Â (¹Ù²Û´Ù) °Í¿¡ µû¶ó, ´ÙÀ½¿¡ »ç¿ë °¡´ÉÇÑ ¹öÆÛ¸¦ °¡½Ã »óÅ·ΠÇÕ´Ï´Ù. |
Ŭ·¡½º java.lang. Object ¿¡¼ »ó¼Ó¹ÞÀº ¸Þ¼Òµå |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
»ý¼ºÀÚÀÇ »ó¼¼ |
public BufferStrategy()
¸Þ¼ÒµåÀÇ »ó¼¼ |
public abstract BufferCapabilities getCapabilities()
public abstract Graphics getDrawGraphics()
public abstract boolean contentsLost()
getDrawGraphics
¿¡ÀÇ ¸¶Áö¸· È£ÃâÀ» À§Çؼ(¶§¹®¿¡) Ç¥Çö ¹öÆÛ°¡ ¼Ò½ÇÇß´ÂÁö ¾î¶°Çß´ÂÁö¸¦ µ¹·ÁÁÝ´Ï´Ù. ¹öÆÛ ½ºÆ®·¡ÅÍÁö³»ÀÇ ¹öÆÛ´Â Åë»ó,VolatileImage
ÇüÀ̱â (À§ÇØ)¶§¹®¿¡ ¼Ò½ÇÇÏ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ¼Ò½Ç ¹öÆÛ¿¡ ´ëÇØ¼´Â VolatileImage
¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä.
VolatileImage
public abstract boolean contentsRestored()
VolatileImage
ÇüÀ̱â (À§ÇØ)¶§¹®¿¡ ¼Ò½ÇÇÏ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. getDrawGraphics
¿¡ÀÇ ¸¶Áö¸· È£ÃâÀ» À§Çؼ(¶§¹®¿¡) ¼Ò½Ç »óÅ¿¡ ÀÖ´ø Ç¥¸éÀÌ ÃÖ±Ù º¹¿øµÇ¾úÀ» °æ¿ì´Â Àçpaint°¡ ÇÊ¿äÇÑ Àϵµ ÀÖ½À´Ï´Ù. ¼Ò½Ç ¹öÆÛ¿¡ ´ëÇØ¼´Â VolatileImage
¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä.
VolatileImage
public abstract void show()
|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
°³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå |
Java, Java 2 D, ¹× JDBC ´Â ¹Ì±¹ ¹× ±× ¿ÜÀÇ ³ª¶ó¿¡ ÀÖ¾î¼ÀÇ ¹Ì±¹ Sun Microsystems, Inc. ÀÇ »óÇ¥ ȤÀº µî·Ï»óÇ¥ÀÔ´Ï´Ù.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.