E D R , A S I H C RSS

Double Buffering

ํ™”๋ฉด์˜ ์ด๋ฏธ์ง€์˜ ๋ณ€๊ฒฝ์‹œ์— ๊นœ๋นก์ž„์„ ์—†์• ๋Š” ๊ธฐ๋ฒ•
----

1. ์ •์˜

  • ํ™”๋ฉด์— ๊ทธ๋ฆผ์„ ๊ทธ๋ฆด๋•Œ ์ผ์ผํžˆ ๊ทธ๋ฆผ์„ ํ™”๋ฉด์—๋‹ค ์ฐ์–ด์ฃผ๊ฒŒ ๋˜๋ฉด ๊นœ๋ฐ•๊ฑฐ๋ฆผ์ด ๋„ˆ๋ฌด ์‹ฌํ•ด์ง„๋‹ค.
  • ๊ทธ๋ž˜์„œ ํ™”๋ฉด์— ๊ทธ๋ฆผ์„ ์ฐ์–ด์ค„ ์˜์—ญ๊ณผ ๋˜‘๊ฐ™์€ ํฌ๊ธฐ์˜ ๊ฐ€์ƒ์˜ ๋ฒ„ํผ๋ฅผ ๋งŒ๋“ค์–ด์„œ ๊ฑฐ๊ธฐ๋‹ค ๋‹ค ์ฐ์€๋‹ค์Œ ํ•œ๋ฒˆ์— ํ™”๋ฉด์œผ๋กœ ์˜ฎ๊ฒจ์ฃผ๋Š” ๊ธฐ๋ฒ•์ด๋‹ค.
  • ํ•ด๋ณด๋ฉด ๊ต‰์žฅํžˆ ๋ถ€๋“œ๋Ÿฝ๋‹ค.

2. ์ •์˜2

  1. ํ™”๋ฉด์— ๊ทธ๋ฆผ ์ค‘ ์ผ๋ถ€๋ฅผ ๋ณ€๊ฒฝ, ์ด๋™ ํ• ๋•Œ(๊ณต์˜ ์›€์ง์ž„ ๋”ฐ์œ„) ๊ธฐ์กด์˜ ํ™”๋ฉด์„ ์ผ๋ถ€ ์ง€์šฐ๊ณ  ์ƒˆ๋กœ์šด ๊ทธ๋ฆผ์„ ๊ทธ๋ ค์•ผ ํ•œ๋‹ค.
  2. ๋งŒ์•ฝ ์ƒˆ๋กœ ๊ทธ๋ ค์งˆ ๊ทธ๋ฆผ์ด ๊ธฐ์กด์˜ ์ง€์›Œ์งˆ ํ™”๋ฉด์— ๊ทธ๋ ค์ง„๋‹ค๋ฉด, ํ™”๋ฉด์„ ๋ณด๋Š” ์‚ฌ์šฉ์ž๋Š” ์ง€์›Œ์ง„ ์ˆœ๊ฐ„์„ ๋А๋ผ๊ฒŒ ๋œ๋‹ค.(๊ฐœ๋… ์˜ˆ์ œ ์ฐธ๊ณ ) ์ด๋Ÿฐ ๊ณต๋ฐฑ์˜ ์ˆœ๊ฐ„์„ ์—†์• ๊ธฐ ์œ„ํ•˜์—ฌ ์ƒˆ๋กœ ๊ทธ๋ ค์งˆ ๊ทธ๋ฆผ๊ณผ ๋ฐฐ๊ฒฝ์„ ๋™์‹œ์— ๊ทธ๋ฆฌ๋Š” ๊ธฐ๋ฒ•์ด๋‹ค.

2.1. ๊ฐœ๋… ์˜ˆ์ œ

  1. ์˜ˆ1) ๋”๋ธ”๋ฒ„ํผ๋ง ๋ฏธ์‚ฌ์šฉ์‹œ
    ~cpp 
    โ–ฃโ–ฃโ–ฃโ–ฃโ–ฃ
    
    ์ด์ „ ์ด๋ฏธ์ง€๋ฅผ ์ง€์šด๋‹ค. (๋ฐฐ๊ฒฝ๋งŒ ๋‚˜์˜ค๋Š” ๊ณต๋ฐฑ ์ˆœ๊ฐ„, ๊นœ๋นก์ž„ ์œ ๋ฐœ, ์ด ์ˆœ๊ฐ„์„ ์—†์• ๋Š” ๊ฒƒ์ด ๋”๋ธ” ๋ฒ„ํผ๋ง ๋ชฉ์ )
    ~cpp 
    
    ๋ณ€๊ฒฝ๋œ ์œ„์น˜์— ๊ทธ๋ฆผ์„ ๊ทธ๋ฆฐ๋‹ค.
    ~cpp 
         โ–ฃโ–ฃโ–ฃโ–ฃโ–ฃ
    
  2. ์˜ˆ2) ๋”๋ธ”๋ฒ„ํผ๋ง ์‚ฌ์šฉ์‹œ
    ~cpp 
    โ–ฃโ–ฃโ–ฃโ–ฃโ–ฃ
    
    ๋ฐฐ๊ฒฝ๊ณผ ํ•จ๊ป˜ ๊ทธ๋ฆผ์„ ๊ทธ๋ฆฐ๋‹ค.
    ~cpp 
         โ–ฃโ–ฃโ–ฃโ–ฃโ–ฃ
    

3. ์ด ๊ธ€์„ ๋‚จ๊ธฐ๊ฒŒ ๋œ ์ด์œ 

  • ["Lovelyboy^_^"]๊ฐ€ ๋ป‘ํ•˜๋ฉด ์งœ๋…ผ ์†Œ์Šค๋ฅผ ๋‚ ๋ ค๋ฒ„๋ฆฌ๋Š” ์œ„ํ—˜ํ•œ ๋„˜์ด๋ผ์„œ..--; ๋ฌธ์„œ๋กœ ๋‚จ๊ฒจ๋†“์œผ๋ฉด
    ๋‚˜์ค‘์— ๋‹ค์‹œ ํ• ๋•Œ ๋„์›€์ด ๋˜์ง€ ์•Š์„๊นŒ๋ผ๋Š” ์ƒ๊ฐ--;

4. ์˜ˆ์ œ

  • ์ œ๊ฐ€ ๋”๋ธ” ๋ฒ„ํผ๋ง์„ ์ œ๋Œ€๋กœ ์ดํ•ด๋ชปํ–ˆ์—ˆ๋”๊ตฐ์š”. ๋˜ ์˜ค๋žœ๋งŒ์— ๋ณด๋‹ˆ๊นŒ ์ œ๊ฐ€ ๋ญ˜ ์จ๋…ผ๊ฑด์ง€๋„ ๋ชจ๋ฅด๊ฒ ๋‹ค๋Š” ..--; ๋‹ค์‹œ ์”๋‹ˆ๋‹ค. ์•Œ์นด๋…ธ์ด๋“œ๊ฐ€ ์—†์–ด์ ธ์„œ ๊ทธ๋ƒฅ ๋Œ€์ถฉ ๋งŒ๋“ค์–ด๋ดค์Šต๋‹ˆ๋‹ค.

    ~cpp 
    class CArcanoidView : public CView
    {
    private:
    	CArcanoidDoc* pDoc;
    
    	CDC m_MemDC;                   // ๋ฉ”๋ชจ๋ฆฌ DC
    	CBitmap m_MemBitmap;           // ๋ฉ”๋ชจ๋ฆฌ ๋น„ํŠธ๋งต
    
    	CDC m_BackgroundDC;            // ๋ฐฐ๊ฒฝ DC
    	CBitmap m_BackgroundBitmap;    // ๋ฐฐ๊ฒฝ ๋น„ํŠธ๋งต
     
     	CDC m_ShuttleDC;               // ๋น„ํ–‰๊ธฐ DC
             CBitmap m_ShuttleBitmap;       // ๋น„ํ–‰๊ธฐ ๋น„ํŠธ๋งต
    ....
    ....
    
    void CArcanoidView::OnInitialUpdate()
    {
    	CView::OnInitialUpdate();
    
    	// TODO: ์—ฌ๊ธฐ์— ํŠน์ˆ˜ํ™”๋œ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ ๋ฐ/๋˜๋Š” ๊ธฐ๋ณธ ํด๋ž˜์Šค๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.
    	pDoc = GetDocument();
    	ASSERT_VALID(pDoc);
    
    	CClientDC dc(this);
    	m_MemDC.CreateCompatibleDC(&dc);                      // ํ˜„์žฌ DC์™€ ํ˜ธํ™˜๋œ ๋ฉ”๋ชจ๋ฆฌ DC
    	m_MemBitmap.CreateCompatibleBitmap(&dc, 1000, 700);   // ํ˜ธํ™˜๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋น„ํŠธ๋งต
    	m_MemDC.SelectObject(&m_MemBitmap);
    
    	m_BackgroundBitmap.LoadBitmap(IDB_BACKGROUND);
    	m_BackgroundDC.CreateCompatibleDC(&dc);
    	m_BackgroundDC.SelectObject(&m_BackgroundBitmap);
    
    	m_ShuttleDC.CreateCompatibleDC(&dc);
    	m_ShuttleDC.SelectObject(m_ShuttleBitmap);
    }
      
  • ์ด๋ ‡๊ฒŒ ์ž์› ํ• ๋‹น ๋‹ค ํ•ด์ฃผ๊ณ , ๋”๋ธ” ๋ฒ„ํผ๋ง์„ ํ•˜๊ณ  ์‹ถ๋‹ค๊ณ  ํ•œ๋‹ค๋ฉด.. ์ผ๋‹จ ๋ฉ”๋ชจ๋ฆฌ DC์— ํ•„์š”ํ•œ๊ฑธ ๋‹ค ๊ทธ๋ฆฐ ๋‹ค์Œ์—, ํ™”๋ฉด DC๋กœ BitBlt ํ•ด์ฃผ๋Š”๊ฒ๋‹ˆ๋‹ค. ์ด๊ฒŒ ๋”๋ธ” ๋ฒ„ํผ๋ง์ธ๋ฐ.. ์ €๋Š” ์ž˜๋ชป ์ดํ•ดํ•˜๊ณ  ์žˆ์—ˆ๊ฑฐ๋“ ์š”. ๊ฐœ๋…์€ ์•Œ์•˜์ง€๋งŒ.. ๋ฌด์Šจ ์ด์ƒํ•œ ์ƒ๊ฐ์„ ์กฐ๊ธˆ ๋” ํ•ด๋ฒ„๋ ค์„œ.. ์ง€๋‚œ๋ฒˆ์˜ ๊ทธ ์ด์ƒํ•œ ์ฝ”๋“œ๊ฐ€ ๋‚˜์˜ค๊ฒŒ ๋˜์—ˆ๋˜ ๊ฒ๋‹ˆ๋‹ค. ํ›—๋‚  ๋ณธ์ธ๋„ ๋ชป ์•Œ์•„๋ณด๋Š”..--;

    ~cpp 
    // Timer๊ฐ€ ํ˜ธ์ถœํ•˜๋Š” ํ•จ์ˆ˜ ๋‚ด๋ถ€
    m_MemDC.BitBlt(0,0,1000,700,&m_BackgroundDC,0,0,SRCCOPY);    // ๋ฉ”๋ชจ๋ฆฌ DC๋กœ BitBlt
    m_MemDC.BitBlt(x,y,width,height,&m_ShuttleDC,0,0,SRCCOPY);
    
    Invalidate(FALSE);
      

  • ์ด๋ ‡๊ฒŒ Timer๋‚ด๋ถ€์—์„œ๋Š” ๋ฉ”๋ชจ๋ฆฌ DC์—๋‹ค ๋‹ค ๊ทธ๋ ค์ฃผ๊ณ , Invalidate(FALSE)๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค. FALSE ์ด๊ฑฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

    ~cpp 
    // OnDraw ํ•จ์ˆ˜ ๋‚ด๋ถ€
    pDC->BitBlt(0,0,1000,700,&m_MemDC,0,0,SRCCOPY);  // ๋ฉ”๋ชจ๋ฆฌ DC์— ์žˆ๋Š”๊ฑธ ํ™”๋ฉด DC๋กœ BitBlt
      

5. Thread

๋ฐ๊ธฐ: ์†Œ์Šค์ฝ”๋“œ๋Š” ์ €๋Ÿฐ ์‹์œผ๋กœ ํ•˜๋ฉด ๋” ๋ณด๊ธฐ ์ข‹์€ ๊ฒƒ ๊ฐ™์•„์„œ ๊ณ ์ณ๋ดค์–ด. ๋ง˜์— ์•ˆ๋“ค๋ฉด ๋‹ค์‹œ ๋Œ๋ ค๋†“๊ธธ. ^^; ๊ทธ๋Ÿฐ๋ฐ ์ด๊ฑฐ... ๊ณต์ด ์žˆ๋Š” ์˜์—ญ๋งŒ ๋”๋ธ”๋ฒ„ํผ๋ง ํ•˜๋Š”๊ฑฐ์•ผ?

["Lovelyboy^_^"]]: ์•—. ๋ฌด์Šจ ๊ทธ๋Ÿฐ ๋ง์”€์„..;; ์ €์•ผ ๊ณ ์ณ ์ฃผ์‹œ๋ฉด ์ข‹์ ธ. ๊ณต์ด๋ž‘ ๋ง‰๋Œ€๊ธฐ ๋ฐฐ๊ฒฝ ์ฒ˜๋ฆฌ ๋‹ค ๋”๋ธ”๋ฒ„ํผ๋ง ํ–ˆ๋Š”๋ฐ์—ฌ. ๊ฑ ์˜ˆ๋ฅผ ๋“ค๋ผ๊ณ ..;

๋ฐ๊ธฐ: ๋‚œ ํ™”๋ฉด ์ „์ฒด๋ฅผ ํ•œ๊บผ๋ฒˆ์— ๋žœ๋”๋งํ•œ ๋‹ค์Œ์— ๋ฒ„ํผ๋ฅผ ๋ฐ”๊ฟ”์ฃผ๋Š” ๋ฐฉ์‹๋งŒ ๋ณด์•„์™”๊ธฐ์—... ๋…ํŠนํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š”์ค‘. ์›€์ง์ด๋Š” ์˜์—ญ์ด ๋งŽ์ง€ ์•Š๋‹ค๋ฉด ํšจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ•์ธ๋“ฏํ•ด. ๊ณต์„ ๊ทธ๋ ค์ฃผ๋Š” ๋ฃจํ‹ด์ด CBall ์— ์žˆ๋Š”๊ฒƒ๋„ ๋…ํŠนํ•˜๊ณ ...

1002 : ๋”๋ธ” ๋ฒ„ํผ๋ง์„ ํ•˜๋Š” ์ด์œ ๋Š”, Main Memory <-> Main Memory ๊ฐ„์˜ ๋ฉ”๋ชจ๋ฆฌ๋ณต์‚ฌ(Bltํ•˜๋Š” ๊ฒƒ) ์ด Main Memory -> Video Memory ๊ฐ„์˜ ๋ฉ”๋ชจ๋ฆฌ ๋ณต์‚ฌ๋ณด๋‹ค ๋น ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ํ•˜์ฃ .

ํ™”๋ฉด ์ „์ฒด๋ฅผ ํ•œ๊บผ๋ฒˆ์— ๋ Œ๋”๋ง ํ•œ ๋‹ค์Œ ๋ฒ„ํผ๋ฅผ ๋ฐ”๊ฟ”์ฃผ๋Š” ๋ฐฉ์‹์„ ์ด์•ผ๊ธฐํ•˜๋Š” ๊ฒƒ ๋ณด๋ฉด ์•„๋งˆ Page Fliping ์„ ์ด์•ผ๊ธฐํ•˜์‹œ๋Š”๋“ฏ. ๋‹จ, ์ด๊ฒƒ์€ GDI ๋กœ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜์ง€ ์•Š์„๊นŒ์š”? ^^ DC ํ•ธ๋“ค์„ ์šฐ๋ฆฌ๊ฐ€ ์ง์ ‘ ์กฐ์ž‘ํ•  ์ˆ˜๋Š” ์—†๋Š” ๊ฒƒ์ด๊ณ .. ๋ง ๊ทธ๋Œ€๋กœ, ๋ฒ„ํผ๋ฅผ ๋ฐ”๊พผ๋‹ค๋Š” ๊ฒƒ์€ ํ™”๋ฉด์— ํ‘œ์‹œํ•ด ์ฃผ๋Š” ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ํฌ์ธํ„ฐ์˜ ๊ฐ’์„ ๋ฐ”๊พธ๋Š” ๊ฑฐ๋‹ˆ๊นŒ. Page Fliping ์€ DOS๋‚˜ DX์—์„œ๋Š” ๊ฐ€๋Šฅํ• ์ง€ ๋ชฐ๋ผ๋„ GDI ์—์„œ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•œ ๋ฐฉ๋ฒ•์ผ๊ฒƒ์ด๋ผ๋Š” ๊ฐœ์ธ์  ์ƒ๊ฐ. (DC์— Select ๋˜์–ด์žˆ๋Š” Bitmap ์„ ๋‹ค์‹œ ์…‹ํŒ…ํ•ด์ฃผ๋Š” ๋ฐฉ๋ฒ•์€ ์–ด๋–จ๊นŒ. ํ•œ๋ฒˆ๋„ ์•ˆํ•ด๋ดค์ง€๋งŒ. --;)

๊ทธ๋ฆฌ๊ณ , ์ „์ฒด ๊ทธ๋ฆฌ๊ธฐ ๊ด€๋ จ ๋ฃจํ‹ด์˜ ๊ฒฝ์šฐ๋Š” ์• ๋งคํ•œ๋ฐ, ์™œ๋ƒํ•˜๋ฉด ์ €๋ ‡๊ฒŒ object ๋ณ„๋กœ ๊ทธ๋ฆฌ๊ธฐ ๋ฃจํ‹ด์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์‚ฌ๋žŒ๋“ค ์‹ค์ˆ˜ํ•˜๋Š” ๊ฒƒ์ด.. ๊ฐ๊ฐ์˜ Draw์— ๋”๋ธ”๋ฒ„ํผ๋งํ•˜๊ณ  ๋˜ ๋ฉ”์ธ ๋ฃจํ‹ด๋ถ€๋ถ„์— ๋”๋ธ”๋ฒ„ํผ๋ง์„ ์ค‘๋ณตํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์–ด์„œ๋ฆฌ.. (๋ญ. ์š”์ƒˆ๋Š” ํ•˜๋“œ์›จ์–ด๊ฐ€ ๋นจ๋ผ์„œ ๋ณ„ ์†๋„ ์ €ํ•˜ ์—†๊ธด ํ•œ๊ฒƒ ๊ฐ™์ง€๋งŒ.) ๊ฐœ์ธ์ ์œผ๋กœ๋Š” ๊ฐ๊ฐ์˜ Draw๋ถ€๋ถ„์—๋Š” ์ผ๋ฐ˜์ ์ธ Blt. ๊ทธ๋ฆฌ๊ณ  Main ๋ถ€๋ถ„์— ๋”๋ธ”๋ฒ„ํผ๋ง ํ•œ๋ฒˆ์ด ๋งž์ง€ ์•Š์„๊นŒ ํ•˜๋Š”. ๋ญ.. ๊ทธ๋ƒฅ ์ƒ๊ฐ๋‚˜์„œ ์ฃผ์ €๋ฆฌ์ฃผ์ €๋ฆฌ. --;

๋ฐ๊ธฐ : ใ…‹ใ…‹, ํ‘œํ˜„์ด ์กฐ๊ธˆ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ฌ์ค„ ์•Œ์•˜์–ด์š”. ํ™”๋ฉด ์ „์ฒด๋ผ ํ•จ์€ ํด๋ผ์ด์–ธํŠธ ์˜์—ญ์„ ์–˜๊ธฐํ•œ ๊ฒƒ์ด๊ณ , ๋ฒ„ํผ๋ฅผ ๋ฐ”๊พผ๋‹ค๋Š” ์–˜๊ธฐ๋Š” ํฌ์ธํ„ฐ๋งŒ ๋ฐ”๊พผ๋‹ค๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ๋””๋ฐ”์ด์Šค ๋ฒ„ํผ ๋‚ด์šฉ์„ ๋ฐ”๊พผ๋‹ค๋Š” ์–˜๊ธฐํ•œ๊ฑฐ์˜ˆ์š”. ์ธ์ˆ˜์•ผ, ๋‚ด ์• ๋งคํ•œ ํ‘œํ˜„๋•œ์— ํŽ˜์ด์ง€ ํ”Œ๋ฆฌํ•‘์ด๋ž‘ ํ—ท๊ฐˆ๋ฆฌ์ง€ ๋ง์–ด. ^^;

neocoin : ๊ฒฐ๋ก ์€ ์š”์ฆ˜ ํ•˜๋“œ์›จ์–ด ์งฑ์ด์•ผ? ์ธ๊ฑฐ์•ผ?

snowflower : ์Œ.. ๋‚˜์˜ ๊ฒฝ์šฐ์—”.. ํ™”๋ฉด ์ „์ฒด๋ฅผ BufferDC์— ๊ทธ๋ ค์„œ ๋‚˜์ค‘์— ๊ทธ๊ฑธ DC๋กœ ์˜ฎ๊ฒผ๋Š”๋ฐ... ์ข€ ํ‹€๋ฆฐ๊ฑธ๊นŒ?

๋ฐ๊ธฐ : ๋ณดํ†ต์˜ ๊ฒฝ์šฐ๋Š” ์„ ํ˜ธ๊ฐ€ ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ํ•˜์ง€. ๋ Œ๋”๋ง๋˜๋Š” ๊ณผ์ •์ด ์ „ํ˜€ ์•ˆ ๋ณด์ด๋‹ˆ๊นŒ...

zennith : ๋œฌ๊ธˆ์—†๋Š” ์†Œ๋ฆฌ์ด๊ณ , ๊ณ ๋ฃจํ•œ ์ด์•ผ๊ธฐ ์ž…๋‹ˆ๋‹ค๋งŒ, PCI ๋ž€ ๊ธฐ์ˆ ์ด ์ฒ˜์Œ ์†Œ๊ฐœ๋˜์—ˆ์„๋•Œ ๊ฝค ๋ฏธ๋ž˜์ง€ํ–ฅ์ ์ธ ๊ธฐ์ˆ ๋กœ ๊ฐ๊ด‘๋ฐ›์•˜๋˜ ๊ฒƒ์ด PCI bus mastering ์ด๋ž€ ๊ธฐ์ˆ ์ธ๋ฐ.. ๋ฌด์—‡์ธ๊ณ  ํ•˜๋‹ˆ, pci ์ฑ„๋„๋กœ ์—ฐ๊ฒฐ๋˜์–ด์žˆ๋Š” ๊ธฐ๊ธฐ๋“ค๋ผ๋ฆฌ ์„œ๋กœ์˜ ๋ฉ”๋ชจ๋ฆฌ์— DMA ๋ฅผ ํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ๊ฒƒ์ด์—ˆ์ฃ . ๋Œ€ํ‘œ์ ์œผ๋กœ ์ด ๊ธฐ์ˆ ์ด ์‚ฌ์šฉ๋œ ์˜ˆ(๋ผ๊ธฐ๋ณด๋‹จ ์ œ๊ฐ€ ์•Œ๊ณ ์žˆ๋Š” ๋‹จ ํ•˜๋‚˜์˜ ์˜ˆ)๋Š” TV์ˆ˜์‹ ์นด๋“œ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์ด์—ˆ๋Š”๋ฐ์š”. TV ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ TV ๊ฐ€ ํ‘œ์‹œ๋  ๋ถ€๋ถ„์˜ region ์„ ์ •ํ•ด๋†“์œผ๋ฉด TV ์ˆ˜์‹ ์นด๋“œ์—์„œ ๊ทธ๋ถ€๋ถ„์— ํ•ด๋‹นํ•˜๋Š” ๋น„๋””์˜ค์นด๋“œ ๋ฉ”๋ชจ๋ฆฌ๋กœ ์ง์ ‘ ์ด์ฃผ๋Š”.. ๊ทธ๋Ÿฐ ๊ธฐ์ˆ ์ด์—ˆ๋Š”๋ฐ.. ๋”๋ธ”๋ฒ„ํผ๋ง์„ ๋ณด๋‹ˆ ๊ฐ‘์ž๊ธฐ ๊ทธ ์ƒ๊ฐ์ด ๋‚˜๋Š”๊ตฐ์š”. ์Œ.. ์š”์ฆˆ์Œ์€ ๋‹ค๋“ค agp ๋ฅผ ์จ์„œ.. ์ € pci bus mastering ์ด๋ž€ ๊ธฐ์ˆ ์ด ์•„์ง๋„ ์‚ด์•„๋‚จ์•„์žˆ๋Š”๊ฑด์ง€.. ์ž˜ ๋ชจ๋ฅด๊ฒ ๊ตฐ์š”.
----
ํ™ˆํŽ˜์ด์ง€๋ถ„๋ฅ˜
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:09
Processing time 0.0074 sec