|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
| °³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå | |||||||||
java.lang.Objectjava.awt.image.BufferStrategy
public abstract class BufferStrategy
BufferStrategy Ŭ·¡½º´Â ƯÁ¤ÀÇ Canvas ¶Ç´Â Window »óÀÇ º¹ÀâÇÑ ¸Þ¸ð¸®¸¦ Æí¼ºÇÏ´Â ¸ÞÄ«´ÏÁòÀ» ³ªÅ¸³À´Ï´Ù. ƯÁ¤ÀÇ ¹öÆÛ ½ºÆ®·¡ÅÍÁö°¡ ±¸Çö °¡´ÉÇѰ¡ ¾î¶²°¡ ¹× ±× ±¸Çö ¹æ¹ýÀº Çϵå¿þ¾î¿Í ¼ÒÇÁÆ®¿þ¾îÀÇ Á¦ÇÑ »çÇ׿¡ ÀÇÇØ Á¤ÇØÁý´Ï´Ù. ÀÌ·¯ÇÑ Á¦ÇÑ »çÇ×Àº, Canvas ¶Ç´Â Window¸¦ ÀÛ¼ºÇÒ °æ¿ì¿¡ »ç¿ëÇÏ´Â GraphicsConfiguration
±â´ÉÀ» °³ÀÔ½ÃÄÑ °ËÃâµË´Ï´Ù.
¡¸¹öÆÛ¡¹ ¹× ¡¸Ç¥¸é¡¹À̶ó°í ÇÏ´Â ¸»Àº µ¿ÀÇÀ̸ç, ºñµ¥¿Àµ¥¹ÙÀ̽º¸Þ¸ð¸®³» ¶Ç´Â ½Ã½ºÅ۸޸𸮳»¿¡¼ÀÇ ¿¬¼ÓÇÑ ¸Þ¸ð¸® ¿µ¿ªÀ» °¡¸®Åµ´Ï´Ù.
º¹ÀâÇÑ ¹öÆÛ ½ºÆ®·¡ÅÍÁö¿¡´Â ¸î°³ÀÇ Á¾·ù°¡ ÀÖ¾î, ÀϹÝÀûÀÎ °ÍÀ¸·Î ÇØ¼´Â Â÷·ÊÂ÷·Ê ¸µ ¹öÆÛ¸µ, 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¿¡
ÀÇ ¸¶Áö¸· È£ÃâÀ» À§Çؼ ¼Ò½Ç »óÅ¿¡ ÀÖ´ø Ç¥¸éÀÌ ÃÖ±Ù º¹¿øµÇ¾úÀ» °æ¿ì´Â ÀçÆäÀÎÆ®°¡ ÇÊ¿äÇÑ Àϵµ ÀÖ½À´Ï´Ù. ¼Ò½Ç ¹öÆÛ¿¡ ´ëÇØ¼´Â VolatileImage¸¦ ÂüÁ¶ÇϽʽÿÀ.
VolatileImage public abstract void show()
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
| °³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå | |||||||||
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.